針對 K8SAPIServerConnFailVMExtensionError 錯誤碼 (51) 進行疑難排解
本文討論如何識別並解決 K8SAPIServerConnFailVMExtensionError
當您嘗試啟動或部署Microsoft Azure Kubernetes Service (AKS) 叢集時所發生的錯誤(也稱為錯誤碼ERR_K8S_API_SERVER_CONN_FAIL、錯誤號碼 51)。
必要條件
- Netcat (nc) 命令行工具
徵兆
嘗試啟動或建立 AKS 叢集時,會收到下列錯誤訊息:
無法建立從代理程式到 Kubernetes API 伺服器的連線,如需詳細資訊,請參閱 https://aka.ms/aks-required-ports-and-addresses 。
詳細數據:Code=“VMExtensionProvisioningError”
Message=“VM 在處理擴充功能 'vmssCSE' 時回報失敗。
錯誤訊息:「啟用失敗:無法執行命令:結束狀態為 51\n[stdout]\n{ 的命令終止
“ExitCode”: “51”,
“Output”: “Thu Oct 14 18:07:37 UTC 2021,aks-nodepool1-18315663-vmss000000\nConnection 至
原因
您的叢集節點無法連線到叢集 API 伺服器 Pod。
解決方案
執行 Netcat 命令,確認您的節點可以解析叢集的完整功能變數名稱 (FQDN):
nc -vz <cluster-fqdn> 443
如果您使用透過防火牆的輸出篩選,請確定叢集 FQDN 允許流量。
在極少數情況下,如果您已授權叢集上啟用的IP位址,則可以封鎖防火牆的輸出IP位址。 在此案例中,您必須將防火牆的輸出IP位址新增至叢集的授權IP範圍清單。 如需詳細資訊,請參閱 在 AKS 中使用授權 IP 位址範圍保護對 API 伺服器的存取。
其他相關資訊
與我們連絡,以取得說明
如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以向 Azure 意見反應社群提交產品意見反應。