Azure Kubernetes Service (AKS) 版本的長期支援

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

AKS 支援此 社群支持 視窗中的 Kubernetes 版本,可從社群版本推送 Bug 修正和安全性更新。 雖然社群支持的發行頻率提供了優勢,但這需要您時刻保持 Kubernetes 版本的最新狀態。根據您的應用程式相依性以及 Kubernetes 生態系統的變化速度,這可能會很困難。

為了協助您管理 Kubernetes 版本升級,AKS 提供 長期支援 (LTS) 選項,其可擴充 Kubernetes 版本的支援 視窗,讓您有更多時間規劃及測試更新 Kubernetes 版本的升級。

AKS 支援類型

大約一年後,指定的 Kubernetes 次要版本會結束 社群支援,使得 AKS 叢集無法使用 Bug 修正和安全性更新。

AKS 提供一年的 社群支援 和一年 的長期支援 ,以支援上游社群的安全性修正。 上游 LTS 工作群組會參與社群,並擴充支援視窗。 LTS 提供的長期支持版本讓用戶可以在 Kubernetes 版本正式發布(GA)後有兩年的時間來規劃和測試升級。

社群支援 長期支援
使用時機 當您能夠掌握上游 Kubernetes 版本的資訊時 當您需要控制何時從某個版本移轉至另一個版本時
支援的版本 最新的三個 GA 次要版本 所有從 1.27 起支援的 Kubernetes 版本都符合 Long-Term 支援 (LTS) 的資格。

LTS 修補程式流程

LTS 僅支援兩個最新的修補程式版本。 這與社群支援不同,其中支援所有修補程式版本。 不過,AKS 會保留取代任何修補程式版本以回應重大安全性弱點 (CVE) 的權利。 如需社群支持原則的詳細資訊,請參閱 Kubernetes 版本支持原則

若要識別最新的支援修補程式版本,請參閱 AKS 版本追蹤器

建議您啟用自動升級修補程式通道,以確保您的叢集保持最新的修補程式。

啟用長期支援

啟用 LTS 需要將您的叢集移至進階層,並明確選取 LTS 支援方案。 您可以隨時加入,包括叢集仍處於社群支援期間時。

叢集的 LTS 進階層計費只會在叢集的 Kubernetes 次要版本結束社群支援,並進入長期支援時段後開始。 在此之前,該群組仍以現有的分級費率收費。

附註

提早加入可讓您在社群生命週期結束前鎖定 LTS 支援方案和修補程式通道組態,在 LTS 支援時段開始前,不會產生額外的進階層 LTS 費用。

附註

強烈建議啟用修補程式自動升級通道,以確保您的叢集一律會收到最新的支援修補程式。 LTS 僅支援每個次要版本的最後兩個修補程式版本。 未使用最新支援兩個補丁版本的叢集可能會失去支援。

計費範例

以執行 Kubernetes 1.35 的 AKS 叢集為例,其社群支援窗口將於 2027 年 3 月結束。 如果你在叢集仍在社群支援範圍內時選擇加入 LTS:

  1. 雖然 1.35 仍由社群支援(至 2027 年 3 月),但該叢集仍以現有的分級費率(例如標準級)收費。
  2. 一旦 1.35 退出社群支援並進入 LTS 視窗,叢集會自動轉為高級 LTS 計費。

在新叢集上啟用 LTS

  • 使用 az aks create 命令建立已啟用 LTS 的新叢集。

    下列命令會建立新的 AKS 叢集,並使用 Kubernetes 1.27 版啟用 LTS 作為範例。 若要檢閱可用的 Kubernetes 版本,請參閱 AKS 發行追蹤器

    az aks create \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --tier premium \
        --k8s-support-plan AKSLongTermSupport \
        --kubernetes-version 1.27 \
        --auto-upgrade-channel patch \
        --generate-ssh-keys
    

在現有叢集上啟用 LTS

  • 使用 az aks update 命令在現有的叢集上啟用 LTS。

    az aks update --resource-group <resource-group-name> --name <cluster-name> --tier premium --k8s-support-plan AKSLongTermSupport --auto-upgrade-channel patch
    

小提示

若要檢視您可以升級至哪個 Kubernetes 版本,請使用 AKS 版本追蹤器 或執行 az aks get-upgrades --resource-group <resource-group-name> --name <cluster-name>

遷移至最新的 LTS 版本

上游 Kubernetes 社群支援兩個次要版本升級路徑。 此程式會將 Kubernetes 叢集中的物件移轉為升級程式的一部分,並提供經過測試和認可的移轉路徑。

如果你想執行原地遷移,AKS 服務會將你的控制平面從先前的 LTS 版本遷移到最新版本,然後再遷移資料平面。 若要進行就地升級至最新的 LTS 版本,您需要將已啟用 LTS 的 Kubernetes 版本指定為升級目標。

  • 使用 az aks upgrade 命令移轉至最新的 LTS 版本。

    下列命令使用 Kubernetes 1.32.2 版作為範例版本。 若要檢閱可用的 Kubernetes 版本,請參閱 AKS 發行追蹤器

    az aks upgrade --resource-group <resource-group-name> --name <cluster-name> --kubernetes-version 1.32.2
    

    附註

    接下來,所有 AKS Kubernetes 版本都會與 LTS 相容。 如需最新的 LTS 行事曆,請流覽 AKS Kubernetes 發行行事曆。 若要依區域檢視可用的 LTS 版本及其修補程式,請參閱 AKS 發行追蹤器

