Ta bort en virtuell nätverksgateway med PowerShell

Det finns ett par olika metoder som du kan använda när du vill ta bort en virtuell nätverksgateway för en VPN-gatewaykonfiguration.

  • Om du vill ta bort allt och börja om, som i en testmiljö, kan du ta bort resursgruppen. När du tar bort en resursgrupp tas alla resurser i gruppen bort. Den här metoden rekommenderas endast om du inte vill behålla någon av resurserna i resursgruppen. Du kan inte selektivt ta bort endast ett fåtal resurser med den här metoden.

  • Om du vill behålla några av resurserna i resursgruppen blir det lite mer komplicerat att ta bort en virtuell nätverksgateway. Innan du kan ta bort den virtuella nätverksgatewayen måste du först ta bort alla resurser som är beroende av gatewayen. Vilka steg du följer beror på vilken typ av anslutningar du har skapat och de beroende resurserna för varje anslutning.

Innan du börjar

1. Ladda ned de senaste Azure Resource Manager PowerShell-cmdletarna.

Ladda ned och installera den senaste versionen av Azure Resource Manager PowerShell-cmdletar. Mer information om hur du laddar ned och installerar PowerShell-cmdletar finns i Så här installerar och konfigurerar du Azure PowerShell.

2. Anslut till ditt Azure-konto.

Öppna PowerShell-konsolen och anslut till ditt konto. Använd följande exempel för att ansluta:

Connect-AzAccount

Kontrollera prenumerationerna för kontot.

Get-AzSubscription

Om du har fler än en prenumeration anger du den prenumeration som du vill använda.

Select-AzSubscription -SubscriptionName "Replace_with_your_subscription_name"

Ta bort en VPN-gateway för plats-till-plats

Om du vill ta bort en virtuell nätverksgateway för en S2S-konfiguration måste du först ta bort varje resurs som hör till den virtuella nätverksgatewayen. Resurser måste tas bort i en viss ordning på grund av beroenden. När du arbetar med exemplen nedan måste vissa av värdena anges, medan andra värden är ett utdataresultat. Vi använder följande specifika värden i exemplen i demonstrationssyfte:

VNet-namn: VNet1
Resursgruppsnamn: RG1
Namn på virtuell nätverksgateway: GW1

Följande steg gäller för distributionsmodellen Resource Manager.

1. Hämta den virtuella nätverksgateway som du vill ta bort.

$GW=get-Azvirtualnetworkgateway -Name "GW1" -ResourceGroupName "RG1"

2. Kontrollera om den virtuella nätverksgatewayen har några anslutningar.

get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
$Conns=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}

3. Ta bort alla anslutningar.

Du kan uppmanas att bekräfta borttagningen av var och en av anslutningarna.

$Conns | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}

4. Ta bort den virtuella nätverksgatewayen.

Du kan uppmanas att bekräfta borttagningen av gatewayen. Om du har en P2S-konfiguration för det här virtuella nätverket utöver S2S-konfigurationen kommer borttagning av den virtuella nätverksgatewayen automatiskt att koppla från alla P2S-klienter utan varning.

Remove-AzVirtualNetworkGateway -Name "GW1" -ResourceGroupName "RG1"

Nu har din virtuella nätverksgateway tagits bort. Du kan använda nästa steg för att ta bort alla resurser som inte längre används.

5 Ta bort de lokala nätverksgatewayerna.

Hämta listan över motsvarande lokala nätverksgatewayer.

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

Ta bort de lokala nätverksgatewayerna. Du kan uppmanas att bekräfta borttagningen av var och en av de lokala nätverksgatewayerna.

$LNG | ForEach-Object {Remove-AzLocalNetworkGateway -Name $_.Name -ResourceGroupName $_.ResourceGroupName}

6. Ta bort de offentliga IP-adressresurserna.

Hämta IP-konfigurationerna för den virtuella nätverksgatewayen.

$GWIpConfigs = $Gateway.IpConfigurations

Hämta listan över offentliga IP-adressresurser som används för den här virtuella nätverksgatewayen. Om den virtuella nätverksgatewayen var aktiv-aktiv visas två offentliga IP-adresser.

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

Ta bort de offentliga IP-resurserna.

$PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "RG1"}

7. Ta bort gatewayundernätet och ange konfigurationen.

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

Ta bort en VPN-gateway mellan virtuella nätverk

Om du vill ta bort en virtuell nätverksgateway för en V2V-konfiguration måste du först ta bort varje resurs som hör till den virtuella nätverksgatewayen. Resurser måste tas bort i en viss ordning på grund av beroenden. När du arbetar med exemplen nedan måste vissa av värdena anges, medan andra värden är ett utdataresultat. Vi använder följande specifika värden i exemplen i demonstrationssyfte:

VNet-namn: VNet1
Resursgruppsnamn: RG1
Namn på virtuell nätverksgateway: GW1

Följande steg gäller för distributionsmodellen Resource Manager.

1. Hämta den virtuella nätverksgateway som du vill ta bort.

$GW=get-Azvirtualnetworkgateway -Name "GW1" -ResourceGroupName "RG1"

2. Kontrollera om den virtuella nätverksgatewayen har några anslutningar.

get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}

Det kan finnas andra anslutningar till den virtuella nätverksgatewayen som ingår i en annan resursgrupp. Sök efter ytterligare anslutningar i varje ytterligare resursgrupp. I det här exemplet söker vi efter anslutningar från RG2. Kör detta för varje resursgrupp som du har som kan ha en anslutning till den virtuella nätverksgatewayen.

get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG2" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}

3. Hämta listan över anslutningar i båda riktningarna.

Eftersom det här är en VNet-till-VNet-konfiguration behöver du listan över anslutningar i båda riktningarna.

$ConnsL=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}

I det här exemplet söker vi efter anslutningar från RG2. Kör detta för varje resursgrupp som du har som kan ha en anslutning till den virtuella nätverksgatewayen.

 $ConnsR=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "<NameOfResourceGroup2>" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}

4. Ta bort alla anslutningar.

Du kan uppmanas att bekräfta borttagningen av var och en av anslutningarna.

$ConnsL | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
$ConnsR | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}

5. Ta bort den virtuella nätverksgatewayen.

Du kan uppmanas att bekräfta borttagningen av den virtuella nätverksgatewayen. Om du har P2S-konfigurationer till dina virtuella nätverk utöver V2V-konfigurationen kopplas alla P2S-klienter automatiskt bort utan varning om du tar bort de virtuella nätverksgatewayerna.

Remove-AzVirtualNetworkGateway -Name "GW1" -ResourceGroupName "RG1"

Nu har din virtuella nätverksgateway tagits bort. Du kan använda nästa steg för att ta bort alla resurser som inte längre används.

6. Ta bort resurserna för offentliga IP-adresser

Hämta IP-konfigurationerna för den virtuella nätverksgatewayen.

$GWIpConfigs = $Gateway.IpConfigurations

Hämta listan över offentliga IP-adressresurser som används för den här virtuella nätverksgatewayen. Om den virtuella nätverksgatewayen var aktiv-aktiv visas två offentliga IP-adresser.

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

Ta bort de offentliga IP-resurserna. Du kan uppmanas att bekräfta borttagningen av den offentliga IP-adressen.

$PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}

7. Ta bort gatewayundernätet och ange konfigurationen.

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

Ta bort en punkt-till-plats-VPN-gateway

Om du vill ta bort en virtuell nätverksgateway för en P2S-konfiguration måste du först ta bort varje resurs som hör till den virtuella nätverksgatewayen. Resurser måste tas bort i en viss ordning på grund av beroenden. När du arbetar med exemplen nedan måste vissa av värdena anges, medan andra värden är ett utdataresultat. Vi använder följande specifika värden i exemplen i demonstrationssyfte:

VNet-namn: VNet1
Resursgruppsnamn: RG1
Namn på virtuell nätverksgateway: GW1

Följande steg gäller för distributionsmodellen Resource Manager.

Anteckning

När du tar bort VPN-gatewayen kopplas alla anslutna klienter bort från det virtuella nätverket utan förvarning.

1. Hämta den virtuella nätverksgateway som du vill ta bort.

$GW=get-Azvirtualnetworkgateway -Name "GW1" -ResourceGroupName "RG1"

2. Ta bort den virtuella nätverksgatewayen.

Du kan uppmanas att bekräfta borttagningen av den virtuella nätverksgatewayen.

Remove-AzVirtualNetworkGateway -Name "GW1" -ResourceGroupName "RG1"

Nu har din virtuella nätverksgateway tagits bort. Du kan använda nästa steg för att ta bort alla resurser som inte längre används.

3. Ta bort de offentliga IP-adressresurserna

Hämta IP-konfigurationerna för den virtuella nätverksgatewayen.

$GWIpConfigs = $Gateway.IpConfigurations

Hämta listan över offentliga IP-adresser som används för den här virtuella nätverksgatewayen. Om den virtuella nätverksgatewayen var aktiv-aktiv visas två offentliga IP-adresser.

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

Ta bort offentliga IP-adresser. Du kan uppmanas att bekräfta borttagningen av den offentliga IP-adressen.

$PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}

4. Ta bort gatewayundernätet och ange konfigurationen.

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

Ta bort en VPN-gateway genom att ta bort resursgruppen

Om du inte bryr dig om att behålla någon av dina resurser i resursgruppen och bara vill börja om kan du ta bort en hel resursgrupp. Det här är ett snabbt sätt att ta bort allt. Följande steg gäller endast för Resource Manager distributionsmodell.

1. Hämta en lista över alla resursgrupper i din prenumeration.

Get-AzResourceGroup

2. Leta upp den resursgrupp som du vill ta bort.

Leta upp den resursgrupp som du vill ta bort och visa listan över resurser i den resursgruppen. I exemplet är namnet på resursgruppen RG1. Ändra exemplet för att hämta en lista över alla resurser.

Find-AzResource -ResourceGroupNameContains RG1

3. Kontrollera resurserna i listan.

När listan returneras granskar du den för att kontrollera att du vill ta bort alla resurser i resursgruppen samt själva resursgruppen. Om du vill behålla några av resurserna i resursgruppen använder du stegen i de tidigare avsnitten i den här artikeln för att ta bort din gateway.

4. Ta bort resursgruppen och resurserna.

Om du vill ta bort resursgruppen och alla resurser i resursgruppen ändrar du exemplet och kör.

Remove-AzResourceGroup -Name RG1

5. Kontrollera statusen.

Det tar lite tid för Azure att ta bort alla resurser. Du kan kontrollera statusen för resursgruppen med hjälp av den här cmdleten.

Get-AzResourceGroup -ResourceGroupName RG1

Resultatet som returneras visar "Lyckades".

ResourceGroupName : RG1
Location          : eastus
ProvisioningState : Succeeded