Container Engine

Introduction to Container Engines

Container engines, one of the most important components of Kubernetes, manage the lifecycle of images and containers. The kubelet interacts with a container runtime through the Container Runtime Interface (CRI).

Mapping between Node OSs and Container Engines

Table 1 Node OSs and container engines in CCE clusters

OS

Kernel Version

Container Engine

Container Storage Rootfs

Container Runtime

CentOS 7.x

3.x

Docker

Clusters of v1.23 and later support containerd.

Clusters of v1.19.16 and earlier use Device Mapper.

Clusters of v1.19.16 and later use OverlayFS.

runC

EulerOS 2.5

3.x

Docker

Device Mapper

runC

EulerOS 2.9

4.x

Docker

Clusters of v1.23 and later support containerd.

OverlayFS

runC

Ubuntu 22.04

4.x

Docker

containerd

OverlayFS

runC

Table 2 Node OSs and container engines in CCE Turbo clusters

Node Type

OS

Kernel Version

Container Engine

Container Storage Rootfs

Container Runtime

Elastic Cloud Server (VM)

CentOS 7.x

3.x

Docker

OverlayFS

runC

EulerOS 2.5

3.x

Docker

OverlayFS

runC

EulerOS 2.9

4.x

Docker

Clusters of v1.23 and later support containerd.

OverlayFS

runC

Ubuntu 22.04

4.x

Docker

containerd

OverlayFS

runC

Differences in Tracing

Although Docker has added functions such as swarm cluster, docker build, and Docker APIs, it also introduces bugs. Compared with containerd, Docker has one more layer of calling. Therefore, containerd is more resource-saving and secure.

Container Engine Version Description