From ed00765f3c97428e9a1846f528493e023fa919f3 Mon Sep 17 00:00:00 2001 From: Harry Zhang Date: Wed, 31 May 2017 23:29:14 +0800 Subject: [PATCH] Add CRI runtime support --- docs/admin/kubeadm.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/docs/admin/kubeadm.md b/docs/admin/kubeadm.md index 56d5218444..58eafd7830 100644 --- a/docs/admin/kubeadm.md +++ b/docs/admin/kubeadm.md @@ -421,6 +421,31 @@ export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com,example.com,1 Remember to change `proxy_ip` and add a kube master node IP address to `no_proxy`. +## Use Kubeadm with other CRI runtimes + +Since [Kubernetes 1.6 release](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG.md#node-components-1), Kubernetes container runtimes have been transferred to using CRI by default. Currently, the build-in container runtime is Docker which is enabled by build-in `dockershim` in `kubelet`. + +Using other CRI based runtimes with kubeadm is very simple, and currently supported runtimes are: + +- [cri-o](https://github.com/kubernetes-incubator/cri-o) +- [frakti](https://github.com/kubernetes/frakti) +- [rkt](https://github.com/kubernetes-incubator/rktlet) + +After you have successfully installed `kubeadm` and `kubelet`, please follow these two steps: + +1. Install runtime shim on every node. You will need to follow the installation document in the runtime shim project listing above. + +2. Configure kubelet to use remote CRI runtime. Please remember to change `RUNTIME_ENDPOINT` to your own value like `/var/run/{your_runtime}.sock`: + +```shell + $ cat > /etc/systemd/system/kubelet.service.d/20-cri.conf <