Azure Kubernetes 服务 (AKS) 中支持的 Kubernetes 版本Supported Kubernetes versions in Azure Kubernetes Service (AKS)

Kubernetes 社区大约会每隔三个月发布次要版本。The Kubernetes community releases minor versions roughly every three months. 这些版本包括新增功能和改进。These releases include new features and improvements. 修补程序版本更为频繁(有时会每周发布),并且仅用于次要版本中的关键 Bug 修复。Patch releases are more frequent (sometimes weekly) and are only intended for critical bug fixes in a minor version. 这些修补程序版本包括针对影响大量客户以及在生产中基于 Kubernetes 运行的产品的安全漏洞或重大 Bug 的修复。These patch releases include fixes for security vulnerabilities or major bugs impacting a large number of customers and products running in production based on Kubernetes.

AKS 旨在完成上游版本发布后的 30 天内,根据该版本的稳定性认证和发布新的 Kubernetes 版本。AKS aims to certify and release new Kubernetes versions within 30 days of an upstream release, subject to the stability of the release.

Kubernetes 版本Kubernetes versions

Kubernetes 使用标准的语义化版本控制方案。Kubernetes uses the standard Semantic Versioning versioning scheme. 这意味着,Kubernetes 的每个版本都遵循此编号方案:This means that each version of Kubernetes follows this numbering scheme:

[major].[minor].[patch]

Example:
  1.12.14
  1.12.15

版本中的每个编写表示与前一版本的一般兼容性:Each number in the version indicates general compatibility with the previous version:

  • 如果发生不兼容的 API 更改或者后向兼容性受到破坏,主要版本将会更改。Major versions change when incompatible API changes or backwards compatibility may be broken.
  • 如果所做的功能更改与其他次要版本后向兼容,则次要版本将会更改。Minor versions change when functionality changes are made that are backwards compatible to the other minor releases.
  • 做出后向兼容的 Bug 修复时,修补程序版本将会更改。Patch versions change when backwards-compatible bug fixes are made.

用户应尽量运行次要版本的最新修补程序版本,例如,如果你的生产群集使用 1.12.14,而 1.12 系列可用的最新修补程序版本为 1.12.15,则你应该尽快升级到 1.12.15,以确保群集得到全面的修补并受支持。Users should aim to run the latest patch release of the minor version they are running, for example if your production cluster is on 1.12.14 and 1.12.15 is the latest available patch version available for the 1.12 series, you should upgrade to 1.12.15 as soon as you are able to ensure your cluster is fully patched and supported.

Kubernetes 版本支持策略Kubernetes version support policy

AKS 支持三个 Kubernetes 次要版本:AKS supports three minor versions of Kubernetes:

  • AKS 中发布的当前次要版本 (N)The current minor version that is released in AKS (N)
  • 以前的两个次要版本。Two previous minor versions. 每个受支持的次要版本还支持两个稳定的修补程序。Each supported minor version also supports two stable patches.

这称为“N-2”:(N (最新版本) -2 (次要版本))。This is known as "N-2": (N (Latest release) - 2 (minor versions)).

例如,如果 AKS 当前引入了 1.15.a,则提供以下版本的支持:For example, if AKS introduces 1.15.a today, support is provided for the following versions:

新的次要版本New minor version 支持的版本列表Supported Version List
1.15.a1.15.a 1.15.a、1.15.b、1.14.c、1.14.d、1.13.e、1.13.f1.15.a, 1.15.b, 1.14.c, 1.14.d, 1.13.e, 1.13.f

其中,“.字母”代表修补程序版本。Where ".letter" is representative of patch versions.

有关如何传达版本更改和预期后果的详细信息,请参阅下面的“信息传达”。For details on communications regarding version changes and expectations, see "Communications" below.

引入新的次要版本后,支持的最早次要版本和修补程序版本将被弃用并删除。When a new minor version is introduced, the oldest minor version and patch releases supported are deprecated and removed. 例如,如果当前支持的版本列表为:For example, if the current supported version list is:

1.15.a
1.15.b
1.14.c
1.14.d
1.13.e
1.13.f

并且 AKS 发布了 1.16. ,这意味着 1.13.And AKS releases 1.16., this means that the 1.13. 版本(所有 1.13 版本)将被删除并且不再受支持。versions (all 1.13 versions) will be removed and are out of support.

备注

