Azure 運算子連接點 Kubernetes 服務中支援的 Kubernetes 版本

本文件提供運算子連接點 Kubernetes 服務所使用的版本設定結構描述概觀,包括支援的 Kubernetes 版本。 其說明主要、次要和修補檔版本之間的差異,並提供升級 Kubernetes 版本以及升級體驗的指引。 本文件也涵蓋每個 Kubernetes 次要版本的版本支援生命週期和生命週期結束 (EOL)。

Kubernetes 社群大約每隔三個月就會發行次要版本。 從 1.19 版開始,Kubernetes 社群已將每個版本的支援時段從九個月增加到一年

次要版本包含新功能和改善。 修補檔版本會更頻繁地發行 (有時每週),且適用於次要版本中的重大 Bug 修正。 修補檔版本包含安全性弱點或主要 Bug 的修正。

Kubernetes 版本

Kubernetes 針對每個版本使用標準語意化版本控制系統版本設定配置:

[major].[minor].[patch]

Examples:
  1.24.7
  1.25.4

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

  • API 引進重大變更時,主要版本號碼會有所變更
  • 當進行的功能更新回溯相容於其他次要版本號碼時,次要版本會有所變更。
  • 當進行回溯相容的 Bug 修正時,修補檔版本號碼會有所變更。

強烈建議您隨時掌握最新的可用修補檔。 例如,如果您的生產叢集位於 1.25.4 上,且 1.25.6 是適用於 1.25 系列的最新修補檔版本。 您應該盡快升級至 1.25.6,以確保您的叢集已完全修補並受到支援。 如需升級叢集的進一步詳細資料,請參閱升級 Kubernetes 版本文件。

連接點 Kubernetes 發行版本行事曆

在連接點 Kube 版本行事曆上檢視即將推出的版本。

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

K8s 版本 連接點正式發行 生命週期結束 擴充可用性
1.25 2023 年 6 月 2023 年 12 月 直到 2024 年 10 月底
1.26 2023 年 9 月 2024 年 3 月 直到 2025 年 3 月底
1.27* 2023 年 9 月 2024 年 7 月,LTS 直到 2025 年 7 月 NA
1.28 2023 年 11 月 2024 年 10 月 直到 2025 年 10 月底
1.29 2024 年 8 月 2025年2月 直到 2026 年 2 月底
1.30* 2024 年 10 月 2025年7月,LTS至2026年7月 NA

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

連接點 Kubernetes 服務版本元件

運算子連接點 Kubernetes 服務版本是由合併成單一表示法的兩個離散元件所組成:

  • Kubernetes 版本。 例如,1.25.4 是您在運算子連接點中部署的 Kubernetes 版本。 這些套件是由 Azure AKS 提供,包括運算子連接點支援的所有修補檔版本。 如需 Azure AKS 版本的詳細資訊,請參閱 AKS 支援的 Kubernetes 版本
  • 版本套件組合,可將運算子連接點 Kubernetes 叢集中節點所使用的功能 (附加元件) 和作業系統映像封裝為單一數位。 例如 2。 這些值的組合會在 API 中表示為單一 kubernetesVersion。 例如,1.25.4-2 或支援的「v」表示法:v1.25.4-2

版本套件組合

藉由擴充 Kubernetes 版本以包含修補檔版本的次要值,版本套件組合運算子連接點 Kubernetes 服務可以考慮將部署修改為包含額外作業系統相關更新的情況。 這類更新可能包括,但不限於:更新的作業系統映像、功能修補檔版本 (附加元件) 等等。 版本套件組合一律與相同修補檔版本內的舊版套件組合回溯相容,例如,1.25.4-2 與 1.25.4-1 回溯相容。

已部署運算子連接點 Kubernetes 叢集組態的變更應該僅套用在 Kubernetes 次要版本升級內,而不是在修補檔版本升級期間套用。 可在次要版本升級期間套用的組態變更範例包括:

  • 將 kube-proxy 的組態從使用 iptables 變更為 ipvs
  • 將 CNI 從某個產品變更為另一個產品

當我們遵循這些原則時,更容易預測及管理運算子連接點 Kubernetes 服務所提供的不同 Kubernetes 叢集版本之間移動的程序。

我們可以輕鬆地從一個 Kubernetes 版本中的任何小型更新升級至下一個版本中的任何小型更新,為您提供彈性。 例如,無論中繼 1.24.24.2-x 版本是否存在,都允許從 1.24.1-x 升級至 1.25.4-x。

元件版本和重大變更

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

Kubernetes 版本 版本套件組合 元件 OS 元件 重大變更 備註
1.29.6 1 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.29.4 1 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.28.11 1 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.28.9 2 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.28.9 1 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更 擴充可用的修補程式:1.28.0-5
1.27.9 2 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.27.9 1 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.27.3 6 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.27.3 5 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更 擴充可用的修補程式:1.27.1-8
1.26.12 2 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.26.12 1 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.26.6 6 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.26.6 5 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更 擴充可用的修補程式:1.26.3-8
1.25.11 6 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.15
sriov-dp v3.12.0-86
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.25.11 5 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.25.11 4 Calico v3.27.2
metrics-server v0.6.3
Multus v3.8.0
azure-arc-servers v1.0.0
CoreDNS v1.9.3
etcd v3.5.6-5
sriov-dp v3.10.0-60
Csi-nfs v4.6.0
Azure Linux 2.0 無重大變更
1.25.6 8 Calico v3.27.4
metrics-server v0.7.1
Multus v4.0.2
azure-arc-servers v1.1.0
CoreDNS v1.9.4-Hotfix
etcd v3.5.14
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更
1.25.6 7 Calico v3.27.3
metrics-server v0.7.1
Multus v4.0.0
azure-arc-servers v1.1.0
CoreDNS v1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs v4.7.0
csi-volume v0.1.0
Azure Linux 2.0 無重大變更 擴充可用的修補程式:1.25.4-6

版本套件組合功能

功能 版本套件組合 備註
磁碟區協調流程連線已加密 TLS 從 1.28.9-1、1.28.0-5、1.27.9-1、1.27.3-5、1.26.12-1、1.26.6-5、1.25.11-5 和 1.25.6-7
叢集節點已啟用 Azure Arc 從 1.25.6-4 開始,1.25.11-2、1.26.3-4、1.26.6-2、1.27.1-4、1.27.3-2 和 1.28.0-2

升級 Kubernetes 版本

如需升級叢集的詳細資訊,請參閱升級 Azure 運算子連接點 Kubernetes 服務叢集

Kubernetes 版本支援原則

運算子連接點支援 Kubernetes 的三個次要版本:

  • 在運算子連接點中發行的最新正式發行次要版本 (我們稱之為 N)。
  • 前兩個次要版本。
    • 每個支援的次要版本最多也支援兩個最新的穩定修補檔,而先前的修補檔在次要版本的存留期處於延伸可用性原則之下。

運算子連接點 Kubernetes 服務會針對每個發行的 Kubernetes 次要版本,提供標準化的支持持續時間。 版本會遵循兩個不同的時間表,以反映:

  • 支援持續時間 – 主動維護版本的時間長度。 在支援期間結束時,版本為「生命週期結束」。
  • 擴充可用性 – 在「生命週期結束」之後,可以選取版本進行部署的時間長度。

在運算子連接點上 Kube 版本的支援時段稱為「N-2」:(N (最新發行) - 2 (次要版本))而「.字母」代表修補檔版本。

例如,如果運算子連接點於今天引進 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

運算子連接點發行 1.18.* 版時,所有 1.15.* 版本都會退出支援。

支援時間表

運算子連接點 Kubernetes 服務通常會從次要版本的初始 AKS 正式發行版本提供 12 個月的支援。 此時間表遵循 Azure AKS 的時間,其中包含宣告的長期支援 1.27 版。

