O que é o Balancer de Carga de Software (SLB) para SDN?

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

Os Fornecedores de Serviços em Nuvem (CSPs) e empresas que estão a implementar o Software Defined Networking (SDN) podem usar o Software Load Balancer (SLB) para distribuir uniformemente o tráfego de clientes de inquilinos e inquilinos entre recursos de rede virtual. O SLB permite que vários servidores alogem a mesma carga de trabalho, proporcionando elevada disponibilidade e escalabilidade.

O Balancer de Carga de Software pode fornecer uma borda multitenante e unificada, integrando-se com tecnologias SDN como RAS Gateway,Datacenter Firewalle Route Refletor.

Nota

A multitenancy para VLANs não é suportada pelo Controlador de Rede. No entanto, pode utilizar VLANs com SLB para cargas de trabalho geridas pelo fornecedor de serviços, como a infraestrutura do datacenter e servidores web de alta densidade.

Utilizando o Balancer de Carga de Software, pode escalar as suas capacidades de equilíbrio de carga utilizando máquinas virtuais SLB (VMs) nos mesmos servidores de computação Hiper-V que utiliza para as suas outras cargas de trabalho VM. Por isso, o Balancer de Carga de Software suporta a criação rápida e eliminação de pontos finais de equilíbrio de carga, conforme necessário para as operações de CSP. Além disso, o Software Load Balancer suporta dezenas de gigabytes por cluster, fornece um modelo simples de provisionamento, e é fácil de escalar para fora e para dentro.

Para aprender a gerir as políticas de balanceador de carga de software utilizando Windows Centro de Administração, consulte Gerir o Balancer de Carga de Software para SDN.

O que inclui o Balancer de Carga de Software?

O Balancer de Carga de Software inclui as seguintes capacidades:

  • Serviços de equilíbrio de carga da camada 4 (L4) para o tráfego de TCP/UDP norte/sul e leste/oeste.

  • Rede pública e equilíbrio de carga de tráfego de rede interna.

  • Suporte de endereços IP dinâmicos (DIPs) em redes de área local virtuais (VLANs) e em redes virtuais que cria utilizando a Virtualização da Rede Hiper-V.

  • Apoio à sonda de saúde.

  • Pronto para a escala de nuvem, incluindo capacidade de escala e capacidade de escala para multiplexers e agentes hospedeiros.

Para obter mais informações, consulte as funcionalidades do Balancer de Carga de Software neste artigo.

Como funciona o Balancer de Carga de Software

O Balancer de Carga de Software funciona mapeando endereços IP virtuais (VIPs) para DIPs que fazem parte de um conjunto de recursos de serviço na nuvem no datacenter.

Os VIPs são endereços IP únicos que proporcionam acesso público a um conjunto de VMs equilibrados de carga. Por exemplo, os VIPs são endereços IP que estão expostos na internet para que os inquilinos e clientes inquilinos possam ligar-se aos recursos dos inquilinos no datacenter da nuvem.

DIPs são os endereços IP dos VMs membros de uma piscina equilibrada de carga atrás do VIP. Os DIPs são atribuídos dentro da infraestrutura de nuvem aos recursos dos inquilinos.

Os VIPs estão localizados no Multiplexer SLB (MUX). O MUX é composto por um ou mais VMs. O Controlador de Rede fornece cada MUX a cada VIP, e cada MUX por sua vez utiliza o Border Gateway Protocol (BGP) para anunciar cada VIP aos routers na rede física como uma rota /32. A BGP permite que os routers de rede física:

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

  • Espalhe a carga para cada VIP em todos os MUXes disponíveis utilizando o roteamento multi-path de custo igual (ECMP).

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

  • Espalhe a carga do MUX falhado ou removido através dos MUXes saudáveis.

Quando o tráfego público chega da internet, o SLB MUX examina o tráfego, que contém o VIP como destino, e mapeia e reescreve o tráfego para que chegue a um DIP individual. Para o tráfego de rede de entrada, esta transação é realizada num processo em duas etapas que é dividido entre os VMs MUX e o anfitrião Hiper-V onde o dip de destino está localizado:

  1. Equilíbrio de carga - o MUX utiliza o VIP para selecionar um DIP, encapsula o pacote e encaminha o tráfego para o anfitrião Hyper-V onde o DIP está localizado.

  2. Tradução do endereço de rede (NAT) - o anfitrião Hyper-V remove a encapsulação do pacote, traduz o VIP para um DIP, remaps as portas e encaminha o pacote para o DIP VM.

