本文討論如何識別並解決當您嘗試建立節點集區時所發生的 SubnetIsDelegated 錯誤。
先決條件
- Azure CLI (2.0.59 版或更新版本)
癥狀
當您嘗試在 AKS 叢集中建立節點集區時,您會收到下列錯誤訊息:
Code:SubnetIsDelegated
消息:
AgentPoolProfile子網 ID <subnet-id> 無法使用,因為它是一個已經委派的子網。 如需詳細資訊,請參閱 https://aka.ms/adv-network-prerequest 。
原因
如果您嘗試使用子網來建立節點集區,且子網已啟用特定 Azure 服務的委派,則新的節點集區無法與 AKS 服務整合。
解決辦法
要解決這個問題,請按照以下步驟進行:
確認子網路已正確被委派:
az network vnet subnet show \ --resource-group $RESOURCE_GROUP \ --vnet-name $VNET_NAME \ --name $SUBNET_NAME \ --query delegations請確定輸出會顯示 Microsoft.ContainerService/managedClusters 做為委派的服務或沒有委派的服務。 如果輸出顯示任何其他 Azure 服務委派,請執行下列命令來移除它:
az network vnet subnet update \ --resource-group $RESOURCE_GROUP \ --vnet-name $VNET_NAME \ --name $SUBNET_NAME \ --remove delegations 0執行下列命令以新增受控叢集委派:
az network vnet subnet update \ --resource-group $RESOURCE_GROUP \ --vnet-name $VNET_NAME \ --name $SUBNET_NAME \ --delegations Microsoft.ContainerService/managedClusters在移除子網委派後,請再試一次使用
az aks nodepool add命令來建立節點池。
參考資料
(../../../includes/azure-help-support.md)