@@ -15,12 +15,19 @@ what is involved and describes related tasks for setting up nodes.
15
15
16
16
<!-- body -->
17
17
18
+ Kubernetes {{< skew currentVersion >}} requires that you use a runtime that
19
+ conforms with the
20
+ {{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}} (CRI).
21
+
22
+ See [ CRI version support] ( #cri-versions ) for more information.
23
+
18
24
This page lists details for using several common container runtimes with
19
25
Kubernetes, on Linux:
20
26
21
27
- [ containerd] ( #containerd )
22
28
- [ CRI-O] ( #cri-o )
23
- - [ Docker] ( #docker )
29
+ - [ Docker Engine] ( #docker )
30
+ - [ Mirantis Container Runtime] ( #mcr )
24
31
25
32
{{< note >}}
26
33
For other operating systems, look for documentation specific to your platform.
@@ -94,10 +101,19 @@ In order to use it, cgroup v2 must be supported by the CRI runtime as well.
94
101
Follow this [ Migration guide] ( /docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/ )
95
102
if you wish to migrate to the ` systemd ` cgroup driver in existing kubeadm managed clusters.
96
103
104
+ ## CRI version support {#cri-versions}
105
+
106
+ Your container runtime must support at least v1alpha2 of the container runtime interface.
107
+
108
+ Kubernetes {{< skew currentVersion >}} defaults to using v1 of the CRI API.
109
+ If a container runtime does not support the v1 API, the kubelet falls back to
110
+ using the (deprecated) v1alpha2 API instead.
111
+
97
112
## Container runtimes
98
113
99
114
{{% thirdparty-content %}}
100
115
116
+
101
117
### containerd
102
118
103
119
This section contains the necessary steps to use containerd as CRI runtime.
@@ -394,44 +410,28 @@ Please also note the changed `conmon_cgroup`, which has to be set to the value
394
410
cgroup driver configuration of the kubelet (usually done via kubeadm) and CRI-O
395
411
in sync.
396
412
397
- ### Docker
413
+ ### Docker Engine {#docker}
398
414
399
- 1 . On each of your nodes, install the Docker for your Linux distribution as per
400
- [ Install Docker Engine ] ( https://docs.docker.com/engine/install/#server ) .
401
- You can find the latest validated version of Docker in this
402
- [ dependencies ] ( https://git.k8s.io/kubernetes/build/dependencies.yaml ) file .
415
+ Docker Engine is the container runtime that started it all. Formerly known just as Docker,
416
+ this container runtime is available in various forms.
417
+ [ Install Docker Engine ] ( https://docs.docker.com/engine/install/ ) explains your options
418
+ for installing this runtime .
403
419
404
- 2 . Configure the Docker daemon, in particular to use systemd for the management of the container’s cgroups.
420
+ Docker Engine is directly compatible with Kubernetes {{< skew currentVersion >}}, using the deprecated ` dockershim ` component. For more information
421
+ and context, see the [ Dockershim deprecation FAQ] ( /dockershim ) .
405
422
406
- ``` shell
407
- sudo mkdir /etc/docker
408
- cat << EOF | sudo tee /etc/docker/daemon.json
409
- {
410
- "exec-opts": ["native.cgroupdriver=systemd"],
411
- "log-driver": "json-file",
412
- "log-opts": {
413
- "max-size": "100m"
414
- },
415
- "storage-driver": "overlay2"
416
- }
417
- EOF
418
- ` ` `
423
+ You can also find third-party adapters that let you use Docker Engine with Kubernetes
424
+ through the supported {{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}}
425
+ (CRI).
419
426
420
- {{< note > }}
421
- ` overlay2` is the preferred storage driver for systems running Linux kernel version 4.0 or higher,
422
- or RHEL or CentOS using version 3.10.0-514 and above.
423
- {{< /note > }}
427
+ The following CRI adaptors are designed to work with Docker Engine:
424
428
425
- 3. Restart Docker and enable on boot:
429
+ - [ ` cri-dockerd ` ] ( https://github.com/Mirantis/cri-dockerd ) from Mirantis
426
430
427
- ` ` ` shell
428
- sudo systemctl enable docker
429
- sudo systemctl daemon-reload
430
- sudo systemctl restart docker
431
- ` ` `
431
+ ### Mirantis Container Runtime {#mcr}
432
432
433
- {{ < note > }}
434
- For more information refer to
435
- - [Configure the Docker daemon](https://docs.docker.com/config/daemon/)
436
- - [Control Docker with systemd](https://docs.docker.com/config/daemon/systemd/)
437
- {{ < /note > }}
433
+ [ Mirantis Container Runtime ] ( https://docs.mirantis.com/mcr/20.10/overview.html ) (MCR) is a commercially
434
+ available container runtime that was formerly known as Docker Enterprise Edition.
435
+
436
+ You can use Mirantis Container Runtime with Kubernetes using the open source
437
+ [ ` cri-dockerd ` ] ( https://github.com/Mirantis/cri-dockerd ) component, included with MCR.
0 commit comments