Compartilhar via


Solucionar problemas do estado de provisionamento com falha da Microsoft.Network do Azure

Este artigo ajuda você a entender o significado de vários estados de provisionamento para recursos Microsoft.Network. Você pode solucionar problemas efetivamente quando o estado for Falha.

Caso o seu problema do Azure não esteja abordado nesse artigo, visite os fóruns do Azure no Microsoft Q&A e no Stack Overflow. Você pode postar seu problema nesses fóruns ou enviar para@AzureSupport no Twitter. Você também pode enviar uma solicitação de suporte do Azure. Para enviar uma solicitação de suporte na página Suporte do Azure, selecione Obter suporte.

Estados de provisionamento

O estado de provisionamento é o status de uma operação de plano de controle iniciada pelo usuário em um recurso do Azure Resource Manager.

Estado de provisionamento Descrição
Atualizar O recurso está sendo criado ou atualizado.
Com falha A última operação no recurso não foi bem-sucedida.
Com sucesso A última operação no recurso foi bem-sucedida.
Excluir O recurso está sendo excluído.
Migração Visto ao migrar do Azure Service Manager para o Azure Resource Manager.

Esses estados são propriedades de metadados do recurso. Eles são independentes da funcionalidade do recurso em si. Estar no estado com falha não significa necessariamente que o recurso não está funcional. Na maioria dos casos, ele pode continuar operando e atendendo ao tráfego sem problemas.

No entanto, em vários cenários, operações adicionais no recurso ou em outros recursos que dependem dele podem falhar se o recurso estiver no estado com falha. Você precisa reverter o estado de volta para bem-sucedido antes de executar outras operações.

Por exemplo, você não pode executar uma operação em um VirtualNetworkGateway se ele tiver um objeto VirtualNetworkGatewayConnection dependente em estado com falha.

Restaurando o estado bem-sucedido por meio de uma operação de PUT

Para restaurar o estado bem-sucedido, execute outra operação de gravação (PUT) no recurso.

O problema que causou a operação anterior pode não ser mais atual. A operação de gravação mais recente deve ser bem-sucedida e restaurar o estado de provisionamento.

A maneira mais fácil de alcançar essa tarefa é usar o Azure PowerShell. Emita um comando Get específico do recurso que busca toda a configuração atual do recurso. Em seguida, execute um comando Set ou equivalente para confirmar ao Azure uma operação de gravação que contém todas as propriedades do recurso conforme elas estão configuradas no momento.

Importante

  • Executar um comando Set no recurso sem primeiro executar um Get resulta na substituição do recurso por configurações padrão. Essas configurações podem ser diferentes daquelas que você configurou no momento. Não execute apenas um comando Set, a menos que você pretenda redefinir para o padrão.
  • Executar uma operação Get e Set usando software de terceiros ou qualquer ferramenta que use a versão mais antiga da API também pode resultar em perda de algumas configurações. Essas configurações podem não estar presentes na versão da API com a qual você executa o comando.

Os cmdlets do Azure PowerShell para restaurar o estado de provisionamento bem-sucedido

As etapas e os exemplos deste artigo usam os módulos AZ do Azure PowerShell. Para instalar os módulos AZ localmente no computador, confira Instalar o Azure PowerShell. Para saber mais sobre o novo módulo AZ, confira Apresentando o novo módulo AZ do Azure PowerShell. Os cmdlets do PowerShell são atualizados com frequência. Se você não estiver executando a versão mais recente, os valores especificados nas instruções poderão falhar. Para localizar as versões instaladas do PowerShell no sistema, use o cmdlet Get-Module -ListAvailable Az.

Operações preliminares

  1. Instale a versão mais recente dos cmdlets do PowerShell do Azure Resource Manager. Para saber mais, confira Instalar o módulo Az PowerShell do Azure.

  2. Abra o console do PowerShell com privilégios elevados e conecte-se à sua conta. Use o exemplo a seguir para ajudar a se conectar:

    Connect-AzAccount
    
  3. Se você tiver várias assinaturas do Azure, verifique as assinaturas para a conta.

    Get-AzSubscription
    
  4. Especifique a assinatura que você deseja usar.

    Select-AzSubscription -SubscriptionName "Replace_with_your_subscription_name"
    
  5. Execute os comandos específicos do recurso nas seções a seguir para redefinir o estado de provisionamento.

Observação

Cada comando de amostra neste artigo usa your_resource_name para o nome do recurso e your_resource_group_name para o nome do grupo de recursos. Substitua essas cadeias de caracteres pelos nomes de recurso e grupo de recursos apropriados de acordo com sua implantação.

