O que é o SLB (software Load Balancer) para SDN?

Aplica-se a: Azure Stack HCI, versões 21H2 e 20H2; Windows server 2022, Windows server 2019, Windows Server 2016

Os CSPs (provedores de serviços de nuvem) e as empresas que estão implantando o Sdn (rede definida pelo software) podem usar o SLB (Load Balancer de software) para distribuir uniformemente o tráfego de rede do cliente locatário e locatário entre os recursos de rede virtual. O SLB permite que vários servidores hospedem a mesma carga de trabalho, fornecendo alta disponibilidade e escalabilidade.

Os Load Balancer de software podem fornecer uma borda multilocatário e unificada integrando-se com tecnologias SDN, como Gateway RAS, Firewall de datacentere refletor de rota.

Observação

O controlador de redenão dá suporte a multilocação para VLANs. No entanto, você pode usar VLANs com SLB para cargas de trabalho gerenciadas do provedor de serviços, como a infraestrutura do datacenter e servidores Web de alta densidade.

Usando Load Balancer de software, você pode escalar horizontalmente seus recursos de balanceamento de carga usando VMs (máquinas virtuais) SLB nos mesmos servidores de computação do Hyper-V que você usa para suas outras cargas de trabalho de VM. Por isso, o software Load Balancer dá suporte à criação e exclusão rápida de pontos de extremidade de balanceamento de carga, conforme necessário para operações de CSP. Além disso, o software Load Balancer dá suporte a dezenas de gigabytes por cluster, fornece um modelo de provisionamento simples e é fácil de expandir e reduzir.

para saber como gerenciar políticas de Load Balancer de Software usando o centro de administração do Windows, consulte gerenciar Load Balancer de software para SDN.

O que o software Load Balancer inclui?

Os Load Balancer de software incluem os seguintes recursos:

  • Serviços de balanceamento de carga de camada 4 (L4) para tráfego de TCP/UDP Norte/Sul e leste/oeste.

  • Rede pública e balanceamento de carga de tráfego de rede interno.

  • Suporte a DIPs (endereços IP dinâmicos) em redes locais virtuais (VLANs) e em redes virtuais que você cria usando a virtualização de rede Hyper-V.

  • Suporte à investigação de integridade.

  • Pronto para a escala de nuvem, incluindo capacidade de expansão e capacidade de expansão para multiplexadores e agentes de host.

Para obter mais informações, consulte Software Load Balancer recursos neste artigo.

Como funciona o Load Balancer de software

O software Load Balancer funciona por meio do mapeamento de VIPs (endereços IP virtuais) para DIPs que fazem parte de um conjunto de recursos de serviço de nuvem no datacenter.

VIPs são endereços IP únicos que fornecem acesso público a um pool de VMs com balanceamento de carga. Por exemplo, VIPs são endereços IP expostos na Internet para que os locatários e clientes locatários possam se conectar a recursos de locatário no datacenter na nuvem.

DIPs são os endereços IP das VMs membro de um pool com balanceamento de carga por trás do VIP. Os DIPs são atribuídos dentro da infraestrutura de nuvem para os recursos de locatário.

VIPs estão localizados no multiplexador SLB (MUX). O MUX consiste em uma ou mais VMs. O controlador de rede fornece a cada MUX cada VIP, e cada MUX, por sua vez, usa Border Gateway Protocol (BGP) para anunciar cada VIP aos roteadores na rede física como uma rota/32. O BGP permite que os roteadores de rede física:

  • Saiba que um VIP está disponível em cada MUX, mesmo que os MUXes estejam em sub-redes diferentes em uma rede de camada 3.

  • Espalhe a carga para cada VIP em todos os MUXes disponíveis usando o roteamento de vários caminhos (ECMP) de custo igual.

  • Detectar automaticamente uma falha ou remoção de MUX e parar de enviar tráfego para o MUX com falha.

  • Espalhe a carga do MUX com falha ou removido entre os MUXes íntegros.

Quando o tráfego público chega da Internet, o SLB MUX examina o tráfego, que contém o VIP como um destino, e mapeia e reescreve o tráfego para que ele chegue a um DIP individual. Para o tráfego de rede de entrada, essa transação é executada em um processo de duas etapas que é dividido entre as VMs do MUX e o host do Hyper-V onde o DIP de destino está localizado:

  1. Balanceamento de carga – a MUX usa o VIP para selecionar um DIP, encapsula o pacote e encaminha o tráfego para o host do Hyper-V onde o DIP está localizado.

  2. NAT (conversão de endereços de rede) – o host Hyper-V remove o encapsulamento do pacote, converte o VIP em um DIP, remapeia as portas e encaminha o pacote para a VM DIP.

