Tutorial: Criar um balanceador de carga para gateway usando a CLI do Azure
O Azure Load Balancer é formado por SKUs Standard, Básico e Gateway. O Balanceador de Carga para Gateway é usado para inserir NVAs (soluções de virtualização de rede) de maneira transparente. Use o Balanceador de Carga para Gateway em cenários que exigem alto desempenho e alta escalabilidade de NVAs.
Neste tutorial, você aprenderá como:
- Crie a rede virtual.
- Criar um grupo de segurança de rede.
- Criar um balanceador de carga para gateway.
- Encadear um front-end de balanceador de carga ao balanceador de carga para gateway.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, confira Início Rápido para Bash no Azure Cloud Shell.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
Este tutorial exige a versão 2.0.28 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.
Uma conta do Azure com uma assinatura ativa.Criar uma conta gratuitamente.
Um SKU padrão público existente do Azure Load Balancer. Para saber mais sobre como criar um balanceador de carga, confira Criar um balanceador de carga público com a CLI do Azure .
- Para os fins deste tutorial, o balanceador de carga existente nos exemplos é denominado myLoadBalancer.
Criar um grupo de recursos
Um grupo de recursos do Azure é um contêiner lógico no qual os recursos do Azure são implantados e gerenciados.
Crie um grupo de recursos com az group create:
az group create \
--name TutorGwLB-rg \
--location eastus
Configurar rede virtual
Uma rede virtual é necessária para os recursos que estão no pool de back-end do balanceador de carga para gateway.
Criar rede virtual
Use o comando az network vnet create para criar a rede virtual.
az network vnet create \
--resource-group TutorGwLB-rg \
--location eastus \
--name myVNet \
--address-prefixes 10.1.0.0/16 \
--subnet-name myBackendSubnet \
--subnet-prefixes 10.1.0.0/24
Criar endereço IP público do bastion
Use o comando az network public-ip create para criar um endereço IP público para o Azure Bastion host.
az network public-ip create \
--resource-group TutorGwLB-rg \
--name myBastionIP \
--sku Standard \
--zone 1 2 3
Criar sub-rede do bastion
Use o comando az network vnet subnet create para criar a sub-rede do bastion.
az network vnet subnet create \
--resource-group TutorGwLB-rg \
--name AzureBastionSubnet \
--vnet-name myVNet \
--address-prefixes 10.1.1.0/27
Criar um bastion host
Use o comando az network bastion create para implantar um bastion host e fazer o gerenciamento seguro de recursos na rede virtual.
az network bastion create \
--resource-group TutorGwLB-rg \
--name myBastionHost \
--public-ip-address myBastionIP \
--vnet-name myVNet \
--location eastus
Levará alguns minutos para que o host do Azure Bastion seja implantado.
Importante
Os preços por hora começam a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para saber mais, confira Preços e SKUs. Se estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos que você exclua esse recurso após terminar de usá-lo.
Configurar o NSG
Siga o exemplo a seguir para criar um grupo de segurança de rede. Você vai configurar as regras de NSG necessárias para o tráfego de rede na rede virtual criada antes.
Criar NSG
Use o comando az network nsg create para criar o NSG.
az network nsg create \
--resource-group TutorGwLB-rg \
--name myNSG
Criar regras NSG
Use o comando az network nsg rule create para criar regras para o NSG.
az network nsg rule create \
--resource-group TutorGwLB-rg \
--nsg-name myNSG \
--name myNSGRule-AllowAll \
--protocol '*' \
--direction inbound \
--source-address-prefix '0.0.0.0/0' \
--source-port-range '*' \
--destination-address-prefix '0.0.0.0/0' \
--destination-port-range '*' \
--access allow \
--priority 100
az network nsg rule create \
--resource-group TutorGwLB-rg \
--nsg-name myNSG \
--name myNSGRule-AllowAll-TCP-Out \
--protocol 'TCP' \
--direction outbound \
--source-address-prefix '0.0.0.0/0' \
--source-port-range '*' \
--destination-address-prefix '0.0.0.0/0' \
--destination-port-range '*' \
--access allow \
--priority 100
Configurar um Balanceador de Carga para Gateway
Nesta seção, você criará a configuração e implantará o balanceador de carga para gateway.
Criar um Balanceador de Carga para Gateway
Para criar o balanceador de carga, use o comando az network lb create.
az network lb create \
--resource-group TutorGwLB-rg \
--name myLoadBalancer-gw \
--sku Gateway \
--vnet-name myVNet \
--subnet myBackendSubnet \
--backend-pool-name myBackendPool \
--frontend-ip-name myFrontEnd
Criar interface de túnel
Uma interface interna é criada automaticamente com a CLI do Azure com --identifier
de 900 e --port
de 10800.
Você usará o comando az network lb address-pool tunnel-interface add para criar a interface de túnel externo para o balanceador de carga.
az network lb address-pool tunnel-interface add \
--address-pool myBackEndPool \
--identifier '901' \
--lb-name myLoadBalancer-gw \
--protocol VXLAN \
--resource-group TutorGwLB-rg \
--type External \
--port '10801'
Criar uma investigação de integridade
É necessária uma investigação de integridade para monitorar as instâncias de back-end no balanceador de carga. Use o comando az network lb probe create para criar a investigação de integridade.
az network lb probe create \
--resource-group TutorGwLB-rg \
--lb-name myLoadBalancer-gw \
--name myHealthProbe \
--protocol http \
--port 80 \
--path '/' \
--interval '5' \
--threshold '2'
Criar uma regra de balanceamento de carga
O tráfego destinado às instâncias de back-end é roteado com uma regra de balanceamento de carga. Use o comando az network lb rule create para criar a regra de balanceamento de carga.
az network lb rule create \
--resource-group TutorGwLB-rg \
--lb-name myLoadBalancer-gw \
--name myLBRule \
--protocol All \
--frontend-port 0 \
--backend-port 0 \
--frontend-ip-name myFrontEnd \
--backend-pool-name myBackEndPool \
--probe-name myHealthProbe
Adicionar soluções de virtualização de rede ao pool de back-end do Balanceador de Carga para Gateway
Implante NVAs por meio do Azure Marketplace. Depois de implantadas, adicione as máquinas virtuais ao pool de back-end com az network nic ip-config address-pool add.
Encadear um front-end de balanceador de carga ao Balanceador de Carga para Gateway
Neste exemplo, você encadeará o front-end de um balanceador de carga padrão ao balanceador de carga para gateway.
Adicione o front-end ao IP de front-end de um balanceador de carga existente em sua assinatura.
Use o comando az network lb frontend-ip show para colocar a ID do recurso do seu front-end do balanceador de carga para gateway em uma variável.
Use o comando az network lb frontend-ip update para encadear o front-end do balanceador de carga para gateway ao balanceador de carga existente.
feid=$(az network lb frontend-ip show \
--resource-group TutorGwLB-rg \
--lb-name myLoadBalancer-gw \
--name myFrontend \
--query id \
--output tsv)
az network lb frontend-ip update \
--resource-group CreatePubLBQS-rg \
--name myFrontendIP \
--lb-name myLoadBalancer \
--public-ip-address myPublicIP \
--gateway-lb $feid
Encadear máquina virtual ao Gateway do Load Balancer
Como alternativa, você pode encadear a configuração de IP da NIC de uma VM ao balanceador de carga do gateway.
Você adicionará o front-end do balanceador de carga do gateway à configuração de IP da NIC de uma VM existente.
Use o comando az network lb frontend-ip show para colocar a ID do recurso do seu front-end do balanceador de carga para gateway em uma variável.
Use o comando az network lb frontend-ip update para encadear o front-end do balanceador de carga do gateway à configuração de IP da NIC da sua VM existente.
feid=$(az network lb frontend-ip show \
--resource-group TutorGwLB-rg \
--lb-name myLoadBalancer-gw \
--name myFrontend \
--query id \
--output tsv)
az network nic ip-config update \
--resource-group MyResourceGroup
--nic-name MyNIC
--name MyIPconfig
--gateway-lb $feid
Limpar os recursos
Quando não for mais necessário, você poderá usar o comando az group delete para remover o grupo de recursos, o balanceador de carga e os recursos restantes.
az group delete \
--name TutorGwLB-rg
Próximas etapas
Crie soluções de virtualização de rede no Azure.
Ao criar as NVAs, escolha os recursos criados neste tutorial:
Rede virtual
Sub-rede
Grupo de segurança de rede
Balanceador de Carga para Gateway
Siga para o próximo artigo para aprender a criar um Azure Load Balancer entre regiões.