排查 K8SAPIServerConnFailVMExtensionError 错误代码 (51) 的问题

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

先决条件

  • Netcat (nc) 命令行工具

现象

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

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

详细信息:Code=“VMExtensionProvisioningError”

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

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

“ExitCode”: “51”,

“输出”:“Thu Oct 14 18:07:37 UTC 2021,aks-nodepool1-18315663-vmss000000\nConnection to

原因

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

解决方案

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

nc -vz <cluster-fqdn> 443

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

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

详细信息

联系我们寻求帮助

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