O MUX sabe como mapear VIPs para o DIPs correto devido às políticas de balanceamento de carga que você define usando o controlador de rede. Essas regras incluem protocolo, porta de front-end, porta de back-end e algoritmo de distribuição (5, 3 ou 2 tuplas).

Quando as VMs de locatário respondem e enviam o tráfego de rede de saída para a Internet ou para locais de locatário remotos, como o NAT é executado pelo host Hyper-V, o tráfego ignora o MUX e vai diretamente para o roteador de borda do host Hyper-V. Esse processo de bypass de MUX é chamado de retorno de servidor direto (DSR).

E, depois que o fluxo de tráfego de rede inicial é estabelecido, o tráfego de rede de entrada ignora completamente o SLB MUX.

na ilustração a seguir, um computador cliente executa uma consulta DNS para o endereço IP de um site de SharePoint da empresa, nesse caso, uma empresa fictícia chamada Contoso. O seguinte processo ocorre:

  1. O servidor DNS retorna o 107.105.47.60 VIP para o cliente.

  2. O cliente envia uma solicitação HTTP para o VIP.

  3. A rede física tem vários caminhos disponíveis para alcançar o VIP localizado em qualquer MUX. Cada roteador ao longo do caminho usa ECMP para escolher o próximo segmento do caminho até chegar à solicitação em um MUX.

  4. O MUX que recebe a solicitação verifica as políticas configuradas e vê que há dois DIPs disponíveis, 10.10.10.5 e 10.10.20.5, em uma rede virtual para lidar com a solicitação para o VIP 107.105.47.60

  5. O MUX seleciona o DIP 10.10.10.5 e encapsula os pacotes usando VXLAN para que ele possa enviá-lo para o host que contém o DIP usando o endereço de rede física do host.

  6. O host recebe o pacote encapsulado e o inspeciona. Ele remove o encapsulamento e reescreve o pacote para que o destino agora seja DIP 10.10.10.5 em vez do VIP e, em seguida, envie o tráfego para a VM DIP.

  7. a solicitação chega ao site de SharePoint Contoso no Farm de servidores 2. O servidor gera uma resposta e a envia para o cliente, usando seu próprio endereço IP como a origem.

  8. O host intercepta o pacote de saída no comutador virtual que se lembra de que o cliente, agora, o destino, fez a solicitação original para o VIP. O host reescreve a origem do pacote para ser o VIP para que o cliente não veja o endereço DIP.

  9. O host encaminha o pacote diretamente para o gateway padrão para a rede física que usa sua tabela de roteamento padrão para encaminhar o pacote para o cliente, que eventualmente recebe a resposta.

Processo de balanceamento de carga de software

Tráfego de datacenter interno de balanceamento de carga

Ao balancear a carga do tráfego de rede interno ao datacenter, como entre os recursos de locatário que estão sendo executados em servidores diferentes e são membros da mesma rede virtual, o comutador virtual do Hyper-V ao qual as VMs estão conectadas executa o NAT.

Com o balanceamento de carga de tráfego interno, a primeira solicitação é enviada e processada pelo MUX, que seleciona o DIP apropriado e, em seguida, roteia o tráfego para o DIP. Desse ponto em diante, o fluxo de tráfego estabelecido ignora o MUX e vai diretamente da VM para a VM.

Investigações de integridade

O software Load Balancer inclui investigações de integridade para validar a integridade da infraestrutura de rede, incluindo o seguinte:

  • Investigação de TCP para porta

  • Investigação de HTTP para porta e URL

Ao contrário de um dispositivo de balanceador de carga tradicional em que a investigação se origina no dispositivo e viaja pela conexão com o DIP, a investigação de SLB se origina no host onde o DIP está localizado e vai diretamente do agente de host SLB para o DIP, distribuindo ainda mais o trabalho entre os hosts.

Infraestrutura de Load Balancer de software

Antes de configurar o Load Balancer de software, você deve primeiro implantar o controlador de rede e uma ou mais VMs MUX do SLB.

Além disso, você deve configurar os hosts de HCI Azure Stack com o comutador virtual Hyper-V habilitado para SDN e garantir que o agente de host SLB esteja em execução. Os roteadores que atendem aos hosts devem dar suporte ao BGP (ECMP Routing and Border Gateway Protocol) e devem ser configurados para aceitar solicitações de emparelhamento via protocolo BGP do SLB MUXes.

A figura a seguir fornece uma visão geral da infraestrutura SLB.

Infraestrutura de Load Balancer de software

As seções a seguir fornecem mais informações sobre esses elementos da infraestrutura de Load Balancer de software.

