Posts in 2024
SIG Scheduling 访谈
By Arvind Parekh | 2024.09.24 in 博客
在本次 SIG Scheduling 的访谈中,我们与 Kensei Nakada 进行了交流,他是 SIG Scheduling 的一名 Approver。 介绍 Arvind: 你好,感谢你让我们有机会了解 SIG Scheduling! 你能介绍一下自己,告诉我们你的角色以及你是如何参与 Kubernetes 的吗? Kensei: 嗨,感谢你给我这个机会!我是 Kensei Nakada (@sanposhiho),是来自 Tetrate.io 的一名软件工程师。 …
Kubernetes v1.31:kubeadm v1beta4
By Paco Xu (DaoCloud) | 2024.08.23 in 博客
作为 Kubernetes v1.31 发布的一部分,kubeadm 采用了全新版本(v1beta4)的配置文件格式。 之前 v1beta3 格式的配置现已正式弃用,这意味着尽管之前的格式仍然受支持,但你应迁移到 v1beta4 并停止使用已弃用的格式。 对 v1beta3 配置的支持将在至少 3 次 Kubernetes 次要版本发布后被移除。 在本文中,我将介绍关键的变更;我将解释 kubeadm v1beta4 配置格式,以及如何从 v1beta3 迁移到 v1beta4。 …
Kubernetes v1.31:全新的 Kubernetes CPUManager 静态策略:跨核分发 CPU
By Jiaxin Shan (Bytedance) | 2024.08.22 in 博客
在 Kubernetes v1.31 中,我们很高兴引入了对 CPU 管理能力的重大增强:针对 CPUManager 静态策略的 distribute-cpus-across-cores 选项。此特性目前处于 Alpha 阶段, 默认被隐藏,标志着旨在优化 CPU 利用率和改善多核处理器系统性能的战略转变。 理解这一特性 传统上,Kubernetes 的 CPUManager 倾向于尽可能紧凑地分配 CPU,通常将这些 CPU 打包到尽可能少的物理核上。 然而,分配策略很重要,因为同一物理主机 …
Kubernetes 1.31:细粒度的 SupplementalGroups 控制
By Shingo Omura (Woven By Toyota) | 2024.08.22 in 博客
本博客讨论了 Kubernetes 1.31 中的一项新特性,目的是改善处理 Pod 中容器内的附加组。 动机:容器镜像中 /etc/group 中定义的隐式组成员关系 尽管这种行为可能并不受许多 Kubernetes 集群用户/管理员的欢迎, 但 Kubernetes 默认情况下会将 Pod 中的组信息与容器镜像中 /etc/group 中定义的信息进行合并。 让我们看一个例子,以下 Pod 在 Pod 的安全上下文中指定了 runAsUser=1000、runAsGroup=3000 …
Kubernetes 1.31:kubectl debug 中的自定义模板化配置特性已进入 Beta 阶段
By Arda Güçlü (Red Hat) | 2024.08.22 in 博客
有很多方法可以对集群中的 Pod 和节点进行故障排查,而 kubectl debug 是最简单、使用最广泛、最突出的方法之一。 它提供了一组静态配置,每个配置适用于不同类型的角色。 例如,从网络管理员的视角来看,调试节点应该像这样简单: $ kubectl debug node/mynode -it --image=busybox --profile=netadmin 另一方面,静态配置也存在固有的刚性,对某些 Pod 所产生的影响与其易用性是相悖的。 因为各种类型的 Pod(或节点)都有其特 …
Kubernetes 1.31:流式传输从 SPDY 转换为 WebSocket
By Sean Sullivan (Google) Shannon Kularathna (Google) | 2024.08.20 in 博客
在 Kubernetes 1.31 中,kubectl 现在默认使用 WebSocket 协议而不是 SPDY 进行流式传输。 这篇文章介绍了这些变化对你意味着什么以及这些流式传输 API 的重要性。 Kubernetes 中的流式 API 在 Kubernetes 中,某些以 HTTP 或 RESTful 接口公开的某些端点会被升级为流式连接,因而需要使用流式协议。 与 HTTP 这种请求-响应协议不同,流式协议提供了一种持久的双向连接,具有低延迟的特点,并允许实时交互。 流式协议支持在客户 …
Kubernetes 1.31:podAffinity 中的 matchLabelKeys 进阶至 Beta
By Kensei Nakada (Tetrate) | 2024.08.16 in 博客
Kubernetes 1.29 在 podAffinity 和 podAntiAffinity 中引入了新的字段 matchLabelKeys 和 mismatchLabelKeys。 在 Kubernetes 1.31 中,此特性进阶至 Beta,并且相应的特性门控(MatchLabelKeysInPodAffinity)默认启用。 matchLabelKeys - 为多样化滚动更新增强了调度 在工作负载(例如 Deployment)的滚动更新期间,集群中可能同时存在多个版本的 Pod。 然 …
Kubernetes 1.31:通过 VolumeAttributesClass 修改卷进阶至 Beta
By Sunny Song (Google) Matthew Cary (Google) | 2024.08.15 in 博客
在 Kubernetes 中,卷由两个属性描述:存储类和容量。存储类是卷的不可变属性, 而容量可以通过卷调整大小进行动态变更。 这使得使用卷的工作负载的垂直扩缩容变得复杂。 虽然云厂商和存储供应商通常提供了一些允许指定注入 IOPS 或吞吐量等 IO 服务质量(性能)参数的卷,并允许在工作负载运行期间调整这些参数,但 Kubernetes 没有提供用来更改这些参数的 API。 我们很高兴地宣布,自 Kubernetes 1.29 起以 Alpha …
Kubernetes 1.31:对 cgroup v1 的支持转为维护模式
By Harshal Patil | 2024.08.14 in 博客
随着 Kubernetes 不断发展,为了适应容器编排全景图的变化,社区决定在 v1.31 中将对 cgroup v1 的支持转为维护模式。 这一转变与行业更广泛地向 cgroup v2 的迁移保持一致,后者的功能更强, 包括可扩展性和更加一致的接口。在我们深入探讨对 Kubernetes 的影响之前, 先回顾一下 cgroup 的概念及其在 Linux 中的重要意义。 理解 cgroup 控制组(Control Group)也称为 cgroup, 是 Linux 内核的一项特性,允许在进程之 …
Kubernetes v1.31: Elli
By Kubernetes v1.31 Release Team | 2024.08.13 in 博客
编辑: Matteo Bianchi, Yigit Demirbas, Abigail McCarthy, Edith Puclla, Rashan Smith Kubernetes v1.31:Elli 宣布发布! 与之前的版本类似,Kubernetes v1.31 的发布中引入了新的稳定版、Beta 版和 Alpha 特性功能。 持续提供高质量的版本彰显了我们开发周期的强劲实力以及社区的大力支持。 此版本包含 45 项增强功能。 在这些增强功能中,11 项已升级到稳定版,22 …