作者:Mahamed Ali (Rackspace Technology)
译者:Michael Yao (Daocloud)
Kubernetes 项目运行一个名为 registry.k8s.io
、由社区管理的镜像仓库来托管其容器镜像。2023 年 4 月 3 日,旧仓库 k8s.gcr.io
将被冻结,Kubernetes 及其相关子项目的镜像将不再推送到这个旧仓库。
registry.k8s.io
这个仓库代替了旧仓库,这个新仓库已正式发布七个月。我们也发布了一篇博文[1]阐述新仓库给社区和 Kubernetes 项目带来的好处。这篇博客再次宣布后续版本的 Kubernetes 将不可用于旧仓库。这个时刻已经到来。
这次变更对贡献者意味着:
- 如果你是某子项目的 Maintainer,你将需要更新清单 (manifest) 和 Helm Chart 才能使用新仓库。
这次变更对终端用户意味着:
- Kubernetes 1.27 版本将不会发布到旧仓库。
- 1.24、1.25 和 1.26 版本的补丁从 4 月份起将不再发布到旧仓库。请阅读以下时间线,了解旧仓库最终补丁版本的详情。
- 从 1.25 开始,默认的镜像仓库已设置为
registry.k8s.io
。kubeadm
和 kubelet
中的这个镜像仓库地址是可覆盖的,但设置为 k8s.gcr.io
将在 4 月份之后的新版本中失败, 因为旧仓库将没有这些版本了。 - 如果你想提高集群的可靠性,不想再依赖社区管理的镜像仓库,或你正在外部流量受限的网络中运行 Kubernetes, 你应该考虑托管本地镜像仓库的镜像。一些云供应商可能会为此提供托管解决方案。
变更时间线
k8s.gcr.io
将于 2023 年 4 月 3 日被冻结- 1.27 预计于 2023 年 4 月 12 日发布
k8s.gcr.io
上的最后一个 1.23 版本将是 1.23.18(1.23 在仓库冻结前进入不再支持阶段)k8s.gcr.io
上的最后一个 1.24 版本将是 1.24.12k8s.gcr.io
上的最后一个 1.25 版本将是 1.25.8k8s.gcr.io
上的最后一个 1.26 版本将是 1.26.3
下一步
请确保你的集群未依赖旧的镜像仓库。例如,你可以运行以下命令列出 Pod 使用的镜像:
kubectl get pods --all-namespaces -o jsonpath="{.items[*].spec.containers[*].image}" |\
tr -s '[[:space:]]' '\n' |\
sort |\
uniq -c
旧的镜像仓库可能存在其他依赖项。请确保你检查了所有潜在的依赖项,以保持集群健康和最新。
致谢
改变是艰难的,但只有镜像服务平台演进才能确保 Kubernetes 项目可持续的未来。我们努力为 Kubernetes 的每个使用者提供更好的服务。从社区各个角落汇聚而来的众多贡献者长期努力工作, 确保我们能够做出尽可能最好的决策、履行计划并尽最大努力传达这些计划。
衷心感谢:
- 来自 SIG K8s Infra 的 Aaron Crickenberger、Arnaud Meukam、Benjamin Elder、Caleb Woodbine、Davanum Srinivas、Mahamed Ali 和 Tim Hockin
- 来自 SIG Node 的 Brian McQueen 和 Sergey Kanzhelev
- 来自 SIG Cluster Lifecycle 的 Lubomir Ivanov
- 来自 SIG Release 的 Adolfo García Veytia、Jeremy Rickard、Sascha Grunert 和 Stephen Augustus
- 来自 SIG Contribex 的 Bob Killen 和 Kaslin Fields
- 来自 Security Response Committee(安全响应委员会)的 Tim Allclair
此外非常感谢负责联络各个云提供商合作伙伴的朋友们:来自 Amazon 的 Jay Pipes 和来自 Google 的 Jon Johnson Jr.
参考资料
[1]博文: https://kubernetes.io/zh-cn/blog/2022/11/28/registry-k8s-io-faster-cheaper-ga/
《Docker是什么?》
《Kubernetes是什么?》
《Kubernetes和Docker到底有啥关系?》
《教你如何快捷的查询选择网络仓库镜像tag》
《Docker镜像进阶:了解其背后的技术原理》
《教你如何修改运行中的容器端口映射》
《k8s学习笔记:介绍&上手》
《k8s学习笔记:缩扩容&更新》
《Docker 基础用法和命令帮助》
《在K8S上搭建Redis集群》
《灰度部署、滚动部署、蓝绿部署》
《PM2实践指南》
《Docker垃圾清理》
《Kubernetes(k8s)底层网络原理刨析》
《容器环境下Node.js的内存管理》
《MySQL 快速创建千万级测试数据》
《Linux 与 Unix 到底有什么不同?》
《浅谈几种常见 RAID 的异同》
《Git 笔记-程序员都要掌握的 Git》
《老司机必须懂的MySQL规范》
《Docker中Image、Container与Volume的迁移》
《漫画|如何用Kubernetes搞定CICD》
《写给前端的Docker实战教程》
《Linux 操作系统知识地图2.0,我看行》
《16个概念带你入门 Kubernetes》
《程序员因接外包坐牢456天,长文叙述心酸真实经历》
《IT 行业老鸟,有话对你说》
《HTTPS 为什么是安全的?说一下他的底层实现原理?》
免责声明:本文内容来源于网络,所载内容仅供参考。转载仅为学习和交流之目的,如无意中侵犯您的合法权益,请及时联系Docker中文社区!
文章来源: http://mp.weixin.qq.com/s?__biz=MzI1NzI5NDM4Mw==&mid=2247494542&idx=1&sn=f1732e4c2416e9961a562e0e192c003a&chksm=ea1b02cedd6c8bd84db5393c29e4bf7848d00b365b15170257c4ae25f83cd82bda583f42fbaa#rd
如有侵权请联系:admin#unsafe.sh