本文介绍如何识别和解决尝试在 Azure Kubernetes 服务 (AKS) 群集中添加 Windows 节点池时发生的“WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY”错误(5)。
先决条件
需要以下工具之一:
- 适用于 Windows 节点的 PowerShell 命令行 shell。
- 适用于 Linux 节点的 Netcat (
nc) 命令行工具。
现象
尝试在 AKS 群集中添加 Windows 节点池时,会收到以下错误消息:
Code=“VMExtensionProvisioningError”
Message=“CSE Error: WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY”。”退出代码:5。 详细信息:无法建立从代理到 Kubernetes API 服务器的连接。
原因
群集节点无法连接到群集 API 服务器 POD。
疑难解答步骤
按照 适用于 SSH 的 Windows Server 代理连接中所述的步骤连接到相应的节点:
验证节点是否可以解析群集的完全限定域名(FQDN):
在现有 Windows 节点上运行以下命令:
Test-NetConnection -ComputerName <cluster-fqdn> -Port 443或者,在现有 Linux 节点上运行以下命令:
nc -vz <cluster-fqdn> 443如果命令输出显示
False或Timeout检查网络配置。 例如,检查是否在虚拟网络的网络安全组(NSG)中为 API 服务器设置“拒绝”规则。如果您使用防火墙出口筛选,请确保您的防火墙策略允许到达您群集 FQDN 的流量。
如果您已授权群集上启用的 IP 地址,那么可以阻止防火墙的出站 IP 地址。 在此方案中,必须将防火墙的出站 IP 地址添加到群集的授权 IP 范围列表中。 有关详细信息,请参阅 在 AKS 中使用授权 IP 地址范围保护对 API 服务器的访问。
参考
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。
联系我们寻求帮助
如果有疑问,可以询问 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区。