Balanceamento de carga em várias configurações de IP com a CLI do Azure
Este artigo descreve como utilizar Balanceador de Carga do Azure com vários endereços IP numa interface de rede secundária (NIC). Para este cenário, temos duas VMs a executar o Windows, cada uma com uma NIC primária e secundária. Cada um dos NICs secundários tem duas configurações de IP. Cada VM aloja os sites contoso.com e fabrikam.com. Cada site está vinculado a uma das configurações de IP na NIC secundária. Utilizamos Balanceador de Carga do Azure para expor dois endereços IP de front-end, um para cada site, para distribuir o tráfego para a respetiva configuração de IP do site. Este cenário utiliza o mesmo número de porta em ambos os front-ends, bem como ambos os endereços IP do conjunto de back-end.
Passos para o balanceamento de carga em várias configurações de IP
Para alcançar o cenário descrito neste artigo, conclua os seguintes passos:
Instale e Configure a CLI do Azure ao seguir os passos no artigo ligado e inicie sessão na sua conta do Azure.
Crie um grupo de recursos denominado contosofabrikam da seguinte forma:
az group create contosofabrikam westcentralus
Crie um conjunto de disponibilidade para as duas VMs. Para este cenário, utilize o seguinte comando:
az vm availability-set create --resource-group contosofabrikam --location westcentralus --name myAvailabilitySet
Crie uma rede virtual denominada myVNet e uma sub-rede denominada mySubnet:
az network vnet create --resource-group contosofabrikam --name myVnet --address-prefixes 10.0.0.0/16 --location westcentralus --subnet-name MySubnet --subnet-prefix 10.0.0.0/24
Crie o balanceador de carga denominado mylb:
az network lb create --resource-group contosofabrikam --location westcentralus --name mylb
Crie dois endereços IP públicos dinâmicos para as configurações de IP de front-end do balanceador de carga:
az network public-ip create --resource-group contosofabrikam --location westcentralus --name PublicIp1 --domain-name-label contoso --allocation-method Dynamic az network public-ip create --resource-group contosofabrikam --location westcentralus --name PublicIp2 --domain-name-label fabrikam --allocation-method Dynamic
Crie as duas configurações de IP de front-end, contosofe e fabrikamfe , respetivamente:
az network lb frontend-ip create --resource-group contosofabrikam --lb-name mylb --public-ip-name PublicIp1 --name contosofe az network lb frontend-ip create --resource-group contosofabrikam --lb-name mylb --public-ip-name PublicIp2 --name fabrkamfe
Crie os conjuntos de endereços de back-end – contosopool e fabrikampool, uma pesquisa - HTTP e as regras de balanceamento de carga – HTTPc e HTTPf:
az network lb address-pool create --resource-group contosofabrikam --lb-name mylb --name contosopool azure network lb address-pool create --resource-group contosofabrikam --lb-name mylb --name fabrikampool az network lb probe create --resource-group contosofabrikam --lb-name mylb --name HTTP --protocol "http" --interval 15 --count 2 --path index.html az network lb rule create --resource-group contosofabrikam --lb-name mylb --name HTTPc --protocol tcp --probe-name http--frontend-port 5000 --backend-port 5000 --frontend-ip-name contosofe --backend-address-pool-name contosopool az network lb rule create --resource-group contosofabrikam --lb-name mylb --name HTTPf --protocol tcp --probe-name http --frontend-port 5000 --backend-port 5000 --frontend-ip-name fabrkamfe --backend-address-pool-name fabrikampool
Verifique o resultado para verificar se o balanceador de carga foi criado corretamente ao executar o seguinte comando:
az network lb show --resource-group contosofabrikam --name mylb
Crie um IP público, myPublicIp e uma conta de armazenamento, mystorageaccont1 para a sua primeira máquina virtual VM1 da seguinte forma:
az network public-ip create --resource-group contosofabrikam --location westcentralus --name myPublicIP --domain-name-label mypublicdns345 --allocation-method Dynamic az storage account create --location westcentralus --resource-group contosofabrikam --kind Storage --sku-name GRS mystorageaccount1
Crie as interfaces de rede da VM1 e adicione uma segunda configuração de IP, VM1-ipconfig2 e crie a VM da seguinte forma:
az network nic create --resource-group contosofabrikam --location westcentralus --subnet-vnet-name myVnet --subnet-name mySubnet --name VM1Nic1 --ip-config-name NIC1-ipconfig1 az network nic create --resource-group contosofabrikam --location westcentralus --subnet-vnet-name myVnet --subnet-name mySubnet --name VM1Nic2 --ip-config-name VM1-ipconfig1 --public-ip-name myPublicIP --lb-address-pool-ids "/subscriptions/<your subscription ID>/resourceGroups/contosofabrikam/providers/Microsoft.Network/loadBalancers/mylb/backendAddressPools/contosopool" az network nic ip-config create --resource-group contosofabrikam --nic-name VM1Nic2 --name VM1-ipconfig2 --lb-address-pool-ids "/subscriptions/<your subscription ID>/resourceGroups/contosofabrikam/providers/Microsoft.Network/loadBalancers/mylb/backendAddressPools/fabrikampool" az vm create --resource-group contosofabrikam --name VM1 --location westcentralus --os-type linux --nic-names VM1Nic1,VM1Nic2 --vnet-name VNet1 --vnet-subnet-name Subnet1 --availability-set myAvailabilitySet --vm-size Standard_DS3_v2 --storage-account-name mystorageaccount1 --image-urn canonical:UbuntuServer:16.04.0-LTS:latest --admin-username <your username> --admin-password <your password>
Repita os passos 10 a 11 para a segunda VM:
az network public-ip create --resource-group contosofabrikam --location westcentralus --name myPublicIP2 --domain-name-label mypublicdns785 --allocation-method Dynamic az storage account create --location westcentralus --resource-group contosofabrikam --kind Storage --sku-name GRS mystorageaccount2 az network nic create --resource-group contosofabrikam --location westcentralus --subnet-vnet-name myVnet --subnet-name mySubnet --name VM2Nic1 az network nic create --resource-group contosofabrikam --location westcentralus --subnet-vnet-name myVnet --subnet-name mySubnet --name VM2Nic2 --ip-config-name VM2-ipconfig1 --public-ip-name myPublicIP2 --lb-address-pool-ids "/subscriptions/<your subscription ID>/resourceGroups/contosofabrikam/providers/Microsoft.Network/loadBalancers/mylb/backendAddressPools/contosopool" az network nic ip-config create --resource-group contosofabrikam --nic-name VM2Nic2 --name VM2-ipconfig2 --lb-address-pool-ids "/subscriptions/<your subscription ID>/resourceGroups/contosofabrikam/providers/Microsoft.Network/loadBalancers/mylb/backendAddressPools/fabrikampool" az vm create --resource-group contosofabrikam --name VM2 --location westcentralus --os-type linux --nic-names VM2Nic1,VM2Nic2 --vnet-name VNet1 --vnet-subnet-name Subnet1 --availability-set myAvailabilitySet --vm-size Standard_DS3_v2 --storage-account-name mystorageaccount2 --image-urn canonical:UbuntuServer:16.04.0-LTS:latest --admin-username <your username> --admin-password <your password>
Por fim, tem de configurar os registos de recursos DNS para apontar para o respetivo endereço IP de front-end do Balanceador de Carga. Pode alojar os seus domínios no DNS do Azure. Para obter mais informações sobre como utilizar o DNS do Azure com Balanceador de Carga, veja Utilizar o DNS do Azure com outros serviços do Azure.
Passos seguintes
- Saiba mais sobre como combinar serviços de balanceamento de carga no Azure em Utilizar serviços de balanceamento de carga no Azure.
- Saiba como pode utilizar diferentes tipos de registos no Azure para gerir e resolver problemas do balanceador de carga no Log Analytics para Balanceador de Carga do Azure.