支援的版本:

  • 可以部署為新的運算子連接點 Kubernetes 叢集。
  • 可以是從舊版升級的目標。 受限於一般升級路徑。
  • 次要版本可能會有額外的修補檔或版本套件組合。

注意

在特殊情況下,如果識別出弱點或安全性考量,連接點 Kubernetes 服務支援可能會提早或立即終止。 Microsoft 會在發生此問題時主動通知客戶,並努力減輕任何潛在問題。

生命週期結束 (EOL)

生命週期結束 (EOL) 表示不會再產生修補檔或版本套件組合。 您設定的叢集可能已無法再升級,因為最新的支援版本已無法再提供使用。 在此事件中,升級的唯一方式是使用支援的較新版本,完全重新建立連接點 Kubernetes 叢集。 不支援的升級至 Extended availability 可能會用來返回支援的版本。

擴充可用性原則

在不支援的 Kubernetes 版本 (也就是 EOL Kubernetes 版本) 的延長可用性期間,使用者不會收到安全性修補檔或 Bug 修正。 如需支援類別的詳細資訊,請參閱下表。

支援類別 N-2 到 N 擴充可用性
從 N-3 升級至支援的版本 支援 支援
節點集區調整 支援 支援
叢集或節點集區建立 支援 支援
Kube 元件 (包括附加元件) 支援 不支援
元件更新 支援 不支援
元件 Hotfix 支援 不支援
套用 Kubernetes Bug 修正 支援 不支援
套用 Kubernetes 安全性修補檔 支援 不支援
節點映像安全性修補檔 支援 不支援

注意

運算子連接點需要 Kubernetes 的版本和修補檔,這是僅對於三個次要版本的滑動視窗提供支援的開放原始碼專案。 運算子連接點只能保證在上游維護這些版本時,才提供完整支援。 由於上游不再產生修補檔,因此運算子連接點可能會讓這些版本未修補或派生。 由於這項限制,擴充可用性不支援需要 kubernetes 上游的任何項目。

已放棄的 Nexus Kubernetes 叢集

在延長可用性期間結束時,K8s 版本會從 Nexus 完全移除。 此時,任何以此 K8s 版本為基礎的現有 Nexus Kubernetes 叢集都會遭到放棄。 已放棄叢集上唯一支援的作業是刪除。 重要的是,一旦放棄叢集,升級至更新的 K8s 版本將無法運作。

支援的 kubectl 版本

根據 Kubernetes 的 kubectl 支援原則,您可以使用比 kube-apiserver 版本低或高一個次要版本的 kubectl

例如,如果您的 kube-apiserver1.17,則您可以搭配該 kube-apiserver 使用 1.161.18 版的 kubectl

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

az aks install-cli

長期支援 (LTS)

Kubernetes 社群大約每四個月發行一個新的次要版本,而且每個版本都有一年的支援時段。 在 Azure Kubernetes Service (AKS) 中,此支援時段稱為「社群支援」。

AKS 支援在此社群支援時段內的 Kubernetes 版本,以推送來自社群版本的錯誤 (bug) 修正和安全性更新。

雖然透過此版本頻率提供的創新可為您帶來巨大的好處,但它會挑戰您跟上 Kubernetes 版本的最新狀態,根據您必須維護的叢集數目,這可能會更加困難。

支援類型

大約一年後,Kubernetes 版本會結束社群支援,且您的 AKS 叢集現在有問題修正,且安全性更新無法使用。

AKS 提供一年社群支援和一年的長期支援 (LTS),以支援公用存放庫中社群上游的連接埠安全性修正。 我們的上游 LTS 工作群組致力於支援社群,為客戶提供較長的支援時段。

LTS 旨在給您一段較長的時間,來規劃和測試從所指定 Kubernetes 版本正式發行算起的兩年期間的升級。

社群支援 長期支援
使用時機 當您可以跟上上游 Kubernetes 版本時 您的應用程式與較新 Kubernetes 版本中所引進變更不相容的案例,且由於技術限制或其他因素,而無法轉換至持續發行週期
支援版本 三個 GA 次要版本 一個 Kubernetes 版本 (目前 1.27) 兩年

重要

Kubernetes 1.27 版是運算子連接點 Kubernetes 服務上第一個支援的 Kubernetes LTS 版本。 1.27 之後的下一個 LTS 版本是 1.30,將於 2024 年 10 月開始其 LTS 支援。

從 LTS 移轉至下一個 LTS 版本

Nexus Kubernetes 叢集不支援 LTS 版本之間的直接升級。 若要從一個 LTS 版本轉換至下一個版本,您有兩個選項:建立具有所需 LTS 版本的新叢集,並將工作負載移至這個新叢集,或先透過支援的版本執行一系列中繼升級,再到達下一個 LTS 版本。

常見問題集

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

本文件會定期更新為新 Kubernetes 版本的已規劃日期。

預期要多頻繁地升級 Kubernetes 版本才能保持受到支援?

從 Kubernetes 1.19 開始,開放原始碼社群已將支援延長為一年。 運算子連接點致力於推出與上游承諾用量相符的修補檔和支援。 若是 1.19 和更新版本上的運算子連接點叢集,您將能夠至少一年升級一次,以維持在支援的版本上。

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

如果您使用的是 N-3 版本或更舊版本,則您就不在支援範圍內。 當您從 N-3 版升級至 N-2 版時,隨即會回到我們的支援範圍內。 例如:

  • 如果所支援的 AKS 最舊版本是 1.25.x,且您目前使用 1.24.x 或更舊版本,則您就不在支援範圍內。
  • 成功從 1.24.x 升級至 1.25.x 或更新版本,可讓您回到我們的支援範圍內。
  • 不支援「略過層級升級」。 若要從 1.23.x 升級至 1.25.x,您必須先升級至 1.24.x,然後再升級至 1.25.x

不支援降級。

如果不升級我的叢集會發生什麼事?

如果您未升級叢集,則會繼續收到您所執行的 Kubernetes 版本支援,直到支援期間結束為止。 在此之後,您將不會再收到叢集的支援。 您必須將叢集升級至支援的版本後,才能繼續接收支援。

如果我在擴充可用性期間結束前並未升級叢集,會發生什麼情況?

如果您未在擴充可用性期間結束之前升級叢集,則將無法再將叢集升級至支援的版本或向外延展代理程式集區。 您必須使用支援的版本重新建立叢集後,才能繼續接收支援。

「不在支援範圍內」是什麼意思?

「不在支援範圍內」是指:

  • 您正在執行的版本不在支援的版本清單中。
  • 要求支援時,系統會要求您將叢集升級至支援的版本。

此外,運算子連接點對於支援版本清單以外的叢集,也不具任何執行階段 (或其他) 保證。

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

針對運算子連接點不支援的次要版本,縮減或擴增都應會繼續運作。 由於沒有服務品質保證,因此建議進行升級以讓叢集恢復支援。

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

當您升級支援的運算子連接點 Kubernetes 叢集時,無法跳過 Kubernetes 次要版本。 Kube 控制平面版本扭曲原則不支援略過次要版本。 例如,在下列兩者之間進行升級:

  • 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.xx.x 叢集。 不過,建議您使用最新的支援版本來建立新的叢集。

我可以在擴充可用性範圍期間將叢集升級至較新版本嗎?

是的,您可以在擴充可用性範圍期間,將 N-3 叢集升級至 N-2。 如果您的叢集目前位於 N-4 上,您可以使用擴充可用性,先從 N-4 升級至 N-3,然後繼續升級至支援的版本 (N-2)。

我在擴充可用性範圍中,是否仍可以新增新的節點集區? 還是需要升級?

是的,您可以將節點集區新增至叢集。