排查 K8SAPIServerConnFailVMExtensionError 错误代码 (51)

本文讨论如何识别和解决K8SAPIServerConnFailVMExtensionError错误 (也称为错误代码ERR_K8S_API_SERVER_CONN_FAIL、错误号 51) ,在尝试启动或部署 Microsoft Azure Kubernetes 服务 (AKS) 群集时发生。

先决条件

症状

尝试启动或创建 AKS 群集时,会收到以下错误消息:

无法建立从代理到 Kubernetes API 服务器的连接,有关详细信息,请参阅 https://aka.ms/aks-required-ports-and-addresses

详细信息:Code=“VMExtensionProvisioningError”

Message=“VM 在处理扩展'vmssCSE'时报告失败。

错误消息:“启用失败:无法执行命令:命令已终止,退出状态为 51\n[stdout]\n{

“ExitCode”: “51”,

“Output”:“周四 10 月 14 日 18:07:37 UTC 2021,aks-nodepool1-18315663-vmss000000\n连接到

原因

群集节点无法连接到群集 API 服务器 Pod。

解决方案

运行 Netcat 命令,验证节点是否可以解析群集的完全限定域名 (FQDN) :

nc -vz <cluster-fqdn> 443

如果使用通过防火墙的出口筛选,请确保允许流向群集 FQDN 的流量。

在极少数情况下,如果已授权群集上启用的 IP 地址,则可以阻止防火墙的出站 IP 地址。 在此方案中,必须将防火墙的出站 IP 地址添加到群集的授权 IP 范围列表中。 有关详细信息,请参阅 使用 AKS 中授权的 IP 地址范围保护对 API 服务器的访问

更多信息

联系我们寻求帮助

如果你有任何疑问或需要帮助,请创建支持请求联系 Azure 社区支持。 还可以向 Azure 反馈社区提交产品反馈。