请注意,如果客户运行不受支持的 Kubernetes 版本,则在请求群集支持时,系统将要求他们升级。Please note, that if customers are running an unsupported Kubernetes version, they will be asked to upgrade when requesting support for the cluster. 运行不受支持 Kubernetes 版本的群集未涵盖在 AKS 支持策略中。Clusters running unsupported Kubernetes releases are not covered by the AKS support policies.

除了上述次要版本以外,AKS 还支持给定次要版本的两个最新修补程序版本。In addition to the above on minor versions, AKS supports the two latest patch releases of a given minor version. 例如,假设支持的版本如下:For example, given the following supported versions:

Current Supported Version List
------------------------------
1.15.2, 1.15.1, 1.14.5, 1.14.4

如果上游 Kubernetes 发布了 1.15.3 和 1.14.6,而 AKS 发布了这些修补程序版本,则最早的修补程序版本将被弃用并删除,支持的版本列表现为:If upstream Kubernetes released 1.15.3 and 1.14.6 and AKS releases those patch versions, the oldest patch versions are deprecated and removed, and the supported version list becomes:

New Supported Version List
----------------------
1.15.*3*, 1.15.*2*, 1.14.*6*, 1.14.*5*

信息传达Communications

  • 对于 Kubernetes 的新次要版本For new minor versions of Kubernetes
    • 在发布新版本以及删除版本之前,我们会公开通知所有用户。All users are notified publicly of the new version and what version will be removed.
    • 在发布新修补程序版本的同时,会删除最早的修补程序版本。When a new patch version is released, the oldest patch release is removed at the same time.
    • Azure 支持会为客户提供 30 天的时间(自公告之日起)升级到受支持的次要版本。Azure support provides customers 30 days from the public notification date to upgrade to a supported minor version release. 30 天过后,你需要更新次要版本才能继续获得支持。Once 30 days have passed, you are required to update your minor version to continue receiving support.
  • 对于 Kubernetes 的新修补程序版本For new patch versions of Kubernetes
    • 在发布新的修补程序版本以及升级到最新修补程序版本之前,我们会通知所有用户。All users are notified of the new patch version being released and to upgrade to the latest patch release.
    • 删除较旧的修补程序版本后,Azure 支持会为客户提供 30 天的时间升级到受支持的修补程序版本。Azure support provides customers 30 days to upgrade to a supported patch release, after removal of an older patch version. 30 天过后,你需要更新修补程序版本才能继续获得支持。Once 30 days have passed, you are required to update your patch version to continue receiving support.

AKS 将“发布版本”定义为正式版本,所有 SLO/服务质量衡量方案都采用此术语,并且在所有区域都是如此。AKS defines a "released version" as the generally available versions, enabled in all SLO / Quality of Service measurements and available in all regions. AKS 可能还支持预览版本,这些版本带有明确的标签,使用时需遵守预览版条款和条件。AKS may also support preview versions which are explicitly labeled and subject to Preview terms and conditions.

AKS 更改的通知通道Notification channels for AKS changes

AKS 定期发布服务更新,其中汇总了新的 Kubernetes 版本、服务更改,以及已在 GitHub 上发布的针对服务的组件更新。AKS publishes regular service updates which summarize new Kubernetes versions, service changes, and component updates that have been released on the service on GitHub.

这些更改作为常规维护的一部分推出给所有客户,并作为托管服务的一部分提供。其中的某些更改需要显式升级,而其他一些更改不需要采取任何措施。These changes are rolled to all customers as part of regular maintenance that is offered as part of the managed service, some require explicit upgrades while others require no action.

还会通过以下方式发送通知:Notifications are also sent via:

支持的版本策略例外Supported Versions Policy Exceptions

AKS 有权在不事先发出通行的情况下添加新的版本,或者删除已确定存在一个或多个影响生产的严重 Bug 或安全问题的现有版本。AKS reserves the right to add or remove new/existing versions that have been identified to have one or more critical production impacting bugs or security issues without advance notice.

特定的修补程序版本可能会跳过发布或者加速推出,具体取决于 Bug 或安全问题的严重性。Specific patch releases may be skipped, or rollout accelerated depending on the severity of the bug or security issue.

Azure 门户和 CLI 默认版本Azure portal and CLI default versions

在门户中或使用 Azure CLI 部署 AKS 群集时,群集默认为 N-1 次要版本和最新修补程序。When you deploy an AKS cluster in the portal or with the Azure CLI, the cluster is defaulted to the N-1 minor version and latest patch. 例如,如果 AKS 支持 1.15.a1.15.b1.14.c1.14.d1.13.e1.13.f,则选择的默认版本为 1.14.cFor example, if AKS supports 1.15.a, 1.15.b, 1.14.c, 1.14.d, 1.13.e, and 1.13.f, the default version selected is 1.14.c.

AKS 默认选择 N-1,以便为客户提供已知、稳定的修补版本。AKS chooses the default of N-1 to provide customers a known, stable, and patched version by default.

列出当前支持的版本List currently supported versions

若要了解你的订阅和区域当前可用的版本,请使用 az aks get-versions 命令。To find out what versions are currently available for your subscription and region, use the az aks get-versions command. 以下示例列出了 ChinaEast2 区域可用的 Kubernetes 版本:The following example lists the available Kubernetes versions for the ChinaEast2 region:

az aks get-versions --location chinaeast2 --output table

常见问题FAQ

客户升级的 Kubernetes 群集具有不受支持的次要版本时,会发生什么情况?What happens when a customer upgrades a Kubernetes cluster with a minor version that is not supported?

如果你当前使用的是 n-3 版本,则不再可接受支持,系统会要求你升级。If you are on the n-3 version, you are outside of support and will be asked to upgrade. 如果从版本 n-3 成功升级到了 n-2,则你现在涵盖在我们的支持策略中。If your upgrade from version n-3 to n-2 succeeds, you are now within our support policies. 例如:For example:

  • 如果支持的最低 AKS 版本为 1.13.a,而你使用的版本是 1.12.b 或更低,则你无法接受支持。If the oldest supported AKS version is are 1.13.a and you are on 1.12.b or older, you are outside of support.
  • 如果从 1.12.b 升级到 1.13.a 或更高版本成功,则你将重新涵盖在我们的支持策略中。If the upgrade from 1.12.b to 1.13.a or higher succeeds, you are back within our support policies.

不支持升级到早于 N-2 支持窗口的版本。Upgrades to versions older than the supported window of N-2 are not supported. 在这种情况下,我们会建议客户创建新的 AKS 群集,并使用支持窗口中的版本重新部署其工作负荷。In such cases, we recommend customers create new AKS clusters and redeploy their workloads with versions in the supported window.

“不在支持范围内”是什么意思What does 'Outside of Support' mean

“停止支持”是指运行的版本不在支持的版本列表内,当你请求支持时,系统会要求你将群集升级到支持的版本。'Outside of Support' means that the version you are running is outside of the supported versions list, and you will be asked to upgrade the cluster to a supported version when requesting support. 此外,对于受支持版本列表以外的群集,AKS 不会在正常运行时间或其他方面做出任何保证。Additionally, AKS does not make any runtime or other guarantees for clusters outside of the supported versions list.

客户缩放的 Kubernetes 群集具有不受支持的次要版本时,会发生什么情况?What happens when a customer scales a Kubernetes cluster with a minor version that is not supported?

对于 AKS 不支持的次要版本,缩减或扩展可继续进行,但我们强烈建议升级,使群集重新可接受支持。For minor versions not supported by AKS, scaling in or out should continue to work but it is highly recommended to upgrade to bring your cluster back into support.

客户可以永久保留 Kubernetes 版本吗?Can a customer stay on a Kubernetes version forever?

如果群集有 3 个以上的次要版本不受支持,并被发现存在安全风险,则 Azure 会联系你主动升级群集。If a cluster has been out of support for more than 3 minor versions and has been found to carry security risks, Azure contacts you to proactively upgrade your cluster. 如果你不采取进一步的措施,Azure 将保留代表你强制升级群集的权利。If you do not take further action, Azure reserves the right to force upgrade your cluster on your behalf.

如果节点池不在某个受支持的 AKS 版本中,控制平面支持哪个版本?What version does the control plane support if the node pool is not in one of the supported AKS versions?

控制平面必须位于所有节点池的版本窗口中。The control plane must be within a window of versions from all node pools. 有关升级控制平面或节点池的详细信息,请访问有关升级节点池的文档。For details on upgrading the control plane or node pools, visit documentation on upgrading node pools.

后续步骤Next steps

有关如何升级群集的信息,请参阅升级 Azure Kubernetes 服务 (AKS) 群集For information on how to upgrade your cluster, see Upgrade an Azure Kubernetes Service (AKS) cluster.