解决 WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY 错误 (5)

本文介绍如何识别和解决尝试在 Azure Kubernetes 服务 (AKS) 群集中添加 Windows 节点池时发生的“WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY”错误(5)。

先决条件

需要以下工具之一:

  • 适用于 Windows 节点的 PowerShell 命令行 shell。
  • 适用于 Linux 节点的 Netcatnc) 命令行工具。

现象

尝试在 AKS 群集中添加 Windows 节点池时,会收到以下错误消息:

Code=“VMExtensionProvisioningError”
Message=“CSE Error: WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY”。”退出代码:5。 详细信息:无法建立从代理到 Kubernetes API 服务器的连接。

原因

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

疑难解答步骤

  1. 按照 适用于 SSH 的 Windows Server 代理连接中所述的步骤连接到相应的节点:

  2. 验证节点是否可以解析群集的完全限定域名(FQDN):

    在现有 Windows 节点上运行以下命令:

    Test-NetConnection -ComputerName <cluster-fqdn> -Port 443
    

    或者,在现有 Linux 节点上运行以下命令:

    nc -vz <cluster-fqdn> 443
    
  3. 如果命令输出显示 FalseTimeout检查网络配置。 例如,检查是否在虚拟网络的网络安全组(NSG)中为 API 服务器设置“拒绝”规则。

  4. 如果您使用防火墙出口筛选,请确保您的防火墙策略允许到达您群集 FQDN 的流量。

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

参考

第三方信息免责声明

本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。

联系我们寻求帮助

如果有疑问,可以询问 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区