共用方式為


叢集節點映射升級期間未升級至 Gen2 的 Windows Server 節點集區

本文討論如何在 Azure Kubernetes Service (AKS) 中升級叢集節點 Microsoft映射時,將 Windows Server 節點集區自動從 Gen1 升級至 Gen2 虛擬機 (VM) 的案例進行疑難解答。

注意

此案例不適用於Linux節點集區上的 Gen2 VM。

必要條件

徵兆

當您 在 Azure CLI 中使用下列其中一種方法升級節點映射 時,現有的 Windows Server 節點集區不會從 Gen1 升級至 Gen2:

原因

原因 1:現有的節點集區不會自動升級至 Gen2 VM

根據設計,節點映射升級不支援更新或升級現有的 nodepools。 az aks upgradeaz aks nodepool upgrade 命令只會升級節點映像(至更新的節點映像版本)。 這些命令不會升級對應的 VM 產生。

原因 2:叢集升級至 Kubernetes 1.25 版或更新版本只會升級 OS

當您將叢集升級至 Kubernetes 1.25 版或更新版本時,只會將操作系統 (OS) 升級至 Windows Server 2022。 現有的節點集區不會受到影響。 相關聯的 VM 擴展集將包含具有相同 Gen1 VM 的 VM。

原因 3:使用 Windows Server 2022 建立的叢集升級和新節點集區,而不需指定有效的 VM 大小

將叢集升級至 Kubernetes 1.25 版或更新版本之後,您會將 Windows Server 2022 指定為節點集區 VM 上使用的 OS。 不過,VM 不會使用 Gen2 節點映像參考,因為下列其中一個原因:

  • 您未指定 VM 大小,且區域中的預設 VM 大小不支援 Gen2 VM。

  • 您可以指定僅限 Gen1 的 VM 大小。

當您將預設 OS 從 Windows Server 2019 (Windows2019) 升級至 Windows Server 2022 時,Windows2022現有的節點集區不會自動升級為不同的 VM 世代。

解決方案

升級叢集,然後根據下列指導方針,建立新的 Windows Server 節點集區,以支援 該叢集上的 Gen2 VM 大小

Kubernetes 叢集升級版本 叢集建立指導方針
1.25 或更新版本 當您執行 az aks create 命令來建立叢集時,請將 --node-vm-size 參數設定為 Gen2 VM 大小
1.25 之前的版本 當您執行 az aks create 命令來建立叢集時,請將 --os-sku 參數值設定為 Windows2022,並將參數值設定 --node-vm-sizeGen2 VM 大小

注意

如果您將 Gen2 VM 大小和作業系統指定為 Windows Server 2019,您會收到 ErrorCode_Windows2019NotSupportedWithGen2VM 錯誤碼,並出現下列錯誤訊息:

<虛擬機大小> 是僅限第 2 代 VM。 Windows2019 不支援第 2 代 VM。 不過,您可以選取 Gen 1 VM 大小,或將os_sku設定為 2022。

若要避免此問題,請在建立叢集時選擇下列其中一個選項:

  • 挑選要與 Windows Server 2019 搭配使用的 Gen1 VM 大小。

  • 將操作系統 SKU 設定為 Windows Server 2022 ,以與您的 Gen2 VM 搭配使用。

與我們連絡,以取得說明

如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以向 Azure 意見反應社群提交產品意見反應。