Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O balanceador de carga fornece várias funcionalidades para os aplicativos UDP e TCP.
IP flutuante
Alguns cenários de aplicativos preferem ou exigem o uso da mesma porta por várias instâncias do aplicativo em uma única VM no pool de back-end. Exemplos comuns de reutilização de porta incluem clusters de alta disponibilidade, dispositivos virtuais de rede e exposição de vários pontos de extremidade TLS sem nova criptografia. Para reutilizar a porta de back-end em diversas regras, habilite o IP flutuante na definição da regra. A habilitação do IP flutuante permite mais flexibilidade.
| Status de IP flutuante | Resultado |
|---|---|
| IP flutuante habilitado | O Azure altera o mapeamento de endereço IP para o IP do front-end do balanceador de carga. |
| IP flutuante desativado | O Azure expõe o endereço IP de instâncias da VM |
Nos diagramas, você vê como o mapeamento do endereço IP funciona antes e após a habilitação do IP Flutuante:
Configure o IP Flutuante em uma regra de Balanceador de Carga por meio do portal do Azure, API REST, CLI, PowerShell ou outro cliente. Além da configuração das regras, você também deve configurar o sistema operacional convidado da máquina virtual para poder usar IP flutuante.
O tipo de regra de IP Flutuante é a base de vários padrões de configuração do balanceador de carga. Um exemplo que está disponível no momento é a configuração Configurar um ou mais ouvintes do grupo de disponibilidade Always On. Ao longo do tempo, documentaremos mais esses cenários.
Configuração do sistema operacional de convidado de IP flutuante
Para funcionar, configure o Sistema Operacional Convidado para a máquina virtual receber todo o tráfego vinculado ao IP de front-end e à porta do balanceador de carga. A configuração da VM requer:
- adicionar um adaptador de rede de loopback
- configurando o loopback com o endereço IP de front-end do balanceador de carga
- garantindo que o sistema possa enviar/receber pacotes em interfaces que não tenham o endereço IP atribuído a essa interface. Os sistemas Windows exigem interfaces de configuração para usar o modelo de "host fraco". Para sistemas Linux, esse modelo normalmente é usado por padrão.
- configurar o firewall do host para permitir o tráfego na porta IP de front-end.
Observação
Os exemplos abaixo usam IPv4; para usar IPv6, substitua "ipv6" por "ipv4".
Servidor Windows
Expandir
Para cada máquina virtual no pool de back-end, adicione primeiro um adaptador de rede loopback usando o gerenciamento de adaptadores de rede do Windows Server. Depois, execute os seguintes comandos em um Prompt de Comando Windows elevado no servidor.
Para obter a lista de nomes de interface que você tem em sua VM, insira este comando:
netsh interface ipv4 show interfacePara a NIC da VM (gerenciada pelo Azure), insira o seguinte comando depois de substituir o nome da interface pelo nome da interface que você deseja usar:
netsh interface ipv4 set interface <interface-name> weakhostreceive=enabledPara cada interface de loopback que você adicionou, insira esses comandos depois de substituir loopback-interface-name pelo nome da interface de loopback e IP flutuante e máscara de rede do IP flutuante pelos valores apropriados que correspondem ao IP de frontend do balanceador de carga:
netsh interface ipv4 add addr <loopback-interface-name> <floating-IP> <floating-IPnetmask> netsh interface ipv4 set interface <loopback-interface-name> weakhostreceive=enabled weakhostsend=enabledSe o host convidado usar um firewall, certifique-se de configurar uma regra para que o tráfego possa alcançar a VM pelas portas apropriadas. Esta configuração de exemplo assume uma configuração de IP frontend do balanceador de carga 1.2.3.4 e uma regra de balanceamento de carga para a porta 80:
netsh int ipv4 set int "Ethernet" weakhostreceive=enabled netsh int ipv4 add addr "Loopback Pseudo-Interface 1" 1.2.3.4 255.255.255.0 netsh int ipv4 set int "Loopback Pseudo-Interface 1" weakhostreceive=enabled weakhostsend=enabled netsh advfirewall firewall add rule name="http" protocol=TCP localport=80 dir=in action=allow enable=yesVerifique se a interface de loopback tem o endereço IP frontend atribuído:
netsh interface ipv4 show addresses name="<loopback-interface-name>"Confirme que a saída inclui o endereço IP da frontend. A partir de um cliente que consiga acessar o balanceador de carga, conecte-se ao endereço IP e à porta da regra do front-end para verificar se o tráfego chega à máquina virtual.
Ubuntu
Expandir
Para cada VM no pool backend, execute os seguintes comandos por uma sessão SSH. O Linux já fornece o dispositivo de loopback lo; o comando usa lo:0 como rótulo de endereço, portanto, você não precisa criar uma interface de loopback separada.
Para obter a lista de nomes de interface que você tem em sua VM, digite este comando:
ip addrAdicione o endereço IP de front-end ao dispositivo de loopback. Substitua o floating-IP pelo endereço IP frontend do balanceador de carga e o floating-IPnetmask pelo comprimento do prefixo CIDR do Linux, como
24:sudo ip addr add <floating-IP>/<floating-IPnetmask> dev lo:0Se o host convidado usar um firewall, certifique-se de configurar uma regra para que o tráfego possa alcançar a VM pelas portas apropriadas. Esta configuração de exemplo assume uma configuração de IP frontend de balanceador de carga 1.2.3.4, uma regra de balanceamento de carga para a porta 80 e o uso do UFW (Uncomplicated Firewall) no Ubuntu.
sudo ip addr add 1.2.3.4/24 dev lo:0 sudo ufw allow 80/tcpVerifique se o dispositivo de loopback possui o endereço IP de front-end atribuído:
ip address show dev loConfirme que a saída inclui o endereço IP da frontend. A partir de um cliente que consiga acessar o balanceador de carga, conecte-se ao endereço IP e à porta da regra do front-end para verificar se o tráfego chega à máquina virtual.
Limitações
Quando você ativa o IP Flutuante, a conectividade de saída depende da configuração de IP da interface de rede que a aplicação usa e de como a aplicação se vincula ao endereço IP de frontend do loopback.
- Com o IP Flutuante habilitado em uma regra de balanceamento de carga, seu aplicativo deve usar a configuração de IP primário do adaptador de rede para saída.
- Se o aplicativo se vincular ao endereço IP de front-end configurado na interface de loopback do sistema operacional convidado, a conexão de saída do Azure não reescreve o fluxo de saída, fazendo com que o fluxo falhe. Examine os cenários de saída.
- Você não pode usar IP Flutuante em configurações de IP secundárias para cenários de Balanceamento de Carga. Essa limitação não se aplica a balanceadores de carga públicos em que a configuração de IP secundária é IPv6 e parte de uma configuração de pilha dupla ou a arquiteturas que utilizam um Gateway NAT para conectividade de saída.
Próximas etapas
- Saiba mais sobre como usar vários front-ends com o Azure Load Balancer.
- Aprenda sobre Conexões de saída do Azure Load Balancer.