O MUX sabe como mapear VIPs para os DIPs corretos devido às políticas de equilíbrio de carga que define usando o Controlador de Rede. Estas regras incluem Protocolo, Porta Frontal, Porta traseira e algoritmo de distribuição (5, 3 ou 2 tuples).

Quando os VMs do inquilino respondem e enviam o tráfego de rede de saída de volta para a internet ou locais de inquilino remoto, porque o NAT é realizado pelo anfitrião Hyper-V, o tráfego contorna o MUX e vai diretamente para o router de borda do anfitrião Hyper-V. Este processo de bypass MUX chama-se Direct Server Return (DSR).

E após o fluxo de tráfego inicial da rede ser estabelecido, o tráfego de rede de entrada contorna completamente o SLB MUX.

Na seguinte ilustração, um computador cliente executa uma consulta DENS para o endereço IP de um site da empresa SharePoint - neste caso, uma empresa fictícia chamada Contoso. Ocorre o seguinte processo:

  1. O servidor DNS devolve o VIP 107.105.47.60 ao cliente.

  2. O cliente envia um pedido HTTP ao VIP.

  3. A rede física tem vários caminhos disponíveis para chegar ao VIP localizado em qualquer MUX. Cada router ao longo do caminho utiliza o ECMP para escolher o próximo segmento do caminho até que o pedido chegue a um MUX.

  4. O MUX que recebe o pedido verifica as políticas configuradas, e vê que existem dois DIPs disponíveis, 10.10.10.5 e 10.10.20.5, numa rede virtual para lidar com o pedido ao VIP 107.105.47.60, numa rede virtual para lidar com o pedido ao VIP 107.105.47.60

  5. O MUX seleciona DIP 10.10.10.5 e encapsula os pacotes utilizando o VXLAN para que possa enviá-lo para o anfitrião contendo o DIP utilizando o endereço de rede física do anfitrião.

  6. O hospedeiro recebe o pacote encapsulado e inspeciona-o. Remove a encapsulação e reescreve o pacote de modo a que o destino seja agora DIP 10.10.10.5 em vez do VIP, e, em seguida, envia o tráfego para DIP VM.

  7. O pedido chega ao site Contoso SharePoint na Server Farm 2. O servidor gera uma resposta e envia-a para o cliente, utilizando o seu próprio endereço IP como fonte.

  8. O anfitrião interceta o pacote de saída no interruptor virtual que se lembra que o cliente, agora o destino, fez o pedido original ao VIP. O anfitrião reescreve a origem do pacote para ser o VIP para que o cliente não veja o endereço DIP.

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

Processo de equilíbrio de carga de software

Carga equilibrando tráfego interno de datacenter

Quando o equilíbrio de rede de equilíbrio interno para o datacenter, como entre os recursos do inquilino que estão a funcionar em diferentes servidores e são membros da mesma rede virtual, o interruptor virtual Hyper-V ao qual os VMs estão conectados executa o NAT.

Com o equilíbrio da carga de tráfego interno, o primeiro pedido é enviado e processado pelo MUX, que seleciona o DIP apropriado, e depois encaminha o tráfego para o DIP. A partir daí, o fluxo de tráfego estabelecido contorna o MUX e vai diretamente de VM para VM.

Sondas do estado de funcionamento

O Balancer de Carga de Software inclui sondas de saúde para validar a saúde da infraestrutura de rede, incluindo as seguintes:

  • Sonda TCP para o porto

  • Sonda HTTP para porta e URL

Ao contrário de um aparelho equilibrador de carga tradicional, onde a sonda se origina no aparelho e viaja através do fio até ao DIP, a sonda SLB origina-se no hospedeiro onde se encontra o DIP e vai diretamente do agente anfitrião SLB para o DIP, distribuindo ainda mais o trabalho pelos anfitriões.

Infraestrutura de balanceador de carga de software

Antes de configurar o Balancer de Carga de Software, tem primeiro de implantar o Controlador de Rede e um ou mais VMs SLB MUX.

Além disso, tem de configurar os anfitriões HCI da Stack Azure com o interruptor virtual Hiper-V ativado pela SDN e garantir que o Agente anfitrião SLB está a funcionar. Os routers que servem os anfitriões devem apoiar o encaminhamento ECMP e o Protocolo de Gateway fronteiriço (BGP), e devem ser configurados para aceitar os pedidos de observação do BGP dos MUXes SLB.

O seguinte número fornece uma visão geral da infraestrutura SLB.

Infraestrutura de Balancer de Carga de Software

As secções seguintes fornecem mais informações sobre estes elementos da infraestrutura do Balancer de Carga de Software.

Controlador de Rede

O Controlador de Rede acolhe o Gestor SLB e executa as seguintes ações para o Balancer de Carga de Software:

  • Processes Comandos SLB que entram através da API de Northbound a partir de Windows Centro de Administração, System Center, Windows PowerShell ou outra aplicação de gestão de rede.

  • Calcula a política de distribuição para os anfitriões HCI da Azure Stack e muxes SLB.

  • Fornece o estado de saúde da infraestrutura de Balancer de Carga de Software.

Pode utilizar Windows Centro de Administração ou Windows PowerShell para instalar e configurar o Controlador de Rede e outras infraestruturas SLB.

SLB MUX

O SLB MUX processa o tráfego de rede de entrada e mapeia VIPs para DIPs, em seguida, encaminha o tráfego para o DIP correto. Cada MUX também usa BGP para publicar rotas VIP para routers de borda. O BGP Keep Alive notifica os MUXes quando um MUX falha, o que permite que os MUXes ativos redistribuam a carga em caso de falha de MUX. Isto essencialmente proporciona equilíbrio de carga para os equilibradores de carga.

Agente anfitrião SLB

Quando implementar o Balancer de Carga de Software, deve utilizar Windows Centro de Administração, System Center, Windows PowerShell ou outra aplicação de gestão para implantar o Agente anfitrião SLB em todos os servidores anfitriões.

O Agente Anfitrião SLB ouve atualizações de política SLB do Controlador de Rede. Além disso, os programas de programas de agente anfitrião para SLB nos interruptores virtuais hiper-V ativados pela SDN que estão configurados no computador local.

Interruptor virtual hiper-V ativado pela SDN

Para que um interruptor virtual seja compatível com o SLB, a extensão da Plataforma de Filtragem Virtual (VFP) deve ser ativada no interruptor virtual. Isto é feito automaticamente pelos scripts PowerShell de implementação SDN, Windows assistente de implementação do Centro de Administração e System Center Virtual Machine Manager (SCVMM).

Para obter informações sobre a ativação do VFP nos interruptores virtuais, consulte os comandos Windows PowerShell Get-VMSystemSwitchExtension e Enable-VMSwitchExtension.

O interruptor virtual Hiper-V ativado pela SDN executa as seguintes ações para SLB:

  • Processa o caminho dos dados para o SLB.

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

  • Contorna o MUX para tráfego de rede de saída, enviando-o para o router utilizando dSR.

Router BGP

O router BGP executa as seguintes ações para o Balancer de Carga de Software:

  • Rotas de entrada para o MUX utilizando ecmp.

  • Para o tráfego de rede de saída, utiliza a rota fornecida pelo anfitrião.

  • Ouça as atualizações de rotas para VIPs do SLB MUX.

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

Funcionalidades do balanceador de carga de software

As secções seguintes descrevem algumas das funcionalidades e capacidades do Balancer de Carga de Software.

Funcionalidade central

  • A SLB fornece serviços de equilíbrio de carga da Camada 4 para o tráfego de TCP/UDP norte/sul e leste/oeste.

  • Pode utilizar o SLB numa rede baseada em virtualização de rede Hiper-V.

  • Pode utilizar o SLB com uma rede baseada em VLAN para VMs DIP ligados a um interruptor virtual SDN Ativado hyper-V.

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

  • SLB e DIP suportam uma trajetória de retorno escalável e de baixa latência, conforme implementado pela DSR.

  • SLB funciona quando também está a utilizar a Switch Embedded Teaming (SET) ou a Virtualização de Entrada/Saída de Saída (SR-IOV).

  • O SLB inclui o suporte ao Protocolo de Internet versão 6 (IPv6) e à versão 4 (IPv4).

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

Escala e desempenho

  • Pronto para a escala de nuvens, incluindo capacidade de escala e escala para MUXes e Agentes hospedeiros.

  • Um módulo ativo do Controlador de Rede SLB Manager pode suportar oito instâncias MUX.

Elevada disponibilidade

  • Pode colocar o SLB em mais de dois nós numa configuração ativa/ativa.

  • OS MUXes podem ser adicionados e removidos da piscina MUX sem afetar o serviço SLB. Isto mantém a disponibilidade de SLB quando os MUXes individuais estão a ser remendados.

  • As instâncias individuais do MUX têm um tempo de 99%.

  • Os dados de monitorização da saúde estão disponíveis para as entidades gestoras.

Passos seguintes

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