Tutorial: Criar um balanceador de carga de gateway usando a CLI do Azure
O Azure Load Balancer consiste em SKUs Standard, Basic e Gateway. O Gateway Load Balancer é usado para inserção transparente de Network Virtual Appliances (NVA). Use o Gateway Load Balancer para cenários que exigem alto desempenho e alta escalabilidade de NVAs.
Neste tutorial, irá aprender a:
- Crie uma rede virtual.
- Crie um grupo de segurança de rede.
- Crie um balanceador de carga de gateway.
- Encadeie um frontend do balanceador de carga ao balanceador de carga do gateway.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
Este tutorial requer a versão 2.0.28 ou posterior da CLI do Azure. Se estiver usando o Azure Cloud Shell, a versão mais recente já está instalada.
Uma conta do Azure com uma assinatura ativa.Crie uma conta gratuitamente.
Um Balanceador de Carga do Azure SKU padrão público existente. Para obter mais informações sobre como criar um balanceador de carga, consulte Criar um balanceador de carga público usando a CLI do Azure.
- Para os fins deste tutorial, o balanceador de carga existente nos exemplos é chamado myLoadBalancer.
Criar um grupo de recursos
Um grupo de recursos do Azure é um contentor lógico no qual os recursos do Azure são implementados e geridos.
Crie um grupo de recursos com az group create:
az group create \
--name TutorGwLB-rg \
--location eastus
Configurar uma rede virtual
Uma rede virtual é necessária para os recursos que estão no pool de back-end do balanceador de carga do gateway.
Criar a rede virtual
Use 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 bastião
Use az network public-ip create para criar um endereço IP público para o host do Azure Bastion
az network public-ip create \
--resource-group TutorGwLB-rg \
--name myBastionIP \
--sku Standard \
--zone 1 2 3
Criar sub-rede bastião
Use az network vnet subnet create para criar a sub-rede bastion.
az network vnet subnet create \
--resource-group TutorGwLB-rg \
--name AzureBastionSubnet \
--vnet-name myVNet \
--address-prefixes 10.1.1.0/27
Criar host bastião
Use az network bastion create para implantar um host bastion para 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
Pode levar alguns minutos para o host do Azure Bastion implantar.
Importante
O preço por hora começa a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para obter mais informações, consulte Preços e SKUs. Se você estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos excluir esse recurso depois de terminar de usá-lo.
Configurar o NSG
Use o exemplo a seguir para criar um grupo de segurança de rede. Você configurará as regras NSG necessárias para o tráfego de rede na rede virtual criada anteriormente.
Criar o NSG
Use az network nsg create para criar o NSG.
az network nsg create \
--resource-group TutorGwLB-rg \
--name myNSG
Criar regras NSG
Use 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 o Balanceador de Carga de Gateway
Nesta seção, você criará a configuração e implantará o balanceador de carga do gateway.
Criar balanceador de carga de gateway
Para criar o balanceador de carga, use 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 o de 900 e --port
o --identifier
de 10800.
Você usará az network lb address-pool tunnel-interface add para criar uma 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 sonda de integridade
Uma sonda de integridade é necessária para monitorar a integridade das instâncias de back-end no balanceador de carga. Use az network lb probe create para criar a sonda 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 regra de balanceamento de carga
O tráfego destinado às instâncias de back-end é roteado com uma regra de balanceamento de carga. Use 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 dispositivos virtuais de rede ao pool de back-end do Balanceador de Carga de Gateway
Implante NVAs por meio do Azure Marketplace. Uma vez implantado, adicione as máquinas virtuais ao pool de back-end com az network nic ip-config address-pool add.
Frontend do balanceador de carga em cadeia para o Balanceador de Carga do Gateway
Neste exemplo, você encadeará o front-end de um balanceador de carga padrão ao balanceador de carga do gateway.
Você adicionará o frontend ao IP de frontend de um balanceador de carga existente em sua assinatura.
Use az network lb frontend-ip show para colocar o ID do recurso do frontend do balanceador de carga do gateway em uma variável.
Use az network lb frontend-ip update para encadear o frontend do balanceador de carga do gateway ao seu 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 a máquina virtual com o Balanceador de Carga de Gateway
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 az network lb frontend-ip show para colocar o ID do recurso do frontend do balanceador de carga do gateway em uma variável.
Use az network lb frontend-ip update para encadear o frontend do balanceador de carga do gateway à configuração IP da NIC da 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
Clean up resources (Limpar 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óximos passos
Crie Dispositivos Virtuais de Rede no Azure.
Ao criar os NVAs, escolha os recursos criados neste tutorial:
Rede virtual
Sub-rede
Grupo de segurança de rede
Experimente agora o Balanceador de Carga de Gateway
Avance para o próximo artigo para saber como criar um Balanceador de Carga do Azure entre regiões.