停用現有叢集的長期支援功能

停用現有叢集上的 LTS 需要將您的叢集移至免費或標準層,並明確選取 KubernetesOfficial 支援方案

一個 LTS 版本與下一個版本之間大約有兩年的時間。 由於缺乏上游支援來移轉超過兩個次要版本,您的應用程式很可能依賴於已被棄用的 Kubernetes API。 建議您在目標 LTS Kubernetes 版本上徹底測試您的應用程式,並將藍色/綠色部署從某個版本執行到另一個版本。

  1. 使用 az aks update 命令停用現有叢集上的 LTS。 以下範例指令將叢集移至免費方案,並選擇 KubernetesOfficial 支援方案。

    az aks update --resource-group <resource-group-name> --name <cluster-name> --tier free --k8s-support-plan KubernetesOfficial
    
  2. 使用 az aks upgrade 命令將叢集升級至較新的支援版本。

    下列命令使用 Kubernetes 1.28.3 版作為範例版本。 若要檢閱可用的 Kubernetes 版本,請參閱 AKS 發行追蹤器

    az aks upgrade --resource-group <resource-group-name> --name <cluster-name> --kubernetes-version 1.28.3
    

不支援的附加元件和功能

AKS 小組目前會追蹤 Kubernetes 社群支援所在的附加元件版本。 一旦某版本不再受到社群支持,我們依賴開放原始碼專案的受管理的附加元件,以繼續提供支援。 由於各種外部因素,某些附加元件和功能可能不支援這些上游社群支援視窗外的 Kubernetes 版本。

下表提供不支援的附加元件和功能清單,以及不支援的原因:

附加元件/功能 不支援的原因
Calico 社群支援結束後需要 Calico Enterprise 合約。
金鑰管理服務 (KMS) KMSv2 會在此 LTS 週期中取代 KMS。
Dapr 不支援 AKS 擴充功能。
應用程式閘道輸入控制器 移轉至適用於容器的應用程式閘道發生在 LTS 期間。
開放式服務網格 OSM 已被取代。
AAD Pod 身分識別 已淘汰並取代為工作負載身分識別。

附註

如果啟用其中任何附加元件或功能,則您無法將叢集移至長期支援。

雖然Microsoft不支援這些 AKS 受控附加元件,但如果您想要使用其過去的社群支援,您可以在叢集上安裝其開放原始碼版本。

我們如何決定下一個 LTS 版本

Kubernetes LTS 的版本在從正式發行算起的兩年內都可以使用,我們會根據下列準則,將 Kubernetes 的更高版本標示為 LTS:

  • 客戶有足夠的時間可從先前的 LTS 版本移轉至目前的 LTS 版本。
  • 先前版本已完成兩年的支援期限。

閱讀 AKS 版本資訊,以隨時掌握能夠規劃移轉的時機。

常見問題集

我可以在社群支持結束后建立具有 LTS 版本的新 AKS 叢集嗎?

是,即使您已選擇加入 LTS,您也可以使用 LTS 版本建立新的 AKS 叢集,即使其社群支援期間已結束。 不過,這只有在 LTS 版本的生命週期結束之前才有效。 之後,您必須升級至下一個支援的 LTS 版本。 如需詳細資訊,請參閱 AKS Kubernetes 發行行事曆

在社群支持結束后,我可以在 AKS 支援的版本上啟用和停用 LTS 嗎?

是,您可以在任何 AKS 支援的版本上啟用 LTS 支援方案,即使其社群支援期間結束也一樣。 不過,一旦社群支持期間結束,就無法停用該版本的 LTS。

社群支援的 AKS 叢集是否在生命週期結束後自動符合 LTS 資格?

否。 你必須明確啟用 LTS,並將叢集移到 Premium 等級。 當該版本退出社群支援後,將採用高級 LTS 帳單。 更多資訊請參閱 高級階級價格

每個 AKS 版本都會支援長期支援 (LTS) 嗎?

是,AKS 可確保所有支援的 Kubernetes 版本都符合 Long-Term 支援 (LTS) 的資格。 您可以選擇加入目前可用的任何支援版本的 LTS。

LTS 的定價模式為何?

LTS 提供於高級等級。 叢集的進階層級 LTS 計費會在其 Kubernetes 次要版本結束社群支援,且叢集進入 LTS 支援期間時開始。 叢集如果在仍處於社群支援期間時加入 LTS,就不會在社群支援期間依 LTS 進階費率計費。 有關最新費率,請參閱 高級階級定價

如果我在社區支援期間選擇加入,LTS 帳單何時開始?

LTS 高級階計費會在你的叢集 Kubernetes 小版本退出社群支援時開始。 若您較早選擇加入,您的叢集在社群支援期間將維持現有的分級計費,並在社群支援結束後自動轉為 LTS 高級分級計費。

啟用 LTS 會中斷工作負載嗎?

否。 這只是組態上的變更;它不會重新建立節點映像或中斷工作負載,因此預期不會有停機。