Azure Kubernetes 服务 (AKS) 中支持的 Kubernetes 版本
Kubernetes 社区大约每 4 个月发布次要版本。
次要版本包括新增功能和改进。 补丁发布更为频繁(有时每周都会发布),适用于次要版本中的关键 Bug 修复。 修补程序版本包括针对安全漏洞或主要 bug 的修复。
Kubernetes 版本
Kubernetes 对每个版本使用标准的语义化版本控制方案:
[major].[minor].[patch]
Examples:
1.29.2
1.29.1
版本中的每个编写表示与前一版本的一般兼容性:
- 当存在不兼容的 API 更新或者后向兼容性可能损坏时,表示主要版本变化。
- 当功能更新与其他次要版本向后兼容时,表示次要版本变化。
- 当进行向后兼容的 bug 修复时,表示修补程序版本变化。
确保运行你正在运行的次要版本的最新修补程序版本。 例如,如果你的生产群集使用 1.29.1
,而 1.29.2
是 1.29 次要版本可用的最新补丁版本,那么你应尽快升级到 1.29.2
,确保你的群集得到全面的修补并受到支持。
AKS Kubernetes 发布日历
在 AKS Kubernetes 发布日历上查看即将推出的版本发布。 若要查看区域发布状态和版本发行说明的实时更新内容,请访问 AKS 发布状态网页。 若要详细了解发布状态网页,请参阅 AKS 发布跟踪器。
注意
AKS 为正式发布 (GA) Kubernetes 版本提供 12 个月的支持。 若要详细了解我们对 Kubernetes 版本控制的支持策略,请阅读常见问题解答。
对于过去的发布历史记录,请参阅 Kubernetes 历史记录。
K8s 版本 | 上游版本 | AKS 预览版 | AKS GA | 生命周期结束 | 平台支持 |
---|---|---|---|---|---|
1.27* | 2023 年 4 月 | 2023 年 6 月 | 2023 年 7 月 | 2024 年 7 月,LTS,直到 2025 年 7 月 | 直到 1.31 GA |
1.28 | 2023 年 8 月 | 2023 年 9 月 | 2023 年 11 月 | 2024 年 11 月 | 直到 1.32 GA |
1.29 | 2023 年 12 月 | 2024 年 2 月 | 2024 年 3 月 | 2025 年 3 月 | 直到 1.33 GA |
1.30 | 2024 年 4 月 | 2024 年 6 月 | 2024 年 7 月 | 2025 年 7 月 | 直到 1.34 GA |
1.31 | 2024 年 8 月 | 2024 年 9 月 | 2024 年 10 月 | 2025 年 11 月 | 直到 1.35 GA |
* 表示该版本指定用于长期支持
AKS Kubernetes 版本计划甘特图
如果想要直观地查看此信息,下方提供了一个甘特图,其中显示了所有当前版本:
AKS 组件中断性变更(按版本)
在升级到任何可用的次要版本之前,请注意以下重要更改:
Kubernetes 1.30
AKS 托管加载项 | AKS 组件 | OS 组件 | 中断性变更 | 备注 |
---|---|---|---|---|
• Azure Policy 1.3.0 • cloud-provider-node-manager v1.30.0 • csi-provisioner v4.0.0 • csi-attacher v4.5.0 • csi-snapshotter v6.3.3 • snapshot-controller v6.3.3 • Metrics-Server 0.6.3 • KEDA 2.14.0 • Open Service Mesh 1.2.7 • Core DNS V1.9.4 • Overlay VPA 0.13.0 • Azure-Keyvault-SecretsProvider 1.4.1 • 应用程序网关入口控制器 (AGIC) 1.7.2 • 映像清理器 v1.2.3 • Azure 工作负载标识 v1.2.0 • MDC Defender 安全发布服务器 1.0.68 • MDC Defender 旧文件清理器 1.3.68 • MDC Defender Pod 收集器 1.0.78 • MDC Defender 低级别收集器 1.3.81 • Azure Active Directory Pod 标识 1.8.13.6 • GitOps 1.8.1 • CSI 机密存储驱动程序 1.3.4-1 • azurefile-csi-driver 1.29.3 |
• Cilium 1.13.5 • CNI v1.4.43.1(默认)/v1.5.11(Azure CNI 覆盖) • 群集自动缩放程序 1.27.3 • Tigera-Operator 1.30.7 |
• OS 映像 Ubuntu 22.04 Cgroups V2 • 适用于 Linux 的 ContainerD 1.7.5 和适用于 Windows 的 ContainerD 1.7.1 • Azure Linux 2.0 • Cgroups V2 • ContainerD 1.6 |
• KEDA 2.14.0 | 空值 |
Kubernetes 1.29
AKS 托管加载项 | AKS 组件 | OS 组件 | 中断性变更 | 备注 |
---|---|---|---|---|
• Azure Policy 1.3.0 • csi-provisioner v4.0.0 • csi-attacher v4.5.0 • csi-snapshotter v6.3.3 • snapshot-controller v6.3.3 • Metrics-Server 0.6.3 • KEDA 2.11.2 • Open Service Mesh 1.2.7 • Core DNS V1.9.4 • Overlay VPA 0.13.0 • Azure-Keyvault-SecretsProvider 1.4.1 • 应用程序网关入口控制器 (AGIC) 1.7.2 • 映像清理器 v1.2.3 • Azure 工作负载标识 v1.2.0 • MDC Defender 安全发布服务器 1.0.68 • MDC Defender 旧文件清理器 1.3.68 • MDC Defender Pod 收集器 1.0.78 • MDC Defender 低级别收集器 1.3.81 • Azure Active Directory Pod 标识 1.8.13.6 • GitOps 1.8.1 • CSI 机密存储驱动程序 1.3.4-1 • azurefile-csi-driver 1.29.3 |
• Cilium 1.13.5 • CNI v1.4.43.1(默认)/v1.5.11(Azure CNI 覆盖) • 群集自动缩放程序 1.27.3 • Tigera-Operator 1.30.7 |
• OS 映像 Ubuntu 22.04 Cgroups V2 • 适用于 Linux 的 ContainerD 1.7.5 和适用于 Windows 的 ContainerD 1.7.1 • Azure Linux 2.0 • Cgroups V2 • ContainerD 1.6 |
• Tigera-Operator 1.30.7 • csi-provisioner v4.0.0 • csi-attacher v4.5.0 • csi-snapshotter v6.3.3 • snapshot-controller v6.3.3 |
空值 |
Kubernetes 1.28
AKS 托管加载项 | AKS 组件 | OS 组件 | 中断性变更 | 备注 |
---|---|---|---|---|
• Azure Policy 1.3.0 • azurefile-csi-driver 1.29.2 • csi-node-driver-registrar v2.9.0 • csi-livenessprobe 2.11.0 • azuredisk-csi-linux v1.29.2 • azuredisk-csi-windows v1.29.2 • csi-provisioner v3.6.2 • csi-attacher v4.5.0 • csi-resizer v1.9.3 • csi-snapshotter v6.2.2 • snapshot-controller v6.2.2 • Metrics-Server 0.6.3 • KEDA 2.11.2 • Open Service Mesh 1.2.7 • Core DNS V1.9.4 • Overlay VPA 0.13.0 • Azure-Keyvault-SecretsProvider 1.4.1 • 应用程序网关入口控制器 (AGIC) 1.7.2 • 映像清理器 v1.2.3 • Azure 工作负载标识 v1.2.0 • MDC Defender 安全发布服务器 1.0.68 • CSI 机密存储驱动程序 1.3.4-1 • MDC Defender 旧文件清理器 1.3.68 • MDC Defender Pod 收集器 1.0.78 • MDC Defender 低级别收集器 1.3.81 • Azure Active Directory Pod 标识 1.8.13.6 • GitOps 1.8.1 |
• Cilium 1.13.10-1 • CNI v1.4.43.1(默认)/v1.5.11(Azure CNI 覆盖) • 群集自动缩放程序 1.27.3 • Tigera-Operator 1.28.13 |
• OS 映像 Ubuntu 22.04 Cgroups V2 • 适用于 Linux 的 ContainerD 1.7.5 和适用于 Windows 的 ContainerD 1.7.1 • Azure Linux 2.0 • Cgroups V1 • ContainerD 1.6 |
• azurefile-csi-driver 1.29.2 • csi-resizer v1.9.3 • csi-attacher v4.4.2 • csi-provisioner v4.4.2 • blob-csi v1.23.2 • azurefile-csi driver v1.29.2 • azuredisk-csi driver v1.29.2 • csi-livenessprobe v2.11.0 • csi-node-driver-registrar v2.9.0 |
空值 |
Kubernetes 1.27
AKS 托管加载项 | AKS 组件 | OS 组件 | 中断性变更 | 备注 |
---|---|---|---|---|
• Azure Policy 1.3.0 • azuredisk-csi driver v1.28.5 • azurefile-csi driver v1.28.10 • blob-csi v1.22.4 • csi-attacher v4.3.0 • csi-resizer v1.8.0 • csi-snapshotter v6.2.2 • snapshot-controller v6.2.2 • Metrics-Server 0.6.3 • KEDA 2.11.2 • Open Service Mesh 1.2.3 • Core DNS V1.9.4 • Overlay VPA 0.11.0 • Azure-Keyvault-SecretsProvider 1.4.1 • 应用程序网关入口控制器 (AGIC) 1.7.2 • 映像清理器 v1.2.3 • Azure 工作负载标识 v1.0.0 • MDC Defender 1.0.56 • Azure Active Directory Pod 标识 1.8.13.6 • GitOps 1.7.0 • azurefile-csi-driver 1.28.7 • KMS 0.5.0 • CSI 机密存储驱动程序 1.3.4-1 |
• Cilium 1.13.10-1 • CNI 1.4.44 • 群集自动缩放程序 1.8.5.3 |
• OS 映像 Ubuntu 22.04 Cgroups V2 • 适用于 Linux 的 ContainerD 1.7 和适用于 Windows 的 ContainerD 1.6 • Azure Linux 2.0 • Cgroups V1 • ContainerD 1.6 |
• KEDA 2.11.2 • Cilium 1.13.10-1 • azurefile-csi-driver 1.28.7 • azuredisk-csi driver v1.28.5 • blob-csi v1.22.4 • csi-attacher v4.3.0 • csi-resizer v1.8.0 • csi-snapshotter v6.2.2 • snapshot-controller v6.2.2 |
由于 Ubuntu 22.04 FIPS 认证状态,我们将从 1.27 版本开始将 AKS FIPS 节点从 18.04 切换到 20.04。 |
别名次要版本
注意
别名次要版本需要使用 Azure CLI 2.37 或更高版本,以及 API 版本 20220401 或更高版本。 使用 az upgrade
安装最新版本的 CLI。
通过 AKS,无需指定确切的修补程序版本即可创建群集。 在不指定修补程序的情况下创建群集时,群集将运行次要版本的最新 GA 修补程序。 例如,如果使用 1.29
创建群集,而 1.29.2
是最新可用的正式版补丁,则将使用 1.29.2
使用群集。 如果要在同一次要版本中升级修补程序版本,请使用自动升级。
若要查看使用的修补程序,请运行 az aks show --resource-group myResourceGroup --name myAKSCluster
命令。 currentKubernetesVersion
属性显示整个 Kubernetes 版本。
{
"apiServerAccessProfile": null,
"autoScalerProfile": null,
"autoUpgradeProfile": null,
"azurePortalFqdn": "myaksclust-myresourcegroup.portal.hcp.chinaeast2.cx.prod.service.azk8s.cn",
"currentKubernetesVersion": "1.29.2",
}
Kubernetes 版本支持策略
AKS 定义了一个正式发布版 (GA),所有 SLO 或 SLA 衡量方案都启用了此版本,并且可在所有区域提供。 AKS 支持三个 Kubernetes GA 次要版本:
- AKS 中发布的最新 GA 次要版本(我们将其称为 N)。
- 以前的两个次要版本。
- 每个受支持的次要版本可在给定时间内支持任意数量的修补程序。 如果检测到关键的 CVE 或安全漏洞,AKS 将保留弃用修补程序的权利。 如需了解修补程序可用性和任何临时弃用,请参阅版本发布说明,并访问 AKS 发布状态网页。
AKS 可能还支持预览版本,这些版本带有明确的标签,使用时需遵守预览版条款和条件。
AKS 仅为常规受支持的版本之后的一个 Kubernetes GA 次要版本提供平台支持。 AKS 上的 Kubernetes 版本的平台支持窗口称为“N-3”。 有关详细信息,请参阅平台支持策略。
注意
AKS 使用涉及逐步区域部署的安全部署做法。 这意味着,可能需要最长 10 个工作日才能使新发布或新版本在所有区域中均可用。
AKS 上 Kubernetes 次要版本的受支持窗口称为“N-2”,其中 N 指的是最新版本,这意味着还支持两个以前的次要版本。
例如,在 AKS 引入 1.29 版本的当前,会为以下版本提供支持:
新的次要版本 | 支持的次要版本列表 |
---|---|
1.29 | 1.29、1.28、1.27 |
引入新的次要版本后,最早次要版本会被弃用并删除。 例如,假设当前支持的次要版本列表为:
1.29
1.28
1.27
当 AKS 发布 1.30 时,所有 1.27 版本在 30 天后不再受到支持。
AKS 可基于给定次要版本的上游社区版本可用性支持任意数量的修补程序。 AKS 保留在任何给定时候因 CVE 或潜在 bug 问题而弃用其中任何修补程序的权利。 始终鼓励对次要版本使用最新的修补程序。
平台支持策略
平台支持策略是用于某些不受支持的 Kubernetes 版本的缩减支持计划。 在平台支持期间,客户将仅收到 Azure 提供的 AKS/Azure 平台相关问题的支持。 与 Kubernetes 功能和组件相关的任何问题不受支持。
在群集下降到 n-4 之前,平台支持策略适用于 n-3 版本(其中 n 是受支持的最新 AKS GA 次要版本)。 例如,当 v1.29 是最新的 GA 版本时,Kubernetes v1.26 被视为平台支持。 但在 v1.30 GA 版本期间,v1.26 将自动升级到 v1.27。 如果你正在运行 n-2 版本,那么当它变成 n-3 时,它也会被弃用,你需要执行平台支持策略。
AKS 依赖于 Kubernetes 的版本和补丁,这是一个开源项目,仅支持 3 个次要版本的滑动窗口。 AKS 只能保证为上游维护的版本提供完全支持。 由于上游不再生成补丁,AKS 可以不修补这些版本或创建分支。 由于此限制,平台支持不支持依赖于 Kubernetes 上游的任何内容。
下表概述了与平台支持相比的社区支持的支持指南。
支持类别 | 社区支持 (N-2) | 平台支持 (N-3) |
---|---|---|
从 N-3 升级到受支持的版本 | 支持 | 支持 |
平台 (Azure) 可用性 | 支持 | 支持 |
节点池缩放 | 支持 | 支持 |
VM 可用性 | 支持 | 支持 |
存储、网络相关问题 | 支持 | 受到支持,bug 修复和已停用的组件除外 |
启动/停止 | 支持 | 支持 |
轮换证书 | 支持 | 支持 |
基础结构 SLA | 支持 | 支持 |
控制平面 SLA | 支持 | 支持 |
平台 (AKS) SLA | 支持 | 不支持 |
Kubernetes 组件(包括加载项) | 支持 | 不支持 |
组件更新 | 支持 | 不支持 |
组件修补程序 | 支持 | 不支持 |
应用 bug 修复 | 支持 | 不支持 |
应用安全修补程序 | 支持 | 不支持 |
Kubernetes API 支持 | 支持 | 不支持 |
群集或节点池创建 | 支持 | 不支持 |
节点池快照 | 支持 | 不支持 |
节点映像升级 | 支持 | 支持 |
注意
上表可能会发生更改,并概述了常见的支持方案。 N-3 不支持任何与 Kubernetes 功能和组件相关的方案。 有关进一步支持,请参阅 AKS 的支持和故障排除。
支持的 kubectl
版本
你可以使用一个相对于 kube-apiserver 版本较旧或较新的 kubectl
次要版本,这符合 kubectl 的 Kubernetes 支持策略。
例如,如果你的 kube-apiserver 为版本 1.28,你可以将版本 1.27 到 1.29 的 kubectl
与该 kube-apiserver 结合使用。
若要安装 kubectl
或将它更新到最新版本,请运行:
az aks install-cli
长期支持 (LTS)
AKS 提供一年的“社区支持”和一年的“长期支持 (LTS)”,用于支持公共存储库上游社区提供的端口安全修补程序。 我们的上游 LTS 工作组为社区付出努力,为我们的客户提供更长的支持窗口。
有关 LTS 的更多详细信息,请参阅对 Azure Kubernetes 服务 (AKS) 的长期支持。
发布和弃用流程
你可以在 AKS Kubernetes 发布日历上参考即将推出的版本发布和弃用事项。
对于 Kubernetes 的新次要版本:
- AKS 将于移除前至少提前 30 天在 AKS 发行说明中发布一份公告,说明新版本发布以及相应旧版本弃用的计划日期。
- 如果新版本可能会因 API 的弃用而在群集中引发问题,AKS 将使用 Azure 顾问发出警报。 此外,Azure 顾问还会在你无法再获得支持时发出警报
- AKS 会向具有 AKS 和门户访问权限的所有用户发布一个服务运行状况通知,并向订阅管理员发送一封电子邮件,其中包含计划的版本删除日期。
- 自版本移除起,你有 30 天的时间升级到受支持的次要版本,以继续获得支持。
对于 Kubernetes 的新修补程序版本:
- 由于修补程序版本的紧急性质,可以在修补程序变为可用时将其引入到服务中。 修补程序在发布后将会拥有最短两个月的生命周期。
- 通常情况下,对于新修补程序版本的发布,AKS 不会进行广泛地宣传。 但是,AKS 会持续监视和验证可用的 CVE 修补程序,以便及时在 AKS 中支持它们。 如果发现重要补丁或者需要用户进行操作,AKS 会通知你升级到新发布的补丁。
- 自从 AKS 中移除某个修补程序版本之日起,你有 30 天的时间升级到受支持的修补程序并继续获得支持。 但是,一旦弃用/删除该版本,就再也无法创建群集或节点池。
支持的版本策略例外情况
AKS 保留无需提前通知即可添加或删除具有一个或多个影响生产的关键 bug 或安全问题的新/现有版本的权利。
特定的修补程序版本可能会跳过发布或者加速推出,具体取决于 bug 或安全问题的严重性。
Azure 门户和 CLI 版本
通过 Azure 门户、Azure CLI 或 Azure PowerShell 部署 AKS 群集时,群集默认设置为 N-1 次要版本和最新修补程序。 例如,如果 AKS 支持 1.29.2、1.29.1、1.28.7、1.28.6、1.27.11 和 1.27.10,则选择的默认版本为 1.28.7。
若要了解你的订阅和区域当前可用的版本,请使用 az aks get-versions
命令。 以下示例列出了 ChinaEast2 区域可用的 Kubernetes 版本:
az aks get-versions --location chinaeast2 --output table
常见问题解答
Azure 如何将新的 Kubernetes 版本通知给我?
在我们的文档、GitHub,还有向拥有即将不受支持的群集的订阅管理员发送的电子邮件中,AKS 团队发布了包含 Kubernetes 新版本计划发布日期的公告。 此外,AKS 还会在你无法获得支持时使用 Azure 顾问在 Azure 门户内向你发出警报,并向你说明可能会影响你的应用程序或开发过程的已弃用的 API。
我应该多久升级一次 Kubernetes 版本才能始终获得支持?
从 Kubernetes 1.19 开始,开源社区已将支持时间延长到 1 年。 AKS 承诺启用修补程序并提供与上游承诺使用量匹配的支持。 对于版本 1.19 和更高版本上的 AKS 群集,你将能够每年至少升级一次,以便始终使用受支持的版本。
当升级的 Kubernetes 群集具有不受支持的次要版本时,会发生什么情况?
如果你当前使用的是 n-3 或更低版本,则意味着你已不在支持范围,系统会要求你升级。 从版本 n-3 成功升级到 n-2 后,你将重新涵盖在我们的支持策略中。 例如:
- 如果支持的最低 AKS 次要版本为 1.27,而你使用的是 1.26 或更低版本,则你无法获得支持。
- 从 1.26 成功升级到 1.27 或更高版本之后,你将重新受到我们支持策略的支持。
不支持降级。
“不受支持”是什么意思?
“不受支持”意味着:
- 正在运行的版本不在受支持的版本列表中。
- 当你请求支持时,系统将要求你将群集升级到受支持的版本,除非你正处于版本弃用后的 30 天宽限期内。
此外,对于受支持版本列表以外的群集,AKS 不会在正常运行时间或其他方面做出任何保证。
使用不受支持的次要版本缩放 Kubernetes 群集时,会发生什么情况?
对于 AKS 不支持的次要版本,缩减或扩展可继续进行。 由于没有服务质量保证,因此我们建议升级,使群集重新可接受支持。
是否可以永久保留 Kubernetes 版本?
如果群集有三 (3) 个以上的次要版本不受支持,并被发现存在安全风险,Azure 会主动联系你升级群集。 如果你不采取进一步的措施,Azure 将保留代表你自动升级群集的权利。
如果使用不受支持的次要版本缩放 Kubernetes 群集,会发生什么情况?
对于 AKS 不支持的次要版本,缩减或扩展可继续进行。 由于没有服务质量保证,因此我们建议升级,使群集重新可接受支持。
如果节点池不在某个受支持的 AKS 版本中,控制平面支持哪个版本?
控制平面必须位于所有节点池的版本窗口中。 有关升级控制平面或节点池的详细信息,请访问有关升级节点池的文档。
控制平面和节点池之间允许的版本差是多少?
版本偏差策略现在允许控制平面和代理池之间的版本差最多为 3 个版本。 AKS 从版本 1.28 开始遵循此偏差版本策略更改。
在群集升级期间,是否可以跳过多个 AKS 版本?
升级受支持的 AKS 群集时,不能跳过 Kubernetes 次要版本。 Kubernetes 控制平面版本倾斜策略不支持跳过次要版本。 例如,对于以下升级过程:
- 1.28.x ->1.29.x:允许。
- 1.27.x ->1.28.x:允许。
- 1.27.x ->1.29.x:允许。
若要从 1.27.x ->1.29.x 升级,请执行以下操作:
- 从 1.27.x ->1.28.x 升级。
- 从 1.28.x ->1.29.x 升级。
仅当从不受支持的版本升级回受支持的最低版本时,才能跳过多个版本。 例如,如果 1.27 是最低受支持的次要版本,可以从不受支持的 1.25.x 升级到受支持的 1.27.x。
从跳过两个或更多次要版本的不支持版本执行升级时,执行升级时不保证任何功能,并且不在服务级别协议和有限保修范围内。 运行不受支持的版本的群集具有将控制平面升级与节点池升级分离的灵活性。 但是,如果版本明显过期,建议重新创建群集。
是否可以在 30 天的支持期内创建一个新的 1.xx.x 群集?
否。 版本弃用/删除后,将无法使用该版本创建群集。 随着更改版的推出,你将开始看到旧版本从版本列表中删除。 从公告开始,此过程可能需要长达两周的时间,按区域逐步进行。
我使用的是刚弃用的版本,是否仍然可以添加新的节点池? 或者是否必须升级?
不是。 不能将已弃用版本的节点池添加到群集中。 无论节点池与控制平面之间的版本差如何,都允许创建不受支持的版本的节点池或将其升级到控制平面版本。 仅允许别名次要升级。
多久更新一次补丁?
补丁有两个月的最短生命周期。 若要及时了解新修补程序的发布,请参阅 AKS 发行说明。
后续步骤
有关如何升级群集的信息,请参阅: