Mover um Balanceador de Carga do Azure para outra região do Azure
Há vários cenários em que você deseja mover um balanceador de carga interno ou externo de uma região para outra. Por exemplo, talvez você queira criar outro balanceador de carga com a mesma configuração para teste. Você também pode querer mover um balanceador de carga para outra região como parte do planejamento de recuperação de desastres.
Em um sentido literal, você não pode mover um balanceador de carga do Azure de uma região para outra. Mas você pode usar um modelo do Azure Resource Manager para exportar a configuração existente e o endereço IP público de um balanceador de carga. Em seguida, você pode preparar o recurso em outra região exportando o balanceador de carga e o IP público para um modelo, modificando os parâmetros para corresponder à região de destino e, em seguida, implantando o modelo na nova região. Para obter mais informações sobre o Gerenciador de Recursos e modelos, consulte Exportar grupos de recursos para modelos.
Neste artigo, você aprenderá a mover um balanceador de carga externo ou interno de uma região do Azure para outra usando o portal do Azure ou o Azure PowerShell. Escolha a guia que corresponde ao seu método preferido e o tipo de balanceador de carga que você deseja mover.
Mover um balanceador de carga externo para outra região usando o portal do Azure
Use este procedimento para mover um balanceador de carga externo para outra região usando o portal do Azure ou o Azure PowerShell.
Pré-requisitos
Verifique se o balanceador de carga externo do Azure está na região do Azure da qual você deseja mover.
Os balanceadores de carga externos do Azure não podem ser movidos entre regiões. É necessário associar o novo balanceador de carga aos recursos na região de destino.
Para exportar uma configuração de balanceador de carga externo e implantar um modelo para criar um balanceador de carga externo em outra região, você precisa receber a função de Colaborador de Rede ou superior.
Identifique o layout de rede de origem e todos os recursos que você está usando no momento. Esse layout inclui, mas não se limita a, balanceadores de carga, grupos de segurança de rede, IPs públicos e redes virtuais.
Verifique se sua assinatura do Azure permite criar balanceadores de carga externos na região de destino. Contacte o suporte para ativar a quota necessária.
Certifique-se de que a sua subscrição tem recursos suficientes para suportar a adição dos load balancers. Veja Subscrição do Azure e limites de serviço, quotas e restrições.
Prepare-se e mova-se
Os procedimentos a seguir mostram como preparar o balanceador de carga externo para a movimentação usando um modelo do Gerenciador de Recursos e mover a configuração do balanceador de carga externo para a região de destino usando o portal do Azure. Você deve primeiro exportar a configuração IP pública do balanceador de carga externo.
Nota
Recomendamos que utilize o módulo Azure Az do PowerShell para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.
Exportar o modelo de IP público e implantar o IP público do portal
Inicie sessão no Portal do Azure e selecione Grupos de recursos.
Localize o grupo de recursos que contém o IP público de origem e selecione-o.
Selecione Configurações>Exportar modelo.
Selecione Implantar em Exportar modelo.
Selecione TEMPLATE>Edit parâmetros para abrir o arquivo parameters.json no editor online.
Para editar o parâmetro do nome IP público, altere a propriedade value em parâmetros do nome IP público de origem para o nome do IP público de destino. Coloque o nome entre aspas.
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "publicIPAddresses_myVM1pubIP_name": { "value": "<target-publicip-name>" } } }
Selecione Salvar no editor.
Selecione TEMPLATE>Edit template para abrir o arquivo template.json no editor online.
Para editar a região de destino para a qual o IP público será movido, altere a propriedade location em recursos:
"resources": [ { "type": "Microsoft.Network/publicIPAddresses", "apiVersion": "2019-06-01", "name": "[parameters('publicIPAddresses_myPubIP_name')]", "location": "<target-region>", "sku": { "name": "Standard", "tier": "Regional" }, "properties": { "provisioningState": "Succeeded", "resourceGuid": "7549a8f1-80c2-481a-a073-018f5b0b69be", "ipAddress": "52.177.6.204", "publicIPAddressVersion": "IPv4", "publicIPAllocationMethod": "Static", "idleTimeoutInMinutes": 4, "ipTags": [] } } ]
Para obter códigos de localização de região, consulte Localizações do Azure. O código de uma região é o nome da região sem espaços. Por exemplo, o código para Central US é centralus.
Você também pode alterar outros parâmetros no modelo, se quiser ou precisar, dependendo de suas necessidades:
SKU. Você pode alterar o SKU do IP público na configuração de padrão para básico ou de básico para padrão alterando a propriedade name em sku no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/publicIPAddresses", "apiVersion": "2019-06-01", "name": "[parameters('publicIPAddresses_myPubIP_name')]", "location": "<target-region>", "sku": { "name": "Standard", "tier": "Regional" },
Zona de disponibilidade. Você pode alterar a(s) zona(s) do IP público alterando a propriedade zone. Se a propriedade zone não for especificada, o IP público será criado como no-zone. Você pode especificar uma única zona para criar um IP público zonal ou todas as três zonas para um IP público redundante de zona.
"resources": [ { "type": "Microsoft.Network/publicIPAddresses", "apiVersion": "2019-06-01", "name": "[parameters('publicIPAddresses_myPubIP_name')]", "location": "<target-region>", "sku": { "name": "Standard", "tier": "Regional" }, "zones": [ "1", "2", "3" ],
Método de alocação de IP público e tempo limite ocioso. Você pode alterar o método de alocação de IP público alterando a propriedade publicIPAllocationMethod de Static para Dynamic ou de Dynamic para Static. Você pode alterar o tempo limite ocioso alterando a propriedade idleTimeoutInMinutes para o valor desejado. O padrão é 4.
"resources": [ { "type": "Microsoft.Network/publicIPAddresses", "apiVersion": "2019-06-01", "name": "[parameters('publicIPAddresses_myPubIP_name')]", "location": "<target-region>", "sku": { "name": "Standard", "tier": "Regional" }, "zones": [ "1", "2", "3" ], "properties": { "provisioningState": "Succeeded", "resourceGuid": "7549a8f1-80c2-481a-a073-018f5b0b69be", "ipAddress": "52.177.6.204", "publicIPAddressVersion": "IPv4", "publicIPAllocationMethod": "Static", "idleTimeoutInMinutes": 4, "ipTags": []
Para obter informações sobre os métodos de alocação e os valores de tempo limite ocioso, consulte Criar, alterar ou excluir um endereço IP público.
Selecione Salvar no editor online.
Selecione Assinatura BASICS>para escolher a assinatura onde o IP público de destino será implantado.
Selecione Grupo de recursos BASICS para escolher o grupo de>recursos onde o IP público de destino será implantado. Você pode selecionar Criar novo para criar um novo grupo de recursos para o IP público de destino. Verifique se o nome não é o mesmo que o grupo de recursos de origem do IP público de origem existente.
Verifique se BASICS Location está definido para o local de>destino onde você deseja que o IP público seja implantado.
Em CONFIGURAÇÕES, verifique se o nome corresponde ao nome que você inseriu anteriormente no editor de parâmetros.
Marque a caixa de seleção TERMOS E CONDIÇÕES .
Selecione Comprar para implantar o IP público de destino.
Se você tiver outro IP público que está sendo usado para NAT de saída para o balanceador de carga que está sendo movido, repita as etapas anteriores para exportar e implantar o segundo IP público de saída na região de destino.
Exportar o modelo de balanceador de carga externo e implantar o balanceador de carga do portal do Azure
Inicie sessão no Portal do Azure e selecione Grupos de recursos.
Localize o grupo de recursos que contém o balanceador de carga externo de origem e selecione-o.
Selecione Configurações>Exportar modelo.
Selecione Implantar em Exportar modelo.
Selecione TEMPLATE>Edit parâmetros para abrir o arquivo parameters.json no editor online.
Para editar o parâmetro do nome do balanceador de carga externo, altere a propriedade value do nome do balanceador de carga externo de origem para o nome do balanceador de carga externo de destino. Coloque o nome entre aspas.
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "loadBalancers_myLoadbalancer_ext_name": { "value": "<target-external-lb-name>" }, "publicIPAddresses_myPubIP_in_externalid": { "value": "<target-publicIP-resource-ID>" },
Para editar o valor do IP público de destino que você moveu nas etapas anteriores, você deve primeiro obter a ID do recurso e, em seguida, colá-la no arquivo parameters.json. Para obter o ID:
Em outra guia ou janela do navegador, entre no portal do Azure e selecione Grupos de recursos.
Localize o grupo de recursos de destino que contém o IP público que você moveu nas etapas anteriores. Selecione-a.
Selecione Configurações>Propriedades.
No lado direito, realce o ID do recurso e copie-o para a área de transferência. Como alternativa, você pode selecionar copiar para a área de transferência à direita do caminho da ID do recurso.
Cole o ID do recurso na propriedade value no editor Edit Parameters que está aberto na outra janela ou guia do navegador:
```json "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "loadBalancers_myLoadbalancer_ext_name": { "value": "<target-external-lb-name>" }, "publicIPAddresses_myPubIP_in_externalid": { "value": "<target-publicIP-resource-ID>" },
Selecione Salvar no editor online.
Se você configurou NAT de saída e regras de saída para o balanceador de carga, verá uma terceira entrada neste arquivo para a ID externa do IP público de saída. Repita as etapas anteriores na região de destino para obter a ID do IP público de saída. Cole esse ID no arquivo parameters.json:
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "loadBalancers_myLoadbalancer_ext_name": { "value": "<target-external-lb-name>", }, "publicIPAddresses_myPubIP_in_externalid": { "value": "<target-publicIP-resource-ID>", }, "publicIPAddresses_myPubIP_out_externalid": { "defaultValue": "<target-publicIP-outbound-resource-ID>", } },
Selecione TEMPLATE>Edit template para abrir o arquivo template.json no editor online.
Para editar a região de destino para a qual a configuração do balanceador de carga externo será movida, altere a propriedade location em recursos no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/loadBalancers", "apiVersion": "2019-06-01", "name": "[parameters('loadBalancers_myLoadBalancer_name')]", "location": "<target-external-lb-region>", "sku": { "name": "Standard", "tier": "Regional" },
Para obter códigos de localização de região, consulte Localizações do Azure. O código de uma região é o nome da região sem espaços. Por exemplo, o código para Central US é centralus.
Você também pode alterar outros parâmetros no modelo, se quiser ou precisar, dependendo de suas necessidades:
SKU. Você pode alterar o SKU do balanceador de carga externo na configuração de Standard para Basic ou de Basic para Standard alterando a propriedade name em sku no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/loadBalancers", "apiVersion": "2019-06-01", "name": "[parameters('loadBalancers_myLoadBalancer_name')]", "location": "<target-external-lb-region>", "sku": { "name": "Standard", "tier": "Regional" },
Para obter informações sobre as diferenças entre balanceadores de carga SKU básicos e padrão, consulte Visão geral do Balanceador de Carga Padrão do Azure.
Regras de balanceamento de carga. Você pode adicionar ou remover regras de balanceamento de carga na configuração adicionando ou removendo entradas na seção loadBalancingRules do arquivo template.json:
"loadBalancingRules": [ { "name": "myInboundRule", "etag": "W/\"39e5e9cd-2d6d-491f-83cf-b37a259d86b6\"", "properties": { "provisioningState": "Succeeded", "frontendIPConfiguration": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/frontendIPConfigurations/myfrontendIPinbound')]" }, "frontendPort": 80, "backendPort": 80, "enableFloatingIP": false, "idleTimeoutInMinutes": 4, "protocol": "Tcp", "enableTcpReset": false, "loadDistribution": "Default", "disableOutboundSnat": true, "backendAddressPool": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/backendAddressPools/myBEPoolInbound')]" }, "probe": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/probes/myHTTPProbe')]" } } } ]
Para obter informações sobre regras de balanceamento de carga, consulte O que é o Azure Load Balancer?.
Sondas. Você pode adicionar ou remover um teste para o balanceador de carga na configuração adicionando ou removendo entradas na seção de testes do arquivo template.json:
"probes": [ { "name": "myHTTPProbe", "etag": "W/\"39e5e9cd-2d6d-491f-83cf-b37a259d86b6\"", "properties": { "provisioningState": "Succeeded", "protocol": "Http", "port": 80, "requestPath": "/", "intervalInSeconds": 15, "numberOfProbes": 2 } } ],
Para obter mais informações, consulte Sondas de integridade do balanceador de carga.
Regras de NAT de entrada. Você pode adicionar ou remover regras NAT de entrada para o balanceador de carga adicionando ou removendo entradas na seção inboundNatRules do arquivo template.json:
"inboundNatRules": [ { "name": "myInboundNATRule", "etag": "W/\"39e5e9cd-2d6d-491f-83cf-b37a259d86b6\"", "properties": { "provisioningState": "Succeeded", "frontendIPConfiguration": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/frontendIPConfigurations/myfrontendIPinbound')]" }, "frontendPort": 4422, "backendPort": 3389, "enableFloatingIP": false, "idleTimeoutInMinutes": 4, "protocol": "Tcp", "enableTcpReset": false } } ]
Para concluir a adição ou remoção de uma regra NAT de entrada, a regra deve estar presente ou removida como uma propriedade type no final do arquivo template.json:
{ "type": "Microsoft.Network/loadBalancers/inboundNatRules", "apiVersion": "2019-06-01", "name": "[concat(parameters('loadBalancers_myLoadBalancer_name'), '/myInboundNATRule')]", "dependsOn": [ "[resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name'))]" ], "properties": { "provisioningState": "Succeeded", "frontendIPConfiguration": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/frontendIPConfigurations/myfrontendIPinbound')]" }, "frontendPort": 4422, "backendPort": 3389, "enableFloatingIP": false, "idleTimeoutInMinutes": 4, "protocol": "Tcp", "enableTcpReset": false } }
Para obter informações sobre regras NAT de entrada, consulte O que é o Azure Load Balancer?.
Regras de saída. Você pode adicionar ou remover regras de saída na configuração editando a propriedade outboundRules no arquivo template.json:
"outboundRules": [ { "name": "myOutboundRule", "etag": "W/\"39e5e9cd-2d6d-491f-83cf-b37a259d86b6\"", "properties": { "provisioningState": "Succeeded", "allocatedOutboundPorts": 10000, "protocol": "All", "enableTcpReset": false, "idleTimeoutInMinutes": 15, "backendAddressPool": { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/backendAddressPools/myBEPoolOutbound')]" }, "frontendIPConfigurations": [ { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/frontendIPConfigurations/myfrontendIPoutbound')]" } ] } } ]
Para obter mais informações, consulte Regras de saída do balanceador de carga.
Selecione Salvar no editor online.
Selecione Assinatura BASICS>para escolher a assinatura onde o balanceador de carga externo de destino será implantado.
Selecione Grupo de recursos BASICS para escolher o grupo de recursos onde o balanceador de>carga de destino será implantado. Você pode selecionar Criar novo para criar um novo grupo de recursos para o balanceador de carga externo de destino. Ou você pode escolher o grupo de recursos existente que você criou anteriormente para o IP público. Verifique se o nome não é o mesmo que o grupo de recursos de origem do balanceador de carga externo de origem existente.
Verifique se BASICS Location está definido para o local de>destino onde você deseja que o balanceador de carga externo seja implantado.
Em CONFIGURAÇÕES, verifique se o nome corresponde ao nome inserido anteriormente no editor de parâmetros. Verifique se as IDs de recursos estão preenchidas para quaisquer IPs públicos na configuração.
Marque a caixa de seleção TERMOS E CONDIÇÕES .
Selecione Comprar para implantar o IP público de destino.
Eliminar
Se quiser descartar o IP público de destino e o balanceador de carga externo, exclua o grupo de recursos que os contém. Para fazer isso, selecione o grupo de recursos no seu painel no portal e, em seguida, selecione Excluir na parte superior da página de visão geral.
Limpeza
Para confirmar as alterações e concluir a movimentação do IP público e do balanceador de carga externo, exclua o IP público de origem e o balanceador de carga externo ou grupo de recursos. Para fazer isso, selecione esse grupo de recursos no seu painel no portal e, em seguida, selecione Excluir na parte superior de cada página.
Próximos passos
Neste tutorial, você moveu um balanceador de carga externo do Azure de uma região para outra e limpou os recursos de origem. Para saber mais sobre como mover recursos entre regiões e recuperação de desastres no Azure, consulte: