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
Obtenha o gateway de rede virtual que pretende eliminar.
$GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
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}
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}
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.
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}
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"}
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
Obtenha o gateway de rede virtual que pretende eliminar.
$GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
Verifique se o gateway de rede virtual tem ligações.
get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
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}
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}
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}
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}
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.
Para eliminar os recursos do endereço IP público, obtenha 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. Poderá ser-lhe pedido que confirme a eliminação do IP Público.
$PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}
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.
Obtenha o gateway de rede virtual que pretende eliminar.
GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
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.
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}
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>"}
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.
Obtenha uma lista de todos os grupos de recursos na sua subscrição.
Get-AzResourceGroup
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
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.
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
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.