写点什么

移除了内置的云提供商代码后,Kubernetes 1.31 现在成为了“真正中立的供应商平台”

  • 2024-10-16
    北京
  • 本文字数:1191 字

    阅读完需:约 4 分钟

大小:495.43K时长:02:49
移除了内置的云提供商代码后,Kubernetes 1.31 现在成为了“真正中立的供应商平台”

新发布的 Kubernetes 1.31 已完全移除了此前内置的云提供商集成代码,团队成员将其描述为“Kubernetes 历史上最大的迁移”。但升级到新版可能会破坏现有脚本,例如,kubelet 唯一能用的云提供商参数现在变成了“外部的”。

 

过去,Kubernetes 在其核心代码(“in-tree”)中包含了对五家云提供商的支持:Google Cloud、Microsoft Azure、Amazon Web Services(AWS)、OpenStack 和 VMware vSphere。虽然这种做法提供了便利,但它破坏了 Kubernetes 作为供应商中立平台的理念。这些提供商的加入也使代码更加臃肿,并且由于提供商代码是内置的,因此更新起来更加困难,还增加了出现安全问题的可能性。

 

2018 年末,一项增强提案 KEP-2395 要求移除这些内置的云提供商。但该提案指出,“Kubernetes 用户需要将 CCM(云控制器管理器)部署添加到他们的集群中。以前,用户可以通过命令行标志启用 kubernetes-controller-manager 的云控制器循环。”

云控制器管理器的角色——不再是可选的

 

云提供商现在提供了文档来支持用户部署他们的 CCM,例如 AWS 的这个文档(https://github.com/kubernetes/cloud-provider-aws/blob/master/docs/getting_started.md)和 Azure 的这个文档(https://cloud-provider-azure.sigs.k8s.io/install/azure-ccm/)。

 

向新版迁移的复杂性来源于“众多受影响的组件和依赖于内置集成的关键代码路径”,云提供商 SIG(特别兴趣小组)今年早些时候解释说,用户要做的工作包括必须从头开始构建“四个新的子系统”,涵盖 CCM、API 服务器网络代理、kubelet 凭据提供程序和存储迁移。

 

kubelet 是一个在 Kubernetes 集群的每个 VM(虚拟机)或节点上运行的代理。

 

据该团队称,迁移工作取得了显著成果,“删除了大约 150 万行代码,并将核心组件的二进制大小减少了约 40%。”

 

云提供商 SIG 就是为这次迁移而成立的,并且已经为此工作了好几年,现在它正在研究下一步该做什么。一些建议包括更智能的混合部署——节点可以在私有云和公共云上运行——以及为开发云提供商代码的人们提供“更好的工具和框架”。

 

理论上,这一更改不会给 DevOps 团队带来问题,因为它已经被很好地标记过了。Kubernetes 1.29 于 2023 年 12 月首次发布,如果启用了传统的内置云提供商,该版本默认情况下会中止运行,但这个设置可被覆盖。此外,OpenStack 的内置提供程序在 1.26 中被删除,AWS 的内置提供程序在 Kubernetes 1.27 中被删除,因此在这些平台和版本上部署的组织已经进行了必要的更改。

 

不过,新版本 Kubernetes 的推出是一个渐进的过程,在许多情况下,更改是必要的。有关如何迁移的信息,可以浏览这篇官方文章(https://kubernetes.io/blog/2023/12/14/cloud-provider-integration-changes/)。

 

原文链接:https://devclass.com/2024/10/01/kubernetes-1-31-now-a-truly-vendor-neutral-platform-thanks-to-removal-of-built-in-cloud-provider-code/

2024-10-16 15:334842

评论

发布
暂无评论
发现更多内容

JavaScript刷LeetCode拿offer-js版字典

Geek_07a724

JavaScript LeetCode

java Apache poi 对word doc文件进行读写操作

@下一站

编程 原创 word Java core 11月月更

元年科技:在数字化浪潮中,为企业建造一艘“方舟”

元年技术洞察

微服务 云原生 容器化 方舟企业数字化 PaaS 平台

Python进阶(三十八)利用matplotlib 进行折线图,直方图和饼图的绘制

No Silver Bullet

Python matplotlib 11月月更

亚中医疗——数据驱动预算管理升级,引领业务发展

元年技术洞察

数据驱动

js函数式编程讲解

hellocoder2029

JavaScript

还在为数据库事务一致性检测而苦恼?让Elle帮帮你,以TDSQL为例我们测测 | DB·洞见#7

腾讯云数据库

数据库 腾讯云 数据一致性 tdsql 腾讯云数据库

前端leetcde算法面试套路之二叉树

js2030code

JavaScript LeetCode

大数据培训学习的时候有什么方法吗

小谷哥

[力扣] 剑指 Offer 第一天 - 用两个栈实现队列

陈明勇

Go 数据结构与算法 力扣 11月月更

彻底搞懂nodejs事件循环

coder2028

node.js

JavaScript刷LeetCode拿offer-树的遍历

js2030code

JavaScript LeetCode

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

js异步编程的三种模式

hellocoder2029

JavaScript

挖到宝了!2022阿里大佬手写“精品”Sping Boot学习笔记

小小怪下士

Java 程序员 阿里 springboot

【Go电商实战05】结合项目解答使用Go中间件遇到的问题:中间件的概念和应用

王中阳Go

golang 学习方法 中间件 11月月更 电商实战

MASA MAUI Plugin (六)集成个推,实现本地消息推送[Android] 篇

MASA技术团队

blazor MASA MAUI Xamarin MASA Blazor

直播CDN调度技术关键挑战与架构设计

京东科技开发者

架构 系统架构 直播 CDN加速 CDN技术

nodejs实现jwt

coder2028

node.js

大咖说·先临三维|高精度3D视觉技术商业应用与实践

大咖说

科技 高精度3D视觉

ONES 出席产业互联高峰论坛,分享金融企业研发管理实践

万事ONES

一文读懂NodeJs知识体系和原理浅析

coder2028

node.js

零基础学习大数据培训难吗?

小谷哥

聚焦“教-学-评-测-练-管一体化”,推动新型人才培养!

华为云开发者联盟

云计算 后端 华为云

js对象和原型、原型链的关系

hellocoder2029

JavaScript

分享一招应对BOM表的检查方法,摆脱被BOM支配的“恐惧”

华秋PCB

检查 PCB PCB设计

Python进阶(三十九)使用matplotlib进行绘图分析数据

No Silver Bullet

Python 绘图 matplotlib 11月月更

JavaScript刷LeetCode拿offer-二叉树层序遍历篇

Geek_07a724

JavaScript LeetCode

Nftea: 世界杯文化、 NFT与 期权的首度碰撞

股市老人

Python进阶(三十七)Windows7使用nginx+apache部署django项目

No Silver Bullet

Python Apache nginx django 11月月更

移除了内置的云提供商代码后,Kubernetes 1.31 现在成为了“真正中立的供应商平台”_云原生_Tim Anderson_InfoQ精选文章