Controlador de rede

O controlador de rede hospeda o Gerenciador SLB e executa as seguintes ações para Load Balancer de software:

  • processa comandos SLB que entram por meio da API Northbound do centro de administração Windows, System Center, Windows PowerShell ou outro aplicativo de gerenciamento de rede.

  • Calcula a política de distribuição para Azure Stack hosts HCI e SLB MUXes.

  • Fornece o status de integridade da infraestrutura de Load Balancer de software.

você pode usar Windows centro de administração ou Windows PowerShell para instalar e configurar o controlador de rede e outra infraestrutura SLB.

MUX SLB

O SLB MUX processa o tráfego de rede de entrada e mapeia VIPs para DIPs e encaminha o tráfego para o DIP correto. Cada MUX também usa o BGP para publicar rotas VIP para roteadores de borda. O BGP Keep Alive notifica o MUXes quando um MUX falha, o que permite que o Active MUXes redistribua a carga no caso de uma falha de MUX. Basicamente, isso fornece balanceamento de carga para os balanceadores de carga.

Agente de host SLB

ao implantar Load Balancer de Software, você deve usar Windows centro de administração, System Center, Windows PowerShell ou outro aplicativo de gerenciamento para implantar o agente de Host SLB em cada servidor host.

O agente de host SLB escuta atualizações de política SLB do controlador de rede. Além disso, as regras de programas de agente de host para SLB nos comutadores virtuais Hyper-V habilitados para SDN configuradas no computador local.

Comutador virtual Hyper-V habilitado para SDN

Para que um comutador virtual seja compatível com o SLB, a extensão VFP (plataforma de filtragem virtual) deve ser habilitada no comutador virtual. isso é feito automaticamente pelos scripts do PowerShell de implantação do SDN, Windows o assistente de implantação do centro de administração e a implantação do System Center Virtual Machine Manager (SCVMM).

para obter informações sobre como habilitar o VFP em comutadores virtuais, consulte os comandos de Windows PowerShell Get-VMSystemSwitchExtension e Enable-VMSwitchExtension.

O comutador virtual Hyper-V habilitado para SDN executa as seguintes ações para SLB:

  • Processa o caminho de dados para SLB.

  • Recebe o tráfego de rede de entrada do MUX.

  • Ignora o MUX para o tráfego de rede de saída, enviando-o ao roteador usando DSR.

Roteador BGP

O roteador BGP executa as seguintes ações para Software Load Balancer:

  • Encaminha o tráfego de entrada para o MUX usando ECMP.

  • Para o tráfego de rede de saída, usa a rota fornecida pelo host.

  • Escuta atualizações de rota para VIPs do SLB MUX.

  • Remove MUXes SLB da rotação SLB se Keep Alive falhar.

Recursos Load Balancer software

As seções a seguir descrevem alguns dos recursos e funcionalidades do Software Load Balancer.

Funcionalidade principal

  • O SLB fornece serviços de balanceamento de carga de Camada 4 para tráfego TCP/UDP norte/sul e leste/oeste.

  • Você pode usar o SLB em uma rede baseada em Virtualização de Rede Hyper-V.

  • Você pode usar o SLB com uma rede baseada em VLAN para VMs DIP conectadas a um comutado virtual Hyper-V habilitado para SDN.

  • Uma instância SLB pode lidar com vários locatários.

  • O SLB e o DIP são suportados por um caminho de retorno escalonável e de baixa latência, conforme implementado pela DSR.

  • Funções SLB quando você também está usando o SET (Switch Embedded Teaming) ou a SR-IOV (Virtualização de Entrada/Saída Raiz Única).

  • O SLB inclui suporte ao protocolo IPv6 (internet versão 6) e versão 4 (IPv4).

  • Para cenários de gateway site a site, o SLB fornece a funcionalidade NAT para permitir que todas as conexões site a site utilizem um único IP público.

Escala e desempenho

  • Pronto para escala de nuvem, incluindo capacidade de escala e escala para muxes e agentes de host.

  • Um módulo ativo do Controlador de Rede do Gerenciador de SLB pode dar suporte a oito instâncias MUX.

Alta disponibilidade

  • Você pode implantar o SLB em mais de dois nós em uma configuração ativa/ativa.

  • MUXes podem ser adicionados e removidos do pool de MUX sem afetar o serviço SLB. Isso mantém a disponibilidade de SLB quando MUXes individuais estão sendo corrigidas.

  • Instâncias MUX individuais têm um tempo de atividade de 99%.

  • Os dados de monitoramento de saúde estão disponíveis para entidades de gerenciamento.

Próximas etapas

Para obter informações relacionadas, consulte também: