Azure Kubernetes Service (AKS) 中支援的 Kubernetes 版本

Kubernetes 社群大約每隔三個月就會發行次要版本。 最近,Kubernetes 社群從 1.19 版開始,將每個版本的支援視窗從 9 個月增加到一年

次要版本版本包括新功能和改進功能。 修補程式版本更頻繁(有時每周),且適用於次要版本內的重要錯誤修正。 修補程式版本包括安全性弱點或主要 Bug 的修正。

Kubernetes 版本

Kubernetes 會針對每個版本使用標準 語意版本 控制版本控制配置:

[major].[minor].[patch]

Examples:
  1.17.7
  1.17.8

版本中的每個數位都表示與舊版的一般相容性:

  • 當不相容的 API 更新或回溯相容性可能會中斷時,主要版本 會變更。
  • 當進行與其他次要版本回溯相容的功能更新時,次要版本 會變更。
  • 修補版本 會在進行回溯相容 Bug 修正時變更。

目標是執行您所執行之次要版本的最新修補程式版本。 例如,如果您的生產叢集在 上1.17.71.17.8則為1.17系列可用的最新可用修補程式版本。 您應該儘快升級至 1.17.8 ,以確保您的叢集已完全修補和支援。

AKS Kubernetes 發行行事曆

在 AKS Kubernetes 發行行事曆上檢視即將推出的版本。 若要查看區域發行狀態和版本版本信息的即時更新,請流覽 AKS 發行狀態網頁。 若要深入瞭解發行狀態網頁,請參閱 AKS 發行追蹤器

注意

AKS 遵循 12 個月的正式推出 Kubernetes 版本支援。 若要深入瞭解 Kubernetes 版本控制的支持原則,請閱讀我們的 常見問題

如需過去的發行歷程記錄,請參閱 Kubernetes 歷程記錄

K8s 版本 上游版本 AKS 預覽 AKS GA 生命周期結束 平台支援
1.25 2022 年 8 月 2022年10月 2022 年 12 月 2024 年 1 月 14 日 直到 1.29 GA
1.26 2022 年 12 月 2023年2月 2023年4月 2024 年 3 月 直到 1.30 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 月 直到 1.33 GA

* 指出已針對長期支援指定版本

AKS Kubernetes 發行排程甘特圖

如果您想要以視覺化方式查看此資訊,以下是顯示所有目前版本的甘特圖:

Gantt chart showing the lifecycle of all Kubernetes versions currently active in AKS.

依版本重大變更的 AKS 元件

請注意下列重要變更,再升級至任何可用的次要版本:

Kubernetes 版本 AKS 受控附加元件 AKS 元件 OS 元件 重大變更 備註
1.25 Azure 原則 1.0.1
Metrics-Server 0.6.3
KEDA 2.9.3
開啟 Service Mesh 1.2.3
核心 DNS V1.9.4
重疊 VPA 0.11.0
Azure-Keyvault-SecretsProvider 1.4.1
應用程式閘道 輸入控制器 (AGIC) 1.5.3
Image Cleaner v1.1.1
Azure 工作負載身分識別 v1.0.0
MDC Defender 1.0.56
Azure Active Directory Pod Identity 1.8.13.6
GitOps 1.7.0
KMS 0.5.0
Cilium 1.12.8
CNI 1.4.44
叢集自動調整程式 1.8.5.3
OS 映射 Ubuntu 18.04 Cgroups V1
ContainerD 1.7
Azure Linux 2.0
Cgroups V1
ContainerD 1.6
Ubuntu 22.04 預設為 cgroupv2 和 Overlay VPA 0.13.0 CgroupsV2 - 如果您使用 JDK 部署 Java 應用程式,偏好使用 JDK 11.0.16 和更新版本或 JDK 15 和更新版本,其完全支援 cgroup v2
1.26 Azure 原則 1.3.0
Metrics-Server 0.6.3
KEDA 2.10.1
開啟 Service Mesh 1.2.3
核心 DNS V1.9.4
重疊 VPA 0.11.0
Azure-Keyvault-SecretsProvider 1.4.1
應用程式閘道 輸入控制器 (AGIC) 1.5.3
Image Cleaner v1.2.3
Azure 工作負載身分識別 v1.0.0
MDC Defender 1.0.56
Azure Active Directory Pod Identity 1.8.13.6
GitOps 1.7.0
KMS 0.5.0
azurefile-csi-driver 1.26.10
Cilium 1.12.8
CNI 1.4.44
叢集自動調整程式 1.8.5.3
OS 映射 Ubuntu 22.04 Cgroups V2
ContainerD 1.7
Azure Linux 2.0
Cgroups V1
ContainerD 1.6
azurefile-csi-driver 1.26.10
1.27 Azure 原則 1.3.0
azuredisk-csi 驅動程式 v1.28.5
azurefile-csi 驅動程序 v1.28.7
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
開啟 Service Mesh 1.2.3
核心 DNS V1.9.4
重疊 VPA 0.11.0
Azure-Keyvault-SecretsProvider 1.4.1
應用程式閘道 輸入控制器 (AGIC) 1.7.2
Image Cleaner v1.2.3
Azure 工作負載身分識別 v1.0.0
MDC Defender 1.0.56
Azure Active Directory Pod Identity 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 的 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 驅動程式 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認證狀態,我們將AKS FIPS節點從18.04切換至20.04,從1.27以後。
1.28 Azure 原則 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
開啟 Service Mesh 1.2.7
核心 DNS V1.9.4
重疊 VPA 0.13.0
Azure-Keyvault-SecretsProvider 1.4.1
應用程式閘道 輸入控制器 (AGIC) 1.7.2
Image Cleaner 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 Identity 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
ContainerD 1.7.5 for Linux 和 1.7.1 for Windows
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 驅動程序 v1.29.2
azuredisk-csi 驅動程序 v1.29.2
csi-livenessprobe v2.11.0
csi-node-driver-registrar v2.9.0
1.29 Azure 原則 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
開啟 Service Mesh 1.2.7
核心 DNS V1.9.4
重疊 VPA 0.13.0
Azure-Keyvault-SecretsProvider 1.4.1
應用程式閘道 輸入控制器 (AGIC) 1.7.2
Image Cleaner 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 Identity 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
ContainerD 1.7.5 for Linux 和 1.7.1 for Windows
Azure Linux 2.0
Cgroups V1
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

別名次要版本

注意

別名次要版本需要 Azure CLI 2.37 版或更新版本,以及 API 版本20220401或更新版本。 使用 az upgrade 安裝最新版的 CLI。

AKS 可讓您建立叢集,而不需要指定確切的修補程式版本。 當您建立叢集而不指定修補程式時,叢集會執行次要版本的最新 GA 修補程式。 例如,如果您使用 建立叢集1.21,則叢集會執行 1.21.7,這是 1.21 的最新 GA 修補程式版本。 如果您想要以相同的次要版本升級修補程式版本,請使用 自動升級

若要查看您正在使用的修補程式,請 az aks show --resource-group myResourceGroup --name myAKSCluster 執行 命令。 屬性 currentKubernetesVersion 會顯示整個 Kubernetes 版本。

{
 "apiServerAccessProfile": null,
  "autoScalerProfile": null,
  "autoUpgradeProfile": null,
  "azurePortalFqdn": "myaksclust-myresourcegroup.portal.hcp.eastus.azmk8s.io",
  "currentKubernetesVersion": "1.21.7",
}

Kubernetes 版本支援原則

AKS 會將正式推出 (GA) 版本定義為所有區域中可用的版本,並在所有 SLO 或 SLA 量測中啟用。 AKS 支援三個 GA 次要版本的 Kubernetes:

  • 在 AKS 中發行的最新 GA 次要版本(我們稱之為 N)。
  • 兩個先前的次要版本。
    • 每個支援的次要版本也最多支援兩個穩定修補程式。

