在 Azure 本地和 Windows Server 上的 Azure Kubernetes 服务 中创建和使用自定义负载均衡器

适用于:Azure 本地 22H2 上的 AKS 以及 Windows Server 上的 AKS

本文介绍如何创建和使用自定义负载均衡器。 在 Azure 本地和 Windows Server 上的 Azure Kubernetes 服务 (AKS)中,使用负载均衡器将请求发送到 Kubernetes API 服务器并管理发往应用程序服务的流量。 使用自定义负载均衡器时,kube-vip 会自动部署,以管理对 Kubernetes API 服务器的请求的负载均衡,并确保其高度可用。

注意

还可以使用其他负载均衡器,例如 MetalLB 或软件定义的网络 (SDN) 负载均衡,对到应用程序服务的流量进行负载均衡。

开始之前

必须在 Azure 本地和 Windows Server 上安装 AKS,并在安装期间在网络配置步骤中为负载均衡器提供一系列虚拟 IP 地址。

配置自定义负载均衡器

警告

如果选择部署自己的负载均衡器,则在安装后将无法访问 Kubernetes 群集。 如果使用 type=LoadBalancer 部署任何服务,则在配置负载均衡器之前,这些服务也将无法访问。

此配置假设你要在群集中利用自定义负载均衡器。 在这种情况下,将部署没有负载均衡器的工作负载群集。

  1. 使用 New-AksHciLoadBalancerSetting cmdlet 创建负载均衡器配置,然后为 none 参数选择 loadBalancerSku

    $lbCfg=New-AksHciLoadBalancerSetting -name "myLb" -loadBalancerSku "none" 
    
  2. 使用以下命令在不提供负载均衡器配置的情况下部署工作负载群集:

    New-AksHciCluster -name "summertime" -nodePoolName mynodepool -nodeCount 2 -OSType linux -nodeVmSize Standard_A4_v2 -loadBalancerSettings $lbCfg 
    
  3. 使用 Get-AksHciCluster 验证群集已成功部署,控制平面节点运行 kube-vip,并且 API 服务器请求可访问。

  4. 手动配置负载均衡器。

如果运行升级,则在安装过程中定义的负载均衡器配置(loadBalancerSkucount)在升级完成后将保持不变。 但是,如果想在升级期间更新 loadBalancerSku,必须重新部署工作负载群集。 如果有运行基于 HAProxy 的负载均衡器的现有群集,则可以继续运行工作负载,升级将成功完成。

重要

如果从使用自定义负载均衡器更改为使用默认负载均衡器,则需要使用新的负载均衡器配置重新部署工作负载群集。 有关如何配置默认负载均衡器的说明,请参阅配置负载均衡器

后续步骤

要详细了解 Kubernetes 服务,请参阅 Kubernetes 服务文档