Componentes do Azure Load Balancer
O Azure Load Balancer inclui alguns componentes principais. Esses componentes podem ser configurados em sua assinatura por meio do portal do Azure, CLI do Azure, Azure PowerShell, Modelos do Gerenciador de Recursos ou alternativas apropriadas.
Configuração de IP frontend
O endereço IP do seu Balanceador de Carga do Azure. É o ponto de contacto para os clientes. Estes endereços IP podem ser:
- Endereço IP público
- Endereço IP privado
A natureza do endereço IP determina o tipo de balanceador de carga criado. A seleção de endereços IP privados cria um balanceador de carga interno. A seleção de endereço IP público cria um balanceador de carga público.
Balanceador de carga público | Balanceador de carga interno | |
---|---|---|
Configuração de IP frontend | Endereço IP público | Endereço IP privado |
Descrição | Um balanceador de carga público mapeia o IP público e a porta do tráfego de entrada para o IP privado e a porta da VM. O balanceador de carga mapeia o tráfego ao contrário para o tráfego de resposta da VM. Você pode distribuir tipos específicos de tráfego entre várias VMs ou serviços aplicando regras de balanceamento de carga. Por exemplo, pode distribuir a carga do tráfego de pedidos da Web entre múltiplos servidores Web. | Um balanceador de carga interno distribui o tráfego para recursos que estão dentro de uma rede virtual. O Azure restringe o acesso aos endereços IP front-end de uma rede virtual com balanceamento de carga. Os endereços IP frontend e as redes virtuais nunca são expostos diretamente a um ponto de extremidade da Internet, o que significa que um balanceador de carga interno não pode aceitar tráfego de entrada da Internet. As aplicações de linha de negócio internas são executadas no Azure e acedidas de dentro do Azure ou a partir de recursos no local. |
SKUs suportados | Básico, Standard | Básico, Standard |
O balanceador de carga pode ter vários IPs de frontend. Saiba mais sobre vários frontends.
Conjunto de back-end
O grupo de máquinas virtuais ou instâncias em um conjunto de escala de máquina virtual que está atendendo à solicitação de entrada. Para dimensionar de forma econômica para atender a grandes volumes de tráfego de entrada, as diretrizes de computação geralmente recomendam a adição de mais instâncias ao pool de back-end.
O balanceador de carga se reconfigura instantaneamente por meio de reconfiguração automática quando você dimensiona instâncias para cima ou para baixo. Adicionar ou remover VMs do pool de back-end reconfigura o balanceador de carga sem outras operações. O escopo do pool de back-end é qualquer máquina virtual em uma única rede virtual.
Os pools de back-end suportam a adição de instâncias via interface de rede ou endereços IP. As VMs não precisam de um endereço IP público para serem anexadas ao pool de back-end de um balanceador de carga público. As VMs podem ser anexadas ao pool de back-end de um balanceador de carga, mesmo que estejam em um estado interrompido. Você também pode configurar vários pools de back-end com diferentes grupos de instâncias para um único balanceador de carga. Ao criar várias regras de balanceamento de carga, cada uma direcionada a um pool de back-end diferente, você pode configurar o tráfego para distribuir para diferentes conjuntos de recursos de back-end com base na porta e no protocolo de front-end do balanceador de carga.
Ao considerar como projetar seu pool de back-end, projete para o menor número de recursos individuais do pool de back-end para otimizar a duração das operações de gerenciamento. Não há diferença no desempenho ou na escala do plano de dados.
Sondas do estado de funcionamento
Uma investigação de integridade é usada para determinar o status de integridade das instâncias no pool de back-end. Durante a criação do balanceador de carga, configure uma sonda de integridade para o balanceador de carga usar. Essa investigação de integridade determina se uma instância está íntegra e pode receber tráfego.
Você pode definir o limite insalubre para suas sondas de saúde. Quando um teste não responde, o balanceador de carga para de enviar novas conexões para as instâncias não íntegras. Uma falha de sonda não afeta as conexões existentes. A conexão continua até que o aplicativo:
- Termina o fluxo
- O tempo limite ocioso ocorre
- A VM é desligada
O balanceador de carga fornece diferentes tipos de teste de integridade para pontos de extremidade: TCP, HTTP e HTTPS. Saiba mais sobre as sondas de integridade do balanceador de carga.
O balanceador de carga básico não suporta testes HTTPS. O balanceador de carga básico fecha todas as conexões TCP (incluindo conexões estabelecidas).
Regras do Balanceador de Carga
Uma regra de balanceador de carga é usada para definir como o tráfego de entrada é distribuído para todas as instâncias dentro do pool de back-end. Uma regra de balanceamento de carga mapeia uma determinada configuração e porta IP de front-end para vários endereços IP e portas de back-end. As regras do Balanceador de Carga são apenas para tráfego de entrada.
Por exemplo, use uma regra de balanceador de carga para a porta 80 para rotear o tráfego do IP do frontend para a porta 80 das instâncias de back-end.
Figura: Regras de balanceamento de carga
Portas de alta disponibilidade
Uma regra de balanceador de carga configurada com 'protocol - all and port - 0' é conhecida como uma regra de porta de alta disponibilidade (HA). Esta regra permite que uma única regra balanceie a carga de todos os fluxos TCP e UDP que chegam em todas as portas de um Balanceador de Carga Padrão interno.
A decisão de balanceamento de carga é tomada por fluxo. Esta ação baseia-se na seguinte conexão de cinco tuplas:
- endereço IP de origem
- porta de origem
- endereço IP de destino
- porta de destino
- protocolo
As regras de balanceamento de carga de portas HA ajudam você em cenários críticos, como alta disponibilidade e dimensionamento para dispositivos virtuais de rede (NVAs) dentro de redes virtuais. O recurso pode ajudar quando um grande número de portas deve ser balanceado de carga.
Figura: Regras de portas HA
Saiba mais sobre as portas HA.
Regras NAT de entrada
Uma regra NAT de entrada encaminha o tráfego de entrada enviado para o endereço IP frontend e a combinação de portas. O tráfego é enviado para uma máquina virtual ou instância específica no pool de back-end. O encaminhamento de portas é feito pela mesma distribuição baseada em hashes como balanceamento de carga.
Figura: Regras de NAT de entrada
Regras de saída
Uma regra de saída configura NAT (Network Address Translation) de saída para todas as máquinas virtuais ou instâncias identificadas pelo pool de back-end. Essa regra permite que instâncias no back-end se comuniquem (saída) com a Internet ou outros pontos de extremidade.
Saiba mais sobre conexões de saída e regras.
O balanceador de carga básico não suporta regras de saída.
Figura: Regras de saída
Limitações
- Saiba mais sobre os limites do balanceador de carga
- O balanceador de carga fornece balanceamento de carga e encaminhamento de porta para protocolos TCP ou UDP específicos. As regras de balanceamento de carga e as regras NAT de entrada suportam TCP e UDP, mas não outros protocolos IP, incluindo ICMP.
- O pool de back-end do Load Balancer não pode consistir em um ponto de extremidade privado.
- O fluxo de saída de uma VM de back-end para um frontend de um Load Balancer interno falhará.
- Uma regra de balanceador de carga não pode abranger duas redes virtuais. Todos os frontends do balanceador de carga e suas instâncias de back-end devem estar em uma única rede virtual.
- O encaminhamento de fragmentos IP não é suportado em regras de balanceamento de carga. A fragmentação IP de pacotes UDP e TCP não é suportada em regras de balanceamento de carga.
- Você só pode ter um Balanceador de Carga Público (baseado em NIC) e um Balanceador de Carga interno (baseado em NIC) por conjunto de disponibilidade. No entanto, essa restrição não se aplica a balanceadores de carga baseados em IP.