Eliminar um gateway de rede virtual com o PowerShell

Existem algumas abordagens diferentes que pode seguir quando pretender eliminar um gateway de rede virtual para uma configuração de gateway de VPN.

  • Se quiser eliminar tudo e recomeçar, como no caso de um ambiente de teste, pode eliminar o grupo de recursos. Quando elimina um grupo de recursos, este elimina todos os recursos dentro do grupo. Este método só é recomendado se não quiser manter nenhum dos recursos no grupo de recursos. Não pode eliminar seletivamente apenas alguns recursos com esta abordagem.

  • Se quiser manter alguns dos recursos no seu grupo de recursos, eliminar um gateway de rede virtual torna-se um pouco mais complicado. Antes de poder eliminar o gateway de rede virtual, primeiro tem de eliminar todos os recursos dependentes do gateway. Os passos que seguir dependem do tipo de ligações que criou e dos recursos dependentes para cada ligação.

Eliminar um gateway de VPN site a site

Para eliminar um gateway de rede virtual para uma configuração S2S, primeiro tem de eliminar cada recurso que diz respeito ao gateway de rede virtual. Os recursos têm de ser eliminados numa determinada ordem devido a dependências. Nos exemplos seguintes, alguns dos valores têm de ser especificados, enquanto outros valores são um resultado de saída. Utilizamos os seguintes valores específicos nos exemplos para fins de demonstração:

  • Nome da VNet: VNet1
  • Nome do Grupo de Recursos: TestRG1
  • Nome do gateway de rede virtual: VNet1GW
  1. Obtenha o gateway de rede virtual que pretende eliminar.

    $GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Verifique se o gateway de rede virtual tem ligações.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    $Conns=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  3. Elimine todas as ligações. Poderá ser-lhe pedido para confirmar a eliminação de cada uma das ligações.

    $Conns | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    
  4. Elimine o gateway de rede virtual. Poderá ser-lhe pedido que confirme a eliminação do gateway. Se tiver uma configuração P2S para esta VNet para além da configuração S2S, eliminar o gateway de rede virtual desligará automaticamente todos os clientes P2S sem aviso prévio.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    Neste momento, o gateway de rede virtual foi eliminado. Pode utilizar os passos seguintes para eliminar quaisquer recursos que já não estejam a ser utilizados.

  5. Para eliminar os gateways de rede local, obtenha primeiro a lista dos gateways de rede local correspondentes.

    $LNG=Get-AzLocalNetworkGateway -ResourceGroupName "TestRG1" | where-object {$_.Id -In $Conns.LocalNetworkGateway2.Id}
    

    Em seguida, elimine os gateways de rede local. Poderá ser-lhe pedido que confirme a eliminação de cada um dos gateways de rede local.

    $LNG | ForEach-Object {Remove-AzLocalNetworkGateway -Name $_.Name -ResourceGroupName $_.ResourceGroupName}
    
  6. Para eliminar os recursos do endereço IP público, obtenha primeiro as configurações de IP do gateway de rede virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    

    Em seguida, obtenha a lista de recursos de endereços IP públicos utilizados para este gateway de rede virtual. Se o gateway de rede virtual estava ativo-ativo, verá dois endereços IP públicos.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    

    Elimine os recursos de IP Público.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "TestRG1"}
    
  7. Elimine a sub-rede do gateway e defina a configuração.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminar um gateway de VPN VNet a VNet

Para eliminar um gateway de rede virtual para uma configuração V2V, primeiro tem de eliminar cada recurso que diz respeito ao gateway de rede virtual. Os recursos têm de ser eliminados numa determinada ordem devido a dependências. Nos exemplos seguintes, alguns dos valores têm de ser especificados, enquanto outros valores são um resultado de saída. Utilizamos os seguintes valores específicos nos exemplos para fins de demonstração:

  • Nome da VNet: VNet1
  • Nome do Grupo de Recursos: TestRG1
  • Nome do gateway de rede virtual: VNet1GW
  1. Obtenha o gateway de rede virtual que pretende eliminar.

    $GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Verifique se o gateway de rede virtual tem ligações.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  3. Podem existir outras ligações ao gateway de rede virtual que fazem parte de um grupo de recursos diferente. Verifique se existem ligações adicionais em cada grupo de recursos adicional. Neste exemplo, estamos a verificar a existência de ligações do RG2. Execute este procedimento para cada grupo de recursos que tiver, que poderá ter uma ligação ao gateway de rede virtual.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG2" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}
    
  4. Obtenha a lista de ligações em ambas as direções. Uma vez que se trata de uma configuração VNet a VNet, precisa da lista de ligações em ambas as direções.

    $ConnsL=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  5. Neste exemplo, estamos a verificar a existência de ligações do RG2. Execute este procedimento para cada grupo de recursos que tiver, que poderá ter uma ligação ao gateway de rede virtual.

     $ConnsR=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "<NameOfResourceGroup2>" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}
    
  6. Elimine todas as ligações. Poderá ser-lhe pedido para confirmar a eliminação de cada uma das ligações.

    $ConnsL | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    $ConnsR | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    
  7. Elimine o gateway de rede virtual. Poderá ser-lhe pedido para confirmar a eliminação do gateway de rede virtual. Se tiver configurações P2S para as VNets além da configuração V2V, eliminar os gateways de rede virtual desligará automaticamente todos os clientes P2S sem aviso prévio.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    Neste momento, o gateway de rede virtual foi eliminado. Pode utilizar os passos seguintes para eliminar quaisquer recursos que já não estejam a ser utilizados.

  8. Para eliminar os recursos do endereço IP público, obtenha as configurações de IP do gateway de rede virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    
  9. Em seguida, obtenha a lista de recursos de endereços IP públicos utilizados para este gateway de rede virtual. Se o gateway de rede virtual estava ativo-ativo, verá dois endereços IP públicos.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    
  10. Elimine os recursos de IP Público. Poderá ser-lhe pedido que confirme a eliminação do IP Público.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}
    
  11. Elimine a sub-rede do gateway e defina a configuração.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminar um gateway de VPN ponto a site

Para eliminar um gateway de rede virtual para uma configuração P2S, primeiro tem de eliminar cada recurso que diz respeito ao gateway de rede virtual. Os recursos têm de ser eliminados numa determinada ordem devido a dependências. Quando trabalha com os exemplos abaixo, alguns dos valores têm de ser especificados, enquanto outros valores são um resultado de saída. Utilizamos os seguintes valores específicos nos exemplos para fins de demonstração:

  • Nome da VNet: VNet1
  • Nome do Grupo de Recursos: TestRG1
  • Nome do gateway de rede virtual: VNet1GW

Nota

Quando elimina o gateway de VPN, todos os clientes ligados serão desligados da VNet sem aviso prévio.

  1. Obtenha o gateway de rede virtual que pretende eliminar.

    GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Elimine o gateway de rede virtual. Poderá ser-lhe pedido para confirmar a eliminação do gateway de rede virtual.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    Neste momento, o gateway de rede virtual foi eliminado. Pode utilizar os passos seguintes para eliminar quaisquer recursos que já não estejam a ser utilizados.

  3. Para eliminar os recursos do endereço IP público, obtenha primeiro as configurações de IP do gateway de rede virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    

    Em seguida, obtenha a lista de endereços IP públicos utilizados para este gateway de rede virtual. Se o gateway de rede virtual estava ativo-ativo, verá dois endereços IP públicos.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    
  4. Elimine os IPs Públicos. Poderá ser-lhe pedido que confirme a eliminação do IP Público.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}
    
  5. Elimine a sub-rede do gateway e defina a configuração.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminar um gateway de VPN ao eliminar o grupo de recursos

Se não estiver preocupado em manter nenhum dos seus recursos no grupo de recursos e quiser começar de novo, pode eliminar um grupo de recursos completo. Esta é uma forma rápida de remover tudo.

  1. Obtenha uma lista de todos os grupos de recursos na sua subscrição.

    Get-AzResourceGroup
    
  2. Localize o grupo de recursos que pretende eliminar.

    Localize o grupo de recursos que pretende eliminar e veja a lista de recursos nesse grupo de recursos. No exemplo, o nome do grupo de recursos é TestRG1. Modifique o exemplo para obter uma lista de todos os recursos.

    Find-AzResource -ResourceGroupNameContains TestRG1
    
  3. Verifique os recursos na lista.

    Quando a lista for devolvida, reveja-a para verificar se pretende eliminar todos os recursos no grupo de recursos e o próprio grupo de recursos. Se quiser manter alguns dos recursos no grupo de recursos, utilize os passos nas secções anteriores deste artigo para eliminar o gateway.

  4. Elimine o grupo de recursos e os recursos. Para eliminar o grupo de recursos e todo o recurso contido no grupo de recursos, modifique o exemplo e execute.

    Remove-AzResourceGroup -Name TestRG1
    
  5. Verifique o estado. O Azure demora algum tempo a eliminar todos os recursos. Pode verificar o estado do grupo de recursos com este cmdlet.

    Get-AzResourceGroup -ResourceGroupName TestRG1
    

    O resultado devolvido mostra "Com Êxito".

    ResourceGroupName : TestRG1
    Location          : eastus
    ProvisioningState : Succeeded
    

Passos seguintes

Para obter informações de FAQ, veja FAQ do Azure Gateway de VPN.