本文已超过一年。较旧的文章可能包含过时的内容。请检查页面中的信息自发布以来是否已变得不正确。

Kubernetes 1.24:观星者

我们很高兴地宣布 Kubernetes 1.24 版本发布,这是 2022 年的第一个版本!

此版本包含 46 项增强功能:14 项增强功能已升级为稳定版,15 项增强功能正在移至 Beta 版,13 项增强功能正在进入 Alpha 版。此外,还有两个功能已被弃用,两个功能已被删除。

主要主题

Dockershim 从 kubelet 中移除

在 v1.20 中弃用后,dockershim 组件已从 Kubernetes v1.24 中的 kubelet 中删除。从 v1.24 开始,您需要使用其他支持的运行时(例如 containerd 或 CRI-O),或者如果您依赖 Docker Engine 作为容器运行时,则使用 cri-dockerd。有关确保您的集群为此次移除做好准备的更多信息,请参阅本指南

默认禁用 Beta API

默认情况下,新的 Beta API 将不会在集群中启用。现有的 Beta API 和现有 Beta API 的新版本将继续默认启用。

签署发布工件

发布工件使用cosign签名签署,并且验证图像签名具有实验性支持。发布工件的签名和验证是提高 Kubernetes 发布过程的软件供应链安全性的一部分。

OpenAPI v3

Kubernetes 1.24 提供以 OpenAPI v3 格式发布其 API 的 Beta 支持。

存储容量和卷扩展正式发布

存储容量跟踪支持通过 CSIStorageCapacity 对象公开当前可用的存储容量,并增强了使用具有延迟绑定的 CSI 卷的 pod 的调度。

卷扩展添加了对调整现有持久卷大小的支持。

NonPreemptingPriority 升级为稳定版

此功能为 PriorityClasses 添加了一个新选项,可以启用或禁用 pod 抢占。

存储插件迁移

正在进行的工作是迁移内部存储插件的内部以调用 CSI 插件,同时保持原始 API。Azure DiskOpenStack Cinder 插件都已迁移。

gRPC 探针升级为 Beta 版

在 Kubernetes 1.24 中,gRPC 探针功能已进入 Beta 版并默认可用。您现在可以为 Kubernetes 内的 gRPC 应用程序原生配置启动、活跃度和就绪探针,而无需公开 HTTP 端点或使用额外的可执行文件。

Kubelet 凭证提供程序升级为 Beta 版

最初在 Kubernetes 1.20 中作为 Alpha 版发布,kubelet 对图像凭证提供程序的支持现已升级为 Beta 版。这允许 kubelet 使用 exec 插件动态检索容器图像注册表的凭证,而不是将凭证存储在节点的文件系统上。

Alpha 版中的上下文日志记录

Kubernetes 1.24 引入了上下文日志记录,使函数的调用者能够控制日志记录的所有方面(输出格式、详细程度、附加值和名称)。

避免服务 IP 分配中的冲突

Kubernetes 1.24 引入了一项新的选择性加入功能,允许您为静态 IP 地址分配给服务软保留一个范围。通过手动启用此功能,集群将优先从服务 IP 地址池中自动分配,从而降低冲突的风险。

可以分配 Service ClusterIP

  • 动态分配,这意味着集群将自动在配置的服务 IP 范围内选择一个空闲 IP。
  • 静态分配,这意味着用户将在配置的服务 IP 范围内设置一个 IP。

服务 ClusterIP 是唯一的;因此,尝试创建已分配了 ClusterIP 的服务将返回错误。

动态 Kubelet 配置已从 Kubelet 中删除

在 Kubernetes 1.22 中弃用后,动态 Kubelet 配置已从 kubelet 中删除。该功能将在 Kubernetes 1.26 中从 API 服务器中删除。

在升级到 Kubernetes 1.24 之前,请验证您是否正在使用/升级到已测试可与此版本正确配合使用的容器运行时。

例如,以下容器运行时正在准备或已经为 Kubernetes 准备就绪

  • containerd v1.6.4 及更高版本,v1.5.11 及更高版本
  • CRI-O 1.24 及更高版本

当 CNI 插件未升级和/或 CNI 配置版本未在 CNI 配置文件中声明时,containerd v1.6.0–v1.6.3 中存在 pod CNI 网络设置和拆除的服务问题。containerd 团队报告说,“这些问题已在 containerd v1.6.4 中解决。”

对于 containerd v1.6.0–v1.6.3,如果您不升级 CNI 插件和/或声明 CNI 配置版本,您可能会遇到以下“不兼容的 CNI 版本”或“无法销毁沙箱的网络”错误情况。

CSI 快照

此信息是在首次发布后添加的。

VolumeSnapshot v1beta1 CRD 已删除。Kubernetes 和容器存储接口 (CSI) 的卷快照和还原功能,它提供标准化的 API 设计 (CRD) 并为 CSI 卷驱动程序添加 PV 快照/还原支持,在 v1.20 中移至 GA。VolumeSnapshot v1beta1 在 v1.20 中已弃用,现在不受支持。有关更多信息,请参阅KEP-177: CSI 快照卷快照 GA 博客

其他更新

升级为稳定版

此版本看到 14 项增强功能升级为稳定版

主要变更

此版本有两个主要变更

发行说明

请在我们的发行说明中查看 Kubernetes 1.24 版本的完整详细信息。

可用性

Kubernetes 1.24 可在 GitHub 上下载。要开始使用 Kubernetes,请查看这些交互式教程,或使用 kind 以容器作为“节点”运行本地 Kubernetes 集群。您还可以使用 kubeadm 轻松安装 1.24 版本。

发布团队

如果没有由致力于 Kubernetes 1.24 版本团队的个人组成的共同努力,此次发布将不可能实现。该团队齐心协力交付了每个 Kubernetes 版本的所有组件,包括代码、文档、发行说明等等。

特别感谢我们的发布负责人 James Laverack,感谢他指导我们完成了成功的发布周期,并感谢所有发布团队成员为 Kubernetes 社区交付 v1.24 版本所付出的时间和努力。

Kubernetes 1.24:观星者

Kubernetes 1.24 的主题是观星者

从古代天文学家到建造詹姆斯·韦伯太空望远镜的科学家,世世代代的人们都敬畏和惊奇地仰望星空。星星激励了我们,点燃了我们的想象力,并在艰难的航海之夜指引着我们。

随着这个版本的发布,我们仰望天空,展望当我们的社区团结起来时可能实现的目标。Kubernetes 是全球数百名贡献者和数千名支持服务数百万应用程序的最终用户共同努力的成果。每一个人都是我们天空中的一颗星星,帮助我们规划前进的道路。

发布徽标由 Britnee Laverack 创作,描绘了置于星空上的望远镜和 昴星团,在神话中通常被称为“七姐妹”。数字七对于 Kubernetes 项目来说尤其吉祥,并且是对我们最初的“Project Seven”名称的回溯。

这个版本的 Kubernetes 以那些会仰望夜空并感到好奇的人命名 —— 为了所有在那里的观星者。✨

用户亮点

生态系统更新

项目速度

CNCF K8s DevStats 项目汇总了许多与 Kubernetes 和各种子项目的速度相关的有趣数据点。 这包括从个人贡献到正在贡献的公司的数量的一切信息,并且说明了为发展此生态系统所付出的努力的深度和广度。

在 v1.24 发布周期中,该周期运行了 17 周(1 月 10 日至 5 月 3 日),我们看到了来自 1029 家公司1179 名个人的贡献。

即将发布的网络研讨会

加入 Kubernetes 1.24 发布团队成员于 2022 年 5 月 24 日星期二上午 9:45 – 11:00(太平洋时间)举行的会议,了解此版本的主要功能以及有助于规划升级的弃用和删除。 有关更多信息和注册,请访问 CNCF 在线计划网站上的活动页面

参与其中

参与 Kubernetes 的最简单方法是加入与您的兴趣相符的众多特别兴趣小组 (SIG) 之一。 有什么想向 Kubernetes 社区广播的内容吗? 在我们每周的社区会议以及以下渠道中分享您的声音