Criar e usar um balanceador de carga personalizado no Serviço de Kubernetes do Azure no Azure Stack HCI e no Windows Server

Este artigo aborda como criar e usar um balanceador de carga personalizado. No AKS (Serviço de Kubernetes do Azure) no Azure Stack HCI e no Windows Server, você usa balanceadores de carga para enviar solicitações para o servidor de API do Kubernetes e para gerenciar o tráfego para os serviços de aplicativos. Ao usar um balanceador de carga personalizado, o kube-vip é implantado automaticamente para gerenciar o balanceamento de carga de solicitações para o servidor de API do Kubernetes e para garantir que ele esteja altamente disponível.

Observação

Você também pode usar outros balanceadores de carga, como o balanceamento de carga do MetalLB ou SDN (Software Defined Networking), para balancear o tráfego de carga para os serviços de aplicativos.

Antes de começar

Você deve ter instalado o AKS no Azure Stack HCI e no Windows Server e fornecido um intervalo de endereços IP virtuais para o balanceador de carga durante a etapa de configuração de rede durante a instalação.

Configurar um balanceador de carga personalizado

Aviso

Se você optar por implantar seu próprio balanceador de carga, o cluster do Kubernetes ficará inacessível após a instalação. Se você implantar serviços com type=LoadBalanceros quais os serviços também serão inacessíveis até que você configure o balanceador de carga.

Essa configuração pressupõe que você deseja aproveitar um balanceador de carga personalizado em seu cluster. Nesse caso, o cluster de carga de trabalho é implantado sem um balanceador de carga.

  1. Crie uma configuração de balanceador de carga usando o cmdlet New-AksHciLoadBalancerSetting e selecione none o loadBalancerSku parâmetro:

    $lbCfg=New-AksHciLoadBalancerSetting -name "myLb" -loadBalancerSku "none" 
    
  2. Implante um cluster de carga de trabalho sem fornecer a configuração do balanceador de carga usando o seguinte comando:

    New-AksHciCluster -name "summertime" -nodePoolName mynodepool -nodeCount 2 -OSType linux -nodeVmSize Standard_A4_v2 -loadBalancerSettings $lbCfg 
    
  3. Use Get-AksHciCluster para verificar se o cluster foi implantado com êxito com os nós do plano de controle em execução kube-vip e se as solicitações do servidor de API podem ser acessadas.

  4. Configure manualmente o balanceador de carga.

Se você executar uma atualização, a configuração do balanceador de carga (loadBalancerSku e count) definida durante a instalação permanecerá a mesma após a conclusão da atualização. No entanto, se você quiser atualizar loadBalancerSku durante uma atualização, deverá reimplantar seus clusters de carga de trabalho. Se você tiver clusters existentes executando um balanceador de carga baseado em HAProxy, poderá continuar executando suas cargas de trabalho e a atualização será concluída com êxito.

Importante

Se você mudar de usar um balanceador de carga personalizado para usar o balanceador de carga padrão, será necessário reimplantar o cluster de carga de trabalho com a nova configuração do balanceador de carga. Para obter instruções sobre como configurar o balanceador de carga padrão, consulte Configurar o balanceador de carga.

Próximas etapas

Para saber mais sobre os serviços do Kubernetes, consulte a documentação dos serviços do Kubernetes.