Microsoft.Network/applicationGateways

Get-AzApplicationGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzApplicationGateway

Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies

Get-AzApplicationGatewayFirewallPolicy -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzApplicationGatewayFirewallPolicy

Microsoft.Network/azureFirewalls

Get-AzFirewall -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzFirewall

Microsoft.Network/bastionHosts

$bastion = Get-AzBastion -Name "your_resource_name" -ResourceGroupName "your_resource_group_name"
Set-AzBastion -InputObject $bastion

Microsoft.Network/connections

Get-AzVirtualNetworkGatewayConnection -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetworkGatewayConnection

Microsoft.Network/expressRouteCircuits

Get-AzExpressRouteCircuit -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRouteCircuit

Microsoft.Network/expressRouteGateways

Get-AzExpressRouteGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRouteGateway

Observação

Microsoft.Network/expressRouteGateways são implantados em uma WAN Virtual. Se você tiver um gateway ExpressRoute autônomo em sua rede virtual, execute os comandos relacionados a Microsoft.Network/virtualNetworkGateways.

Microsoft.Network/expressRoutePorts

Get-AzExpressRoutePort -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRoutePort

Microsoft.Network/firewallPolicies

Get-AzFirewallPolicy -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzFirewallPolicy

Microsoft.Network/loadBalancers

Get-AzLoadBalancer -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzLoadBalancer

Microsoft.Network/localNetworkGateways

Get-AzLocalNetworkGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzLocalNetworkGateway

Microsoft.Network/natGateways

Get-AzNatGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNatGateway

Microsoft.Network/networkInterfaces

Get-AzNetworkInterface -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNetworkInterface

Microsoft.Network/networkSecurityGroups

Get-AzNetworkSecurityGroup -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNetworkSecurityGroup

Microsoft.Network/networkVirtualAppliances

Get-AzNetworkVirtualAppliance -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzNetworkVirtualAppliance

Observação

A maioria dos recursos WAN Virtual relacionados, como networkVirtualAppliances, usa o cmdlet Update e não o Set para operações de gravação.

Microsoft.Network/privateDnsZones

Get-AzPrivateDnsZone -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateDnsZone

Microsoft.Network/privateEndpoints

Get-AzPrivateEndpoint -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateEndpoint

Microsoft.Network/privateLinkServices

Get-AzPrivateLinkService -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateLinkService

Microsoft.Network/publicIpAddresses

Get-AzPublicIpAddress -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPublicIpAddress

Microsoft.Network/routeFilters

Get-AzRouteFilter -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzRouteFilter

Microsoft.Network/routeTables

Get-AzRouteTable -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzRouteTable

Microsoft.Network/virtualHubs

Get-AzVirtualHub -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVirtualHub

Observação

A maioria dos recursos WAN Virtual relacionados, como virtualHubs, usa o cmdlet Update e não o Set para operações de gravação.

Microsoft.Network/virtualNetworkGateways

Get-AzVirtualNetworkGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetworkGateway

Microsoft.Network/virtualNetworks

Get-AzVirtualNetwork -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetwork

Microsoft.Network/virtualWans

Get-AzVirtualWan -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVirtualWan

Observação

A maioria dos recursos WAN Virtual relacionados, como virtualWans, usa o cmdlet Update e não o Set para operações de gravação.

Microsoft.Network/vpnGateways

Get-AzVpnGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnGateway

Observação

  • Microsoft.Network/vpnGateways são implantados em uma WAN Virtual. Se você tiver um gateway VPN autônomo em sua rede virtual, execute os comandos relacionados a Microsoft.Network/virtualNetworkGateways.
  • A maioria dos recursos WAN Virtual relacionados, como vpnGateways, usa o cmdlet Update e não o Set para operações de gravação.

Microsoft.Network/vpnSites

Get-AzVpnSite -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnSite

Observação

A maioria dos recursos WAN Virtual relacionados, como vpnSites, usa o cmdlet Update e não o Set para operações de gravação.

Próximas etapas

Se o comando executado não resolver o estado com falha, ele deverá retornar um código de erro. A maioria dos códigos de erro contém uma descrição detalhada do que o problema pode ser e oferecem dicas para resolvê-lo.

Abra um tíquete de suporte com o Suporte da Microsoft se você ainda estiver enfrentando problemas. Especifique para o agente de suporte o código de erro que você recebeu na operação mais recente e o carimbo de data/hora quando executou a operação.