Mover o balanceador de carga interno do Azure para outra região usando o portal do Azure
Há vários cenários em que é possível mover o balanceador de carga interno do Azure existentes de uma região para outra. Por exemplo, talvez você queira criar um balanceador de carga interno com a mesma configuração para teste. Talvez você também queira mover um balanceador de carga interno para outra região como parte do planejamento de recuperação de desastre.
Não é possível mover os balanceadores de carga internos do Azure de uma região para outra. No entanto, você pode usar um modelo do Azure Resource Manager para exportar a configuração existente e a rede virtual de um balanceador de carga interno. Em seguida, você pode preparar o recurso em outra região, exportando balanceador de carga interno 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 Resource Manager e modelos, consulte Início Rápido: Crie e implante modelos do Azure Resource Manager usando o portal do Azure.
Pré-requisitos
Verifique se balanceador de carga interno do Azure está na região do Azure da qual você quer mover.
Os balanceadores de carga internos do Azure não podem ser movidos entre regiões. Você precisa associar o novo balanceador de carga aos recursos na região de destino.
Para exportar uma configuração de balanceador de carga interno e implantar um modelo para criar um balanceador de carga interno em outra região, você precisa da função de Colaborador de Rede ou superior.
Identifique o layout de rede de origem e todos os recursos que você está usando atualmente. Esse layout inclui, mas não se limita a, balanceadores de carga, grupos de segurança de rede (NSGs), máquinas virtuais e redes virtuais.
Verifique se a assinatura do Azure permite criar balanceadores de carga internos na região de destino usada. Contate o suporte para habilitar a cota necessária.
Certifique-se de que sua assinatura tenha recursos suficientes para dar suporte à adição de balanceadores de carga para esse processo. Veja Assinatura do Azure e limites de serviços, cotas e restrições
Preparar e mover
As etapas a seguir mostram como preparar o balanceador de carga interno para a migração usando um modelo do Resource Manager, bem como mover o balanceador de carga interno para a região de destino usando o portal do Azure. Como parte desse processo, a configuração de rede virtual do balanceador de carga interno deve ser incluída, e deve ser feita primeiro, antes de mover o balanceador de carga interno.
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Confira Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Exportar o modelo de rede virtual e implantar do portal do Azure
Faça logon no portal do Azure>Grupos de Recursos.
Localize o grupo de recursos que contém a rede virtual de origem e selecione-o.
Selecione >Configurações>Exportar modelo.
Escolha Implantar em Exportar modelo.
Selecione MODELO>Editar parâmetros para abrir o arquivo parameters.json no editor online.
Para editar o parâmetro do nome da rede virtual, altere a propriedade value em parameters:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "virtualNetworks_myVNET1_name": { "value": "<target-virtual-network-name>" } } }
Altere o valor de nome de rede virtual de origem no editor para um nome de sua escolha para a VNet de destino. É necessário colocar o nome entre aspas.
Selecione Salvar no editor.
Selecione MODELO>Editar modelo para abrir o arquivo template.json no editor online.
Para editar a região de destino em que o VNET será movido, altere a propriedade location em recursos:
"resources": [ { "type": "Microsoft.Network/virtualNetworks", "apiVersion": "2019-06-01", "name": "[parameters('virtualNetworks_myVNET1_name')]", "location": "<target-region>", "properties": { "provisioningState": "Succeeded", "resourceGuid": "6e2652be-35ac-4e68-8c70-621b9ec87dcb", "addressSpace": { "addressPrefixes": [ "10.0.0.0/16" ] },
Para obter códigos de localização de região, consulte Locais do Azure. O código de uma região é o nome da região em inglês sem espaços, por exemplo, EUA Central = centralus.
Você também pode alterar outros parâmetros no arquivo template.json se quiser, e eles podem ser opcionais dependendo dos seus requisitos:
Espaço de Endereço: o espaço de endereço da VNET pode ser alterado antes de salvar, modificando a seção recursos>addressSpace e alterando a propriedade addressPrefixes no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/virtualNetworks", "apiVersion": "2019-06-01", "name": "[parameters('virtualNetworks_myVNET1_name')]", "location": "<target-region", "properties": { "provisioningState": "Succeeded", "resourceGuid": "6e2652be-35ac-4e68-8c70-621b9ec87dcb", "addressSpace": { "addressPrefixes": [ "10.0.0.0/16" ] },
Sub-rede: o nome da sub-rede e o espaço de endereço de sub-rede podem ser alterados ou adicionados modificando a seção sub-redes do arquivo template.json. O nome da sub-rede pode ser alterado alterando a propriedade name. O espaço de endereço de sub-rede pode ser alterado alterando a propriedade addressPrefix no arquivo template.json:
"subnets": [ { "name": "subnet-1", "etag": "W/\"d9f6e6d6-2c15-4f7c-b01f-bed40f748dea\"", "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.0.0.0/24", "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } }, { "name": "GatewaySubnet", "etag": "W/\"d9f6e6d6-2c15-4f7c-b01f-bed40f748dea\"", "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.0.1.0/29", "serviceEndpoints": [], "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } } ]
No arquivo template.json, para alterar o prefixo do endereço, ele deve ser editado em dois locais, na seção listada acima e na seção tipo listada abaixo. Altere a propriedade addressPrefix para corresponder à que está acima:
"type": "Microsoft.Network/virtualNetworks/subnets", "apiVersion": "2019-06-01", "name": "[concat(parameters('virtualNetworks_myVNET1_name'), '/GatewaySubnet')]", "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_myVNET1_name'))]" ], "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.0.1.0/29", "serviceEndpoints": [], "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } }, { "type": "Microsoft.Network/virtualNetworks/subnets", "apiVersion": "2019-06-01", "name": "[concat(parameters('virtualNetworks_myVNET1_name'), '/subnet-1')]", "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_myVNET1_name'))]" ], "properties": { "provisioningState": "Succeeded", "addressPrefix": "10.0.0.0/24", "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } } ]
Selecione Salvar no editor online.
Selecione BÁSICO>Assinatura para escolher a assinatura em que a VNet de destino será implantada.
Selecione BÁSICO>Grupo de recursos para escolher o grupo de recursos no qual a VNet de destino será implantada. Você pode selecionar Criar novo a fim de criar um novo grupo de recursos para a VNet de destino. Verifique se o nome não é o mesmo que o grupo de recursos de origem da VNet existente.
Verifique se Local>BÁSICO está definido como o local de destino onde você deseja que a VNet seja implantada.
Em CONFIGURAÇÕES, verifique se o nome corresponde àquele que você inseriu anteriormente no editor de parâmetros.
Marque a caixa em TERMOS E CONDIÇÕES.
Selecione o botão Comprar para implantar a rede virtual de destino.
Exportar o modelo de balanceador de carga interno e implantar do Azure PowerShell
Selecione Portal do Azure>Grupos de recursos.
Localize o grupo de recursos que contém o balanceador de carga interno de origem e selecione-o.
Selecione >Configurações>Exportar modelo.
Escolha Implantar em Exportar modelo.
Selecione MODELO>Editar parâmetros para abrir o arquivo parameters.json no editor online.
Para editar o parâmetro do nome do balanceador de carga interno, altere a propriedade defaultValue do nome do balanceador de carga interno de origem para o nome do balanceador de carga interno de destino. Verifique se o nome está entre aspas:
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "loadBalancers_myLoadBalancer_name": { "defaultValue": "<target-internal-lb-name>", "type": "String" }, "virtualNetworks_myVNET2_internalid": { "defaultValue": "<target-vnet-resource-ID>", "type": "String" }
Para editar o valor da rede virtual de destino que foi movida acima, primeiro você deve obter a ID do recurso e, em seguida, copiá-la e colá-la no arquivo parameters.json. Para obter a ID:
Selecione Portal do Azure>Grupos de Recursos em outra guia ou janela do navegador.
Localize o grupo de recursos de destino que contém a rede virtual movida das etapas acima e selecione-a.
Selecione >Configurações>Propriedades.
No lado direito do portal, realce a ID do Recurso e copie-a para a área de transferência. Como alternativa, você pode selecionar o botão copiar para a área de transferência à direita do caminho da ID do recurso.
Cole a ID do recurso na propriedade defaultValue no editor Editar Parâmetros aberto na outra janela do navegador ou na guia:
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "loadBalancers_myLoadBalancer_name": { "defaultValue": "<target-internal-lb-name>", "type": "String" }, "virtualNetworks_myVNET2_internalid": { "defaultValue": "<target-vnet-resource-ID>", "type": "String" }
Selecione Salvar no editor online.
Selecione MODELO>Editar modelo para abrir o arquivo template.json no editor online.
Para editar a região de destino em que a configuração do balanceador de carga interno será movida, altere a propriedade local em recursos no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/loadBalancers", "apiVersion": "2019-06-01", "name": "[parameters('loadBalancers_myLoadBalancer_name')]", "location": "<target-internal-lb-region>", "sku": { "name": "Standard", "tier": "Regional" },
Para obter códigos de localização de região, consulte Locais do Azure. O código de uma região é o nome da região em inglês sem espaços, por exemplo, EUA Central = centralus.
Você também pode alterar outros parâmetros no modelo se quiser, e eles podem ser opcionais dependendo dos seus requisitos:
Sku: você pode alterar a sku do balanceador de carga interno na configuração de padrão para básico ou de básico para padrão alterando a propriedade sku>name no arquivo template.json:
"resources": [ { "type": "Microsoft.Network/loadBalancers", "apiVersion": "2019-06-01", "name": "[parameters('loadBalancers_myLoadBalancer_name')]", "location": "<target-internal-lb-region>", "sku": { "name": "Standard", "tier": "Regional" },
Para obter mais informações sobre as diferenças entre os balanceadores de carga do sku básico e padrão, consulte Visão geral do Azure Standard Load Balancer
Zona de disponibilidade – você pode alterar as zonas do front-end do balanceador de carga alterando a propriedade de zona. Se a propriedade da zona não for especificada, o front-end será criado sem zona. Você pode especificar uma única zona para criar um front-end zonal ou todas as três zonas para um front-end com redundância de zona.
"frontendIPConfigurations": [ { "name": "myfrontendIPinbound", "etag": "W/\"39e5e9cd-2d6d-491f-83cf-b37a259d86b6\"", "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", "properties": { "provisioningState": "Succeeded", "privateIPAddress": "10.0.0.6", "privateIPAllocationMethod": "Dynamic", "subnet": { "id": "[concat(parameters('virtualNetworks_myVNET2_internalid'), '/subnet-1')]" }, "loadBalancingRules": [ { "id": "[concat(resourceId('Microsoft.Network/loadBalancers', parameters('loadBalancers_myLoadBalancer_name')), '/loadBalancingRules/myInboundRule')]" } ], "privateIPAddressVersion": "IPv4" }, "zones": [ "1", "2", "3" ] },
Para obter mais informações sobre as zonas de disponibilidade, confira Regiões e zonas de disponibilidade no 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 mais informações sobre regras de balanceamento de carga, confira O que é o Azure Load Balancer?
Investigações: você pode adicionar ou remover uma investigação do balanceador de carga na configuração adicionando ou removendo entradas para a seção investigações 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 sobre investigações de integridade no Azure Load Balancer, consulte Investigações de integridade do Load Balancer
Regras NAT de entrada: você pode adicionar ou remover regras NAT de entrada do balanceador de carga adicionando ou removendo entradas para a 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 de 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 mais informações sobre regra NAT de entrada, confira O que é o Azure Load Balancer?
Selecione Salvar no editor online.
Selecione BÁSICO>Assinatura para escolher a assinatura na qual o balanceador de carga interno de destino será implantado.
Selecione BÁSICO>Grupo de recursos para escolher o grupo de recursos no qual o balanceador de carga de destino será implantado. Você pode selecionar Criar novo para criar um grupo de recursos para o balanceador de carga interno de destino ou escolher o grupo de recursos existente que foi criado acima para a rede virtual. Verifique se o nome não é o mesmo que o grupo de recursos de origem do balanceador interno de carga de origem existente.
Verifique se Local>BÁSICO está definido como o local de destino onde você deseja que o balanceador de carga interno seja implantado.
Em CONFIGURAÇÕES, verifique se o nome corresponde àquele que você inseriu anteriormente no editor de parâmetros. Verifique se as IDs de recurso são populadas para as redes virtuais na configuração.
Marque a caixa em TERMOS E CONDIÇÕES.
Selecione o botão Comprar para implantar a rede virtual de destino.
Descartar
Se você quiser descartar a rede virtual de destino e o balanceador de carga interno, exclua o grupo de recursos no qual eles estão contidos. Para fazer isso, selecione o grupo de recursos em 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 da rede virtual e do balanceador de carga interno, exclua ambos ou o grupo de recursos. Para fazer isso, selecione a rede virtual e o balanceador de carga interno ou o grupo de recursos no seu painel no portal e selecione Excluir na parte superior de cada página.
Próximas etapas
Neste tutorial, você moveu um balanceador de carga interna 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, confira: