K8s 终将废弃 docker,TKE 早已支持 containerd
近日 K8s 官方称最早将在 1.23版本弃用 docker 作为容器运行时,并在博客中强调可以使用如 containerd 等 CRI 运行时来代替 docker。本文会做详细解读,并介绍 docker 与 containerd 的关系,以及为什么 containerd 是更好的选择。这里先回答下TKE用户关心的问题:我们的集群该怎么办? TKE集群该怎么办 TKE早在 2019年5月就已经支持选择 containerd 作为容器运行时。如果新建集群,推荐选择 containerd 作为容器运行时 已有集群在升级到 K8s 1.23(假定 TKE 第一个不支持 dockershim 的 K8s版本,也可能是 1.24)之前,仍然可以继续使用 docker 作为容器运行时 已有集群通过 TKE 集群升级功能升级到 1.23时, TKE会提供切换运行时为 containerd 的选项。当然,这种情况下没办法做到 Pod 不受影响,只能采用重装节点的方式来升级 已有集群也可以将运行时切换为 containerd ,新增节点会使用 containerd , 存量节点不受影响仍然使用 docker (注意: 这会造成同一集群中 docker 节点与 containerd 节点共存,如果有使用 Docker in Docker, 或者其他依赖节点上 docker daemon 与