共用方式為


針對 AKS 叢集升級期間的 「SubnetIsFull」 錯誤碼進行疑難解答

本文討論如何識別並解決當您嘗試升級 Azure Kubernetes Service (AKS) 叢集時所發生的“SubnetIsFull” 錯誤。

以下是錯誤訊息的範例:

無法在 Kubernetes 服務 '<NAME>' 中調整節點集<區 AGENT POOL NAME>'。 錯誤:VMSSAgentPoolReconciler 重試失敗:Code='SubnetIsFull' Message='<SUBNET NAME>\ with address prefix <PREFIX>\ 沒有足夠的 IP 位址容量。 Details=[]

必要條件

本文需要 Azure CLI 2.0.65 版或更新版本。 若要尋找版本號碼,請執行 az --version。 如果您必須安裝或升級 Azure CLI,請參閱 如何安裝 Azure CLI

如需升級程式的詳細資訊,請參閱升級 Azure Kubernetes Service (AKS) 叢集中的 <升級 AKS 叢集>一節。

徵兆

AKS 叢集升級失敗,而且您會收到「SubnetIsFull」錯誤訊息。

原因

如果您的叢集沒有足夠的IP位址來建立新的節點,就會發生此錯誤。

當您打算執行升級或調整作業時,請考慮所需的IP位址數目。 如果您在叢集中設定的IP位址範圍只支援固定數目的節點,升級或調整作業將會失敗。 如需詳細資訊,請參閱在 Azure Kubernetes Service 中設定 Azure CNI 網路服務的<規劃叢集 IP 尋址>一

解決方案

減少叢集節點,以保留升級的IP位址。

如果相應減少不是選項,而且您的虛擬網路 CIDR 有足夠的 IP 位址,請嘗試新增具有唯一子網節點集區:

  1. 在較大型子網的虛擬網路中新增用戶節點集區。
  2. 將原始節點集區切換至系統節點集區類型。
  3. 相應增加用戶節點集區。
  4. 相應減少原始節點集區。

與我們連絡,以取得說明

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