5 月 3 日发布的 Kubernetes 1.24 将结束对 dockershim 的支持,需要我们做什么?

  最新版本的 Kubernetes 容器编排平台将不再原生支持 Docker 容器运行时,这对用户来说是一个重大变化。

  原计划 4 月 19 号,延迟到 5 月 3 日[1]发布的 Kubernetes 1.24 版本标志着流行的开源容器编排系统的重大转变,因为对内置的 dockershim 支持将一劳永逸地删除[2]

  Docker[3]Kubernetes[4]使用的第一个容器运行时。但随着 Kubernetes 项目向自己的开放容器倡议 (OCI) 过渡,它需要一个权宜之计,以实现与其他各种容器运行时的可移植性。这个权宜之计就是 dockershim。

  从本质上讲,dockershim 最初的目的是作为一种临时解决方案,允许流行的 Docker Engine 容器运行时将 OCI 调用转换为 Kubernetes 自己的容器运行时接口 (CRI) 中的 Docker 调用。随着时间的推移,dockershim 在 Kubernetes 部署中变得根深蒂固,但会减慢部署速度并给维护者带来负担,所以它不得不被移除。

 

1.如何为 dockershim 弃用做准备

  现在预计在 5 月 3 日发布的 Kubernetes v1.24 版本将要求想要使用最新版本软件的用户从 dockershim 迁移到[5]与 Kubernetes 自己兼容的另一个运行时,或者使用由 Mirantis 开发的 dockershim 的外部替代品,称为cri-dockerd[6]

  虽然 Kubernetes 节点将不再默认使用 Docker 运行时,但许多开发人员和管理员已经切换到其他符合 CRI 的运行时,例如 Docker 本身在 2017[7] 年捐赠给 CNCF 的 containerd 和 CRI-O。这通常涉及确保在集群中的每个节点上运行的 kubelet 代理配置为调用 containerd 或 CRI-O 套接字。

  各种托管 Kubernetes 供应商,例如 Red Hat OpenShift,它在 2019 年采用了 CRI-O[8]。Amazon 的 Elastic Kubernetes Service (EKS)、Microsoft 的 Azure Kubernetes Service (AKS) 和 Google 的 Kubernetes Engine (GKE) 已经默认使用 containerd。Microsoft 还为使用 Kubernetes 1.19 或更高版本创建的 Azure Kubernetes[9] Linux 节点池采用了 containerd。

 

1.1 切换到符合 CRI 的运行时

  不使用符合 CRI 的运行时替换 dockershim 的开发人员可能会使他们的集群落后于安全补丁,同时也会错过新功能。

  Kubernetes 维护人员在一月份的一篇博客[10]文章中写道。“在这一点上,我们相信您(和 Kubernetes)从 dockershim 移除中获得的价值弥补了您将要进行的迁移工作”。

  开发人员仍然可以在本地使用 Docker 来开发或测试容器,无论为 Kubernetes 集群使用哪个容器运行时。Docker 生成的镜像将继续在具有所有符合 CRI 的运行时的集群中工作,但不会继续受支持。

 

 

参考资料
[1]5 月 3 日: https://www.kubernetes.dev/resources/release/
[2]对内置的 dockershim 支持将一劳永逸地删除: https://kubernetes.io/blog/2022/01/07/kubernetes-is-moving-on-from-dockershim/#deprecation-timeline
[3]Docker: https://www.infoworld.com/article/3204171/what-is-docker-the-spark-for-the-container-revolution.html
[4]Kubernetes: https://www.infoworld.com/article/3268073/what-is-kubernetes-your-next-application-platform.html
[5]从 dockershim 迁移到: https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/
[6]cri-dockerd: https://github.com/Mirantis/cri-dockerd
[7]Docker 本身在 2017: https://www.infoworld.com/article/3181312/docker-frees-container-core-for-cloud-native-computing-foundation.html
[8]2019 年采用了 CRI-O: https://www.redhat.com/en/blog/red-hat-openshift-container-platform-4-now-defaults-cri-o-underlying-container-engine
[9]Azure Kubernetes: https://www.infoworld.com/article/3648288/preparing-for-the-end-of-dockershim-in-aks.html
[10]一篇博客: https://kubernetes.io/blog/2022/01/07/kubernetes-is-moving-on-from-dockershim/#deprecation-timeline


原文:https://www.arnnet.com.au/article/697394/kubernetes-support-dockershim-end-may-3/
转载云原生

 

 

  

posted @ 2022-05-05 10:46  小家电维修  阅读(70)  评论(0编辑  收藏  举报