选择容器运行时
目录
概述
容器运行时是 Kubernetes 的核心组件,负责管理镜像和容器的生命周期。
在通过平台创建集群时,您可以选择 Containerd 或 Docker 作为您的运行时组件。
注意:Kubernetes 版本 1.24 及以上不再官方支持 Docker 运行时。官方推荐的运行时是 Containerd。如果您仍需使用 Docker 运行时,则在创建集群时必须首先在功能开关中启用 cri-docker,才能选择 Docker 作为运行时组件。有关使用功能开关的详细信息,请参见 功能开关配置。
快速选择指南
Docker 和 Containerd 的区别
常用命令
调用链差异
-
Docker 作为 Kubernetes 容器运行时有以下调用关系:
kubelet > cri-dockerd > dockerd > containerd > runC
-
Containerd 作为 Kubernetes 容器运行时有以下调用关系:
kubelet > cri 插件(在 containerd 进程中)> containerd > runC
总结:虽然 dockerd 添加了像集群、docker build 和 Docker API 等功能,但可能会引入 bug,并增加调用链中的一个额外层。Containerd 拥有更短的调用链,更少的组件,更大的稳定性,并消耗较少的节点资源。