AKS 可能也支援預覽版本,這些版本會明確加上標籤,並受限於 預覽條款及條件

AKS 只在一般支援的版本之後,提供一個 GA 次要版本的 Kubernetes 平台支援。 AKS 上 Kubernetes 版本的平台支援視窗稱為 「N-3」。 如需詳細資訊,請參閱 平臺支持原則

注意

AKS 使用涉及漸進式區域部署的安全部署做法。 這表示新版本或新版本可能需要10個工作天才能在所有區域中使用。

AKS 上 Kubernetes 版本的支援視窗稱為 “N-2”:(N (最新版本) - 2 (次要版本),而 “.letter” 代表修補程式版本。

例如,如果 AKS 目前引進 1.17.a ,則會提供下列版本的支援:

新的次要版本 支援的版本清單
1.17.a 1.17.a、1.17.b、1.16.c、1.16.d、1.15.e、1.15.f

引進新的次要版本時,支援的最舊次要版本和修補程式版本會被取代並移除。 例如,假設目前支援的版本清單是:

1.17.a
1.17.b
1.16.c
1.16.d
1.15.e
1.15.f

當 AKS 發行 1.18.*時,所有 1.15.* 版本都會在 30 天后退出支援。

AKS 也支援指定次要版本的最多兩 個修補程式 版本。 例如,假設有下列支援的版本:

Current Supported Version List
------------------------------
1.17.8, 1.17.7, 1.16.10, 1.16.9

如果 AKS 版本 1.17.91.16.11,則最舊的修補程式版本已被取代並移除,且支援的版本清單會變成:

New Supported Version List
----------------------
1.17.*9*, 1.17.*8*, 1.16.*11*, 1.16.*10*

平臺支持原則

平臺支持原則是特定不支援 Kubernetes 版本的縮減支持計劃。 在平臺支持期間,客戶只會從 Microsoft 收到 AKS/Azure 平台相關問題的支援。 不支援與 Kubernetes 功能和元件相關的任何問題。

平臺支持原則適用於 n-3 版本中的叢集(其中 n 是最新支援的 AKS GA 次要版本),然後叢集捨棄至 n-4。 例如,當 v1.28 是最新的 GA 版本時,Kubernetes v1.25 會被視為平台支援。 不過,在 v1.29 GA 版本期間,v1.25 會接著自動升級至 v1.26。 如果您是執行 n-2 版本的 ,當它變成 n-3 時,它也會變成已被取代,而您進入平臺支持原則。

AKS 依賴 Kubernetes 的版本和修補程式,這是僅支援三個次要版本的滑動視窗的開放原始碼專案。 AKS 只能保證 在上游服務這些版本時的完整支援 。 由於上游不再產生修補程式,AKS 可能會讓這些版本未修補或派生。 由於這項限制,平臺支援不支援依賴 Kubernetes 上游的任何專案。

下表概述與平台支援相比,社群支援的支持指導方針。

支持類別 社群支援 (N-2) 平台支援 (N-3)
從 N-3 升級至支援的版本 支援 支援
平臺 (Azure) 可用性 支援 支援
節點集區調整 支援 支援
VM 可用性 支援 支援
儲存體、網路相關問題 支援 除了錯誤修正和已淘汰元件之外,支援
啟動/停止 支援 支援
輪換憑證 支援 支援
基礎結構 SLA 支援 支援
控制平面 SLA 支援 支援
平臺 (AKS) SLA 支援 不支援
Kubernetes 元件 (包括附加元件) 支援 不支援
元件更新 支援 不支援
元件 Hotfix 支援 不支援
套用錯誤修正 支援 不支援
套用安全性修補程式 支援 不支援
Kubernetes API 支援 支援 不支援
叢集或節點集區建立 支援 不支援
節點集區快照集 支援 不支援
節點映像升級 支援 不支援

注意

下表可能會變更並概述常見的支援案例。 N-3 不支援任何與 Kubernetes 功能和元件相關的案例。 如需進一步的支援,請參閱 AKS 的支援和疑難解答。

支援的 kubectl 版本

您可以針對 kube-apiserver 版本使用一個較舊或較kubectl新的次要版本,與 kubectlKubernetes 支持原則一致。

例如,如果您的 kube-apiserver 位於 1.17,則可以使用該 kube-apiserver 使用 1.161.18 kubectl 版。

若要安裝或更新 kubectl 至最新版本,請執行:

az aks install-cli

長期支援 (LTS)

AKS 提供一年社群支援和一年的長期支援(LTS),以支援公用存放庫中社群上游的埠安全性修正。 我們的上游 LTS 工作組會為社群提供較長的支援視窗而付出的努力。

如需 LTS 的詳細資訊,請參閱 Azure Kubernetes Service 的長期支援(AKS)。

發行和淘汰程式

您可以在 AKS Kubernetes 發行行事曆參考即將推出的版本版本和淘汰專案。

針對 Kubernetes 的新 次要 版本:

  • AKS 會在移除前至少 30 天,發佈具有新版本發行計劃日期的公告,以及 AKS 版本資訊上個別的舊版本淘汰
  • AKS 會使用 Azure Advisor 來提醒您,如果新版本可能會因為已被取代的 API 而造成叢集中的問題。 如果您不支援,Azure Advisor 也會提醒您
  • AKS 會 發佈服務健康情況通知 給具有 AKS 和入口網站存取權的所有使用者,並使用計劃的版本移除日期傳送電子郵件給訂用帳戶管理員。

    注意

    若要找出您的訂用帳戶管理員或變更其身分,請參閱 管理 Azure 訂用帳戶

  • 您有 30 天 從版本移除升級至支援的次要版本版本,以繼續接收支援。

針對 Kubernetes 的新 修補程式 版本:

  • 由於修補程式版本的緊急本質,因此可以在服務中推出它們。 一旦可用,修補程式的最小生命週期為兩個月。
  • 一般而言,AKS 不會廣泛傳達新修補程式版本的發行。 不過,AKS 會持續監視及驗證可用的 CVE 修補程式,以及時支援 AKS。 如果找到重要修補程式或需要用戶動作,AKS 會通知您升級至新可用的修補程式。
  • 您有 30 天的時間 從 AKS 移除修補程式版本,以升級至支援的修補程式並繼續接收支援。 不過,一旦版本已被取代/移除,您將 無法再建立叢集或節點集區。

支援的版本原則例外狀況

AKS 保留新增或移除具有一或多個重大生產影響 Bug 或安全性問題之新/現有版本的權利,而不需事先通知。

視 Bug 或安全性問題的嚴重性而定,可能會略過特定修補程式版本或加速推出。

Azure 入口網站和 CLI 版本

當您使用 Azure 入口網站、Azure CLI、Azure PowerShell 部署 AKS 叢集時,叢集預設為 N-1 次要版本和最新的修補程式。 例如,如果 AKS 支援 1.17.a、1.17.b、1.16.c1.16.d1.15.e1.15.f,則選取的預設版本為 1.16.c。

若要瞭解訂用帳戶和區域目前可用的版本,請使用 az aks get-versions 命令。 下列範例列出 EastUS 區域的可用 Kubernetes 版本

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

常見問題集

Microsoft 如何通知我新的 Kubernetes 版本?

AKS 小組會在我們的檔、 GitHub 和電子郵件中發佈具有新 Kubernetes 版本計劃日期的公告,並傳送電子郵件給擁有即將脫離支援的叢集的訂用帳戶管理員。 AKS 也會使用 Azure Advisor 在 Azure 入口網站 內發出警示,如果您不支援,並通知您已淘汰的 API,可能會影響您的應用程式或開發程式。

我應該預期升級 Kubernetes 版本以維持支持的頻率?

從 Kubernetes 1.19 開始,開放原始碼 社群已將支持擴充到一年。 AKS 認可以啟用修補程式,並支援符合上游承諾。 針對 1.19 和更新版本的 AKS 叢集,您至少可以升級一次,以維持支援的版本。

當您使用不支援的次要版本升級 Kubernetes 叢集時,會發生什麼事?

如果您使用的是 n-3 版或更舊版本,這表示您不在支援之外,並會要求您升級。 當您從 n-3 版升級至 n-2 版成功時,您會回到我們的支持原則內。 例如:

  • 如果最舊的支援 AKS 版本是 1.15.a ,且您是在 1.14.b 或較舊版本,則不在支援之外。
  • 當您成功從 1.14.b 升級至 1.15.a 或更新版本時,您會回到我們的支持原則內。

不支持降級。

「支援外部」是什麼意思?

「支援外部」表示:

  • 您執行的版本不在支援的版本清單中。
  • 除非您在版本淘汰后的 30 天寬限期內,否則系統會要求您在要求支援時將叢集升級為支援的版本。

此外,AKS 不會對支援的版本清單以外的叢集進行任何運行時間或其他保證。

當您使用不支援的次要版本調整 Kubernetes 叢集時,會發生什麼事?

針對 AKS 不支援的次要版本,相應縮小或相應放大應該會繼續運作。 由於服務質量沒有保證,因此建議您升級以將叢集重新納入支援。

您可以永遠留在 Kubernetes 版本嗎?

如果叢集已不支援三個以上的次要版本,且發現有安全性風險,Azure 會主動連絡您升級叢集。 如果您未採取進一步動作,Azure 會保留代表您自動升級叢集的權利。

如果您使用不支援的次要版本調整 Kubernetes 叢集,會發生什麼事?

針對 AKS 不支援的次要版本,相應縮小或相應放大應該會繼續運作。 由於服務質量沒有保證,因此建議您升級以將叢集重新納入支援。

如果節點集區不在其中一個支援的 AKS 版本中,控制平面支援哪個版本?

控制平面必須位於所有節點集區版本的視窗中。 如需升級控制平面或節點集區的詳細資訊,請瀏覽升級節點集區的檔

我可以在叢集升級期間略過多個 AKS 版本嗎?

當您升級支援的 AKS 叢集時,無法略過 Kubernetes 次要版本。 Kubernetes 控制平面 版本扭曲原則 不支援略過次要版本。 例如,在下列兩者之間升級:

  • 1.12.x ->1.13.x:允許。
  • 1.13.x ->1.14.x:允許。
  • 1.12.x ->1.14.x:不允許。

若要從 1.12.x ->1.14.x 升級:

  1. 1.12.x ->1.13.x 升級。
  2. 1.13.x ->1.14.x 升級。

只有在從不支援的版本升級回最低支援的版本時,才能略過多個版本。 例如,如果 1.15 是支援的次要版本,您可以從不支援的 1.10.x 升級至支援的 1.15.x

略過兩個或多個次要版本的不支援版本 執行升級時,升級不會保證功能,而且會排除在服務等級協定和有限擔保之外。 如果您的版本明顯過期,建議您重新建立叢集。

我可以在 30 天支援期間建立新的 1.xx.x 叢集嗎?

否。 一旦版本已被取代/移除,您就無法使用該版本建立叢集。 隨著變更推出,您將開始看到從您的版本清單中移除的舊版本。 此程式可能需要長達兩周的時間,依區域逐漸公告。

我目前處於即將淘汰的版本,我仍然可以新增新的節點集區嗎? 還是必須升級?

否。 您無法將已取代版本的節點集區新增至叢集。 您可以新增新版本的節點集區,但可能需要先更新控制平面。

您更新修補程式的頻率為何?

修補程式的最小生命週期為兩個月。 若要在發行新的修補程式時保持最新狀態,請遵循 AKS 版本資訊

下一步

如需如何升級叢集的資訊,請參閱 升級 Azure Kubernetes Service (AKS) 叢集