了解 EKS 上的 Kubernetes 版本生命周期 - Amazon EKS

帮助改进此页面

想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。

了解 EKS 上的 Kubernetes 版本生命周期

Kubernetes 发展迅速,提供了新功能、设计更新和错误修复。社区平均每四个月发布一次新的 Kubernetes 次要版本(例如 1.31)。Amazon EKS 会遵循次要版本的上游发布和弃用周期。随着新 Kubernetes 版本在 Amazon EKS 中提供,我们建议您主动将集群更新为使用最新的可用版本。

在发布后的前 14 个月内,次要版本会在 Amazon EKS 中获得标准支持。一个版本超过标准支持终止日期后,将在接下来 12 个月自动进入扩展支持。延期支持允许您在特定 Kubernetes 版本上停留更长时间,但每个集群小时需支付额外费用。如果您在延期支持期限结束之前未更新集群,则您的集群将自动升级到当前支持的最旧延期版本。

扩展支持会默认启用。您可以禁用扩展支持。

我们建议您使用 Amazon EKS 支持的最新可用 Kubernetes 版本创建集群。如果您的应用程序需要特定版本的 Kubernetes,则可以选择较旧的版本。您可以在标准或延期支持中提供的任何版本上创建新的 Amazon EKS 集群。

标准支持上的可用版本

Amazon EKS 标准支持目前提供以下 Kubernetes 版本:

  • 1.31

  • 1.30

  • 1.29

  • 1.28

有关标准支持中每个版本需要注意的重要更改,请参阅 查看 Kubernetes 标准支持版本的发布说明

延期支持的可用版本

Amazon EKS 扩展支持目前提供以下 Kubernetes 版本:

  • 1.27

  • 1.26

  • 1.25

  • 1.24

  • 1.23

有关扩展支持中每个版本需要注意的重要更改,请参阅 查看 Kubernetes 扩展支持版本的发布说明

Amazon EKS Kubernetes 发布日历

下表显示了每个 Kubernetes 版本需要考虑的重要发布和支持日期。扩展支持从该版本的标准支持终止之日起开始计费。

注意

只有月份和年份的发布日期均为大概日期,这些日期会在确切日期明确后进行更新。

Kubernetes 版本 上游版本 Amazon EKS 版本 标准支持结束日期 延期支持结束日期
1.31 2024 年 8 月 13 日 2024 年 9 月 26 日 2025 年 11 月 26 日 2026 年 11 月 26 日
1.30 2024 年 4 月 17 日 2024 年 5 月 23 日 2025 年 7 月 23 日 2026 年 7 月 23 日
1.29 2023 年 12 月 13 日 2024 年 1 月 23 日 2025 年 3 月 23 日 2026 年 3 月 23 日
1.28 2023 年 8 月 15 日 2023 年 9 月 26 日 2024 年 11 月 26 日 2025 年 11 月 26 日
1.27 2023 年 4 月 11 日 2023 年 5 月 24 日 2024 年 7 月 24 日 2025 年 7 月 24 日
1.26 2022 年 12 月 9 日 2023 年 4 月 11 日 2024 年 6 月 11 日 2025 年 6 月 11 日
1.25 2022 年 8 月 23 日 2023 年 2 月 22 日 2024 年 5 月 1 日 2025 年 5 月 1 日
1.24 2022 年 5 月 3 日 2022 年 11 月 15 日 2024 年 1 月 31 日 2025 年 1 月 31 日
1.23 2021 年 12 月 7 日 2022 年 8 月 11 日 2023 年 10 月 11 日 2024 年 10 月 11 日

Amazon EKS 版本常见问题

标准支持提供多少个 Kubernetes 版本?

为了与 Kubernetes 社群对 Kubernetes 版本的支持保持一致,Amazon EKS 致力于在任何特定时间为至少四个生产就绪的 Kubernetes 版本提供支持。我们会提前至少 60 天公告特定 Kubernetes 次要版本的标准支持结束日期。鉴于新 Kubernetes 版本的 Amazon EKS 鉴定和发布流程,Amazon EKS 上对某个 Kubernetes 版本的标准支持的结束日期将会是 Kubernetes 项目停止支持上游版本之日或之后。

Kubernetes 可以获得多长时间的 Amazon EKS 标准支持?

一个 Kubernetes 版本首次在 Amazon EKS 上发布后在 14 个月内获得标准支持。即使上游 Kubernetes 不再支持 Amazon EKS 上可用的版本,也是如此。我们向后移植适用于 Amazon EKS 上支持的 Kubernetes 版本的安全补丁。

当对 Amazon EKS 上的 Kubernetes 版本的标准支持结束时,我是否会收到通知?

是。如果您账户中有任何集群正在运行即将终止支持的版本,Amazon EKS 会在 Kubernetes 版本在 Amazon EKS 上发布大约 12 个月后通过 AWS Health Dashboard 发出通知。该通知包括支持结束日期。为从通知发出之日起至少 60 天。

Amazon EKS 支持哪些 Kubernetes 功能?

Amazon EKS 支持 Kubernetes API 的所有正式发布(GA)功能。从 Kubernetes 版本 1.24 开始,默认情况下,集群中不会启用新的测试版 API。但在默认情况下,先前存在的测试版 API 和现有测试版 API 的新版本将继续默认启用。不支持 Alpha 功能。

Amazon EKS 托管节点组是否会随集群控制面板版本一起自动更新?

否。托管节点组在您的账户中创建 Amazon EC2 实例。当您或 Amazon EKS 更新控制层面时,这些实例不会自动升级。有关更多信息,请参阅 更新集群的托管式节点组。我们建议您的控制面板和节点上保持相同的 Kubernetes 版本。

自行管理的节点组是否会随集群控制面板版本一起自动更新?

否。自行管理的节点组包括您的账户中的 Amazon EC2 实例。当您或 Amazon EKS 代表您更新控制面板版本时,这些实例不会自动升级。对于自行管理的节点组,控制台中没有任何其需要更新的标示。您可以在集群的 Overview(概览)选项卡上的 Nodes(节点)列表中选择节点查看其上安装的 kubelet 版本,确定哪些节点需要更新。您必须手动更新节点。有关更多信息,请参阅 更新集群的自行管理型节点

Kubernetes 项目最多测试三个次要版本的控制面板和节点之间的兼容性。例如,当 1.28 节点由 1.31 控制面板编排时,节点会继续运行。但是,不建议运行具有版本持续落后控制面板三个次要版本的节点的集群。有关更多信息,请参阅 Kubernetes 文档中的 Kubernetes 版本和版本倾斜支持政策。我们建议您的控制面板和节点上保持相同的 Kubernetes 版本。

Fargate 上运行的 Pods 是否通过自动集群控制面板版本升级而自动升级?

不会。我们强烈建议将 Fargate Pods 作为复制控制器(如 Kubernetes 部署)的一部分运行。然后依次重启所有的 Fargate Pods。新版本的 Fargate Pod 部署有一个 kubelet 版本,该版本与更新的集群控制面板版本相同。有关更多信息,请参阅 Kubernetes 文档中的部署

重要

如果您更新控制面板,则必须自行更新 Fargate 节点。要更新 Fargate 节点,请删除该节点表示的 Fargate Pod,然后重新部署 Pod。部署新的 Pod 时使用 kubelet 版本,该版本与您的集群版本相同。

Amazon EKS 扩展支持常见问题

标准支持和延期支持术语对我来说是全新的。这些术语是什么意思?

对 Amazon EKS 中某个 Kubernetes 版本的标准支持从该 Kubernetes 版本在 Amazon EKS 上发布时开始,并将在发布日期 14 个月后结束。对某个 Kubernetes 版本的延期支持将在标准支持结束后立即开始,并将在接下来的 12 个月后结束。例如,Amazon EKS 版本 1.23 的标准支持将于 2023 年 10 月 11 日结束。对版本 1.23 的延期支持于 2023 年 10 月 12 日开始,并将于 2024 年 10 月 11 日结束。

我需要做些什么才能获得对 Amazon EKS 集群的延期支持?

您无需采取任何措施即可获得对 Amazon EKS 集群的延期支持。标准支持从 Kubernetes 版本在 Amazon EKS 上发布时开始,并将在发布日期 14 个月后结束。对某个 Kubernetes 版本的延期支持将在标准支持结束后立即开始,并将在接下来的 12 个月后结束。

哪些 Kubernetes 版本可以获得延期支持?

延期支持适用于 Kubernetes 版本 1.23 及更高版本。在任何版本的标准支持结束后,您最多可以在该版本上运行集群 12 个月。这意味着 Amazon EKS 将为每个版本提供 26 个月的支持(14 个月的标准支持加上 12 个月的延期支持)。

如果我不想使用延期支持怎么办?

如果您不想自动注册延期支持,则可以将集群升级到标准 Amazon EKS 支持的 Kubernetes 版本。您也可以禁用扩展支持

12 个月的延期支持结束后会发生什么?

在已完成 26 个月生命周期(14 个月的标准支持加上 12 个月的延期支持)的 Kubernetes 版本上运行的集群将自动升级到下一个版本。

在延期支持结束之日,您将无法再使用不受支持的版本创建新的 Amazon EKS 集群。Amazon EKS 会在支持结束日期后通过逐步部署流程,自动将现有控制层面更新为最早的受支持版本。控制面板自动更新后,确保手动更新集群附加组件和 Amazon EC2 节点。有关更多信息,请参阅 更新 Amazon EKS 集群的 Kubernetes 版本

在延期支持结束日期后,自动更新控制面板的确切时间是何时?

Amazon EKS 无法给出具体的时间范围。自动更新可以在延期支持结束日期后的任何时间进行。在更新之前,您不会收到任何通知。我们建议您主动更新您的控制面板,而不要依赖 Amazon EKS 自动更新流程。有关更多信息,请参阅 将现有集群更新到新的 Kubernetes 版本

我能否无限期地将控制面板留在某个 Kubernetes 版本上?

不能。AWS 的云安全性具有最高优先级。过去一段时间(通常为 1 年),Kubernetes 社群停止发布常见漏洞和风险(CVE)补丁程序,也不鼓励提交不受支持版本的 CVE。这意味着旧版本 Kubernetes 的特定漏洞甚至可能没有报告。这会在出现漏洞的情况下,集群被暴露且不会进行通知,也没有修复选项。鉴于此,Amazon EKS 不允许控制面板停留在延期支持已经结束的版本上。

获得延期支持是否需要额外费用?

需要,在延期支持下运行的 Amazon EKS 集群需要支付额外费用。有关定价详情,请参阅 AWS 博客上的对 Kubernetes 版本定价的 Amazon EKS 扩展支持

延期支持中包含哪些内容?

延期支持中的 Amazon EKS 集群会一直收到 Kubernetes 控制面板的安全补丁。此外,Amazon EKS 将发布 Amazon VPC CNI 的补丁 kube-proxy 和延期支持版本的 CoreDNS 附加组件。Amazon EKS 还将针对 AWS 发布的适用于 Amazon Linux、Bottlerocket 和 Windows 的 Amazon EKS 优化版 AMI 以及这些版本的 Amazon EKS Fargate 节点发布补丁。延期支持中的所有集群将继续从 AWS 中获得技术支持。

注意

AWS 发布的 Amazon EKS 优化版 Windows AMI 的延期支持不适用于 Kubernetes 版本 1.23,但适用于 Kubernetes 版本 1.24 及更高版本。

在延期支持中,非 Kubernetes 组件的补丁是否有任何限制?

虽然延期支持涵盖了来自 AWS 的所有 Kubernetes 特定组件,但它仅在任何时候为 AWS 发布的适用于 Amazon Linux、Bottlerocket 和 Windows 的 Amazon EKS 优化版 AMI 提供支持。这意味着,在使用延期支持时,您的 Amazon EKS 优化版 AMI 上可能会有更新的组件(例如操作系统或内核)。例如,一旦 Amazon Linux 2 在 2025 年结束其生命周期后,Amazon EKS 优化版 Amazon Linux AMI 将使用更新的 Amazon Linux 操作系统构建。Amazon EKS 将宣布并记录重要的支持生命周期差异,例如每个 Kubernetes 版本的差异。

我是否能使用扩展支持的版本创建新集群?

是,但 1.221.21 除外。例如,您可以创建 1.23 集群,但不能创建 1.22 集群。