Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Zusammenfassung
Möglicherweise erhalten Sie Fehler, wenn Sie versuchen, ein virtuelles Netzwerk oder Subnetz in Microsoft Azure zu löschen oder zu ändern. Ressourcen wie Gateways, private Endpunkte, Dienstendpunkte, Subnetzdelegierungen und verwaiste Netzwerkschnittstellen können das Löschen oder Ändern blockieren. Dieser Artikel enthält Schritte zur Problembehandlung, mit denen Sie diese Probleme beheben können.
Behandeln von Problemen mit virtuellen Netzwerken und Subnetzen
Löschen eines virtuellen Netzwerks
- Überprüfen Sie, ob ein virtuelles Netzwerkgateway im virtuellen Netzwerk ausgeführt wird.
- Überprüfen, ob im virtuellen Netzwerk ein Anwendungsgateway ausgeführt wird
- Überprüfen Sie, ob Azure Containerinstanzen weiterhin im virtuellen Netzwerk vorhanden sind.
- Überprüfen Sie, ob Microsoft Entra Domain Services im virtuellen Netzwerk aktiviert ist.
- Überprüfen Sie, ob das virtuelle Netzwerk mit anderen Ressourcen verbunden ist.
- Überprüfen Sie, ob ein virtueller Computer noch im virtuellen Netzwerk ausgeführt wird.
- Überprüfen Sie, ob das virtuelle Netzwerk bei der Migration hängen bleibt.
- Überprüfen Sie, ob das virtuelle Netzwerk von einer Web-App für die Integration virtueller Netzwerke verwendet wurde.
Subnetzlöschung
- Überprüfen Sie, ob private Endpunkte im Subnetz vorhanden sind.
- Überprüfen Sie, ob Dienstendpunkte im Subnetz konfiguriert sind.
- Überprüfen Sie, ob das Subnetz über eine Delegierung verfügt.
- Überprüfen Sie, ob Dienstzuordnungslinks im Subnetz vorhanden sind.
- Überprüfen Sie, ob verwaiste Netzwerkschnittstellen im Subnetz verbleiben.
- Überprüfen Sie, ob das Subnetz von Azure Bastion oder Azure Firewall verwendet wird.
Subnetzänderung
- Ändern Sie die Größe eines Subnetzes, das aktive Ressourcen enthält.
- Ändern oder Entfernen einer Subnetzdelegierung.
- Hinzufügen oder Entfernen von Dienstendpunkten in einem aktiven Subnetz.
Schritte zur Fehlersuche
Überprüfen, ob ein virtuelles Netzwerkgateway im virtuellen Netzwerk in Betrieb ist
Um das virtuelle Netzwerk zu entfernen, entfernen Sie zuerst das virtuelle Netzwerkgateway.
Wechseln Sie für klassische virtuelle Netzwerke zur Übersichtsseite des klassischen virtuellen Netzwerks im Azure-Portal. Wenn das Gateway im virtuellen Netzwerk ausgeführt wird, wird im Abschnitt "VPN-Verbindungen " die IP-Adresse des Gateways angezeigt.
Wechseln Sie für virtuelle Netzwerke zur Übersichtsseite des virtuellen Netzwerks. Überprüfen Sie verbundene Geräte auf das virtuelle Netzwerkgateway.
Bevor Sie das Gateway entfernen können, entfernen Sie alle Connection-Objekte im Gateway.
Überprüfen, ob ein Anwendungsgateway im virtuellen Netzwerk ausgeführt wird
Wechseln Sie zur Seite "Übersicht" des virtuellen Netzwerks. Überprüfen Sie die verbundenen Geräte für das Anwendungsgateway.
Wenn ein Anwendungsgateway vorhanden ist, müssen Sie es entfernen, bevor Sie das virtuelle Netzwerk löschen können.
Überprüfen, ob Azure-Containerinstanzen noch im virtuellen Netzwerk vorhanden sind
Hinweis
Ab der Azure Container Instances-API-Version 2021-07-01verwenden Azure-Containerinstanzen keine Netzwerkprofile mehr. Wenn Sie diese oder eine neuere API-Version verwenden, erstellt das Portal keine Netzwerkprofile. Der folgende Leitfaden gilt nur für Ältere Bereitstellungen, die eine ältere API-Version verwenden.
Wechseln Sie im Azure-Portal zur Seite Overview der Ressourcengruppe.
Wählen Sie in der Kopfzeile für die Liste der Ressourcen der Ressourcengruppe die Option "Ausgeblendete Typen anzeigen" aus. Das Portal blendet den Netzwerkprofiltyp standardmäßig aus.
Wählen Sie das Netzwerkprofil aus, das sich auf die Containergruppen bezieht.
Klicken Sie auf Löschen.
Löschen Sie das Subnetz oder das virtuelle Netzwerk erneut.
Wenn das Problem durch diese Schritte nicht behoben wird, verwenden Sie diese befehle Azure CLI, um Ressourcen zu bereinigen.
Überprüfen, ob Microsoft Entra Domain Services im virtuellen Netzwerk aktiviert ist
Wenn Microsoft Entra Domain Services aktiviert und mit dem virtuellen Netzwerk verbunden ist, können Sie dieses virtuelle Netzwerk nicht löschen.
Informationen zum Löschen der verwalteten Domäne finden Sie unter "Löschen einer verwalteten Domäne von Microsoft Entra Domain Services".
Überprüfen, ob das virtuelle Netzwerk mit anderen Ressourcen verbunden ist
Überprüfen Sie, ob Schaltungslinks, Verbindungen und virtuelle Netzwerk-Peerings vorhanden sind. Jede dieser Ressourcen kann dazu führen, dass ein Löschvorgang im virtuellen Netzwerk fehlschlägt.
Verwenden Sie die folgende empfohlene Löschreihenfolge:
- Gatewayverbindungen
- Schnittstellen
- IP-Adressen
- Virtuelle Netzwerk-Peering-Verbindungen
- App Service Environment (ASE)
Überprüfen, ob ein virtueller Computer noch im virtuellen Netzwerk ausgeführt wird
Stellen Sie sicher, dass sich kein virtueller Computer im virtuellen Netzwerk befindet.
Überprüfen, ob das virtuelle Netzwerk bei der Migration hängen bleibt
Wenn das virtuelle Netzwerk in einem Migrationsstatus hängen bleibt, können Sie es nicht löschen. Führen Sie den folgenden Befehl in Azure PowerShell aus, um die Migration abzubrechen und dann das virtuelle Netzwerk zu löschen.
Move-AzureVirtualNetwork -VirtualNetworkName "Name" -Abort
Überprüfen, ob das virtuelle Netzwerk von einer Web-App für die Integration virtueller Netzwerke verwendet wurde
Wenn Sie das virtuelle Netzwerk in der Vergangenheit mit einer Web-App integriert haben, die Web-App jedoch gelöscht haben, ohne die Integration des virtuellen Netzwerks zu trennen, lesen Sie Löschen des App Service-Plans oder der Web-App, bevor Sie die Integration des virtuellen Netzwerks trennen.
Problembehandlung bei Fehlern beim Löschen von Subnetzen
Überprüfen, ob private Endpunkte im Subnetz vorhanden sind
Wenn ein Subnetz über private Endpunkte verfügt, können Sie das Subnetz nicht löschen. Sie müssen alle privaten Endpunkte entfernen, bevor Sie das Subnetz löschen.
- Wechseln Sie im Azure-Portal zum virtuellen Netzwerk, und wählen Sie "Subnetze" aus.
- Wählen Sie das Subnetz aus, das Sie löschen möchten, und überprüfen Sie die Spalte "Private Endpunkte ".
- Wenn private Endpunkte vorhanden sind, wechseln Sie zu jeder privaten Endpunktressource, und löschen Sie sie.
Alternativ können Sie azure CLI verwenden, um private Endpunkte in einem Subnetz zu identifizieren:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "privateEndpoints[].id" \
--output tsv
Entfernen Sie jeden privaten Endpunkt:
az network private-endpoint delete \
--resource-group <resource-group> \
--name <private-endpoint-name>
Überprüfen, ob Dienstendpunkte im Subnetz konfiguriert sind
Dienstendpunkte sind Konfigurationen auf Subnetzebene und blockieren keine Subnetzlöschung. Wie in den häufig gestellten Fragen zum virtuellen Azure-Netzwerk angegeben, können Sie ein Subnetz auch dann löschen, wenn Die Dienstendpunkte aktiviert sind.
Wenn Sie jedoch Dienstendpunkte als Teil einer umfassenderen Bereinigung oder Änderung entfernen müssen, führen Sie die folgenden Schritte aus:
- Wechseln Sie im Azure-Portal zum virtuellen Netzwerk, und wählen Sie "Subnetze" aus.
- Wählen Sie das Subnetz aus, und überprüfen Sie den Abschnitt "Dienstendpunkte ".
- Entfernen Sie alle konfigurierten Dienstendpunkte, und wählen Sie "Speichern" aus.
Verwenden Sie Azure CLI, um Dienstendpunkte zu überprüfen und zu entfernen:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "serviceEndpoints[].service" \
--output tsv
Entfernen Sie Dienstendpunkte, indem Sie das Subnetz aktualisieren:
az network vnet subnet update \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--service-endpoints '[]'
Überprüfen, ob das Subnetz über eine Delegierung verfügt
Eine Subnetzdelegierung weist das Subnetz einem bestimmten Azure-Dienst zu, z. B. Microsoft.DBforPostgreSQL/flexibleServers, Microsoft.Web/serverFarms oder Microsoft.ContainerService/managedClusters. Sie können ein delegiertes Subnetz erst löschen, wenn Sie alle Ressourcen entfernen, die die Delegierung verwenden, und dann die Delegierung selbst entfernen.
Zu den allgemeinen Subnetzdelegierungen gehören:
| Delegierung | Service |
|---|---|
Microsoft.ContainerInstance/containerGroups |
Azure-Containerinstanzen |
Microsoft.DBforPostgreSQL/flexibleServers |
Azure Database for PostgreSQL – Flexible Server |
Microsoft.DBforMySQL/flexibleServers |
Azure Database for MySQL – Flexible Server |
Microsoft.Web/serverFarms |
Azure App Service /Azure Functions |
Microsoft.ContainerService/managedClusters |
Azure Kubernetes Service (AKS) |
Microsoft.Sql/managedInstances |
Verwaltete Azure SQL-Instanz |
Microsoft.Network/dnsResolvers |
Azure DNS Private Resolver |
Microsoft.Netapp/volumes |
Azure NetApp-Dateien |
Microsoft.ApiManagement/service |
Azure-API-Verwaltung |
Verwenden Sie Azure CLI, um die Delegierung zu überprüfen:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "delegations[].{name:name, service:serviceName}" \
--output table
Um eine Delegierung zu entfernen, löschen Sie zuerst alle Ressourcen, die das delegierte Subnetz verwenden. Entfernen Sie dann die Delegierung mithilfe des folgenden Befehls:
az network vnet subnet update \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--remove delegations
Überprüfen, ob Dienstzuordnungslinks im Subnetz vorhanden sind
Azure-Dienste wie Azure-Containerinstanzen, Azure App Service und Azure SQL Managed Instance erstellen Dienstzuordnungslinks, wenn sie Ressourcen in einem Subnetz bereitstellen. Diese Links verhindern das Löschen des Subnetzes, auch nachdem Sie die bereitgestellten Ressourcen entfernt haben.
Verwenden Sie Azure CLI, um nach Dienstzuordnungslinks zu suchen:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "serviceAssociationLinks[].{link:link, linkedResourceType:linkedResourceType}" \
--output table
Wenn Dienstzuordnungslinks nach dem Löschen der Ressourcen verbleiben, kann es mehrere Minuten dauern, bis sie gelöscht wurden. Wenn das Problem weiterhin besteht, probieren Sie die folgenden Schritte aus:
- Stellen Sie sicher, dass keine Ressourcen aus dem verknüpften Dienst weiterhin im Subnetz bereitgestellt werden.
- Warten Sie 10-15 Minuten, bis die Plattform die Verknüpfungen bereinigt.
- Wenn die Links weiterhin bestehen, öffnen Sie eine Azure-Supportanfrage, die auf die spezifischen
linkedResourceTypeVerweist.
Für speziell Azure-Containerinstanzen siehe Bereinigen von Ressourcen für CLI-Befehle zum Entfernen von Containergruppen und Netzwerkprofilen.
Überprüfen, ob verwaiste Netzwerkschnittstellen im Subnetz verbleiben
Netzwerkschnittstellen (NICs), die nach dem Löschen eines virtuellen Computers oder einer anderen Ressource zurückbleiben, können das Löschen von Subnetzen blockieren. Sie müssen jede NIC mit einer IP-Konfiguration im Subnetz entfernen.
Verwenden Sie Azure CLI, um NICs in einem Subnetz auflisten:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "ipConfigurations[].id" \
--output tsv
Die Ausgabe zeigt die Ressourcen-IDs der IP-Konfigurationen an, die dem Subnetz zugeordnet sind. Extrahieren Sie den NIC-Namen aus der Ressourcen-ID, und löschen Sie die verwaiste NIC:
az network nic delete \
--resource-group <resource-group> \
--name <nic-name>
Wenn die NIC noch an einen virtuellen Computer angefügt ist, trennen oder löschen Sie zuerst den virtuellen Computer.
Überprüfen, ob das Subnetz von Azure Bastion oder Azure Firewall verwendet wird
Die AzureBastionSubnet und AzureFirewallSubnet Subnetze werden von ihren jeweiligen Diensten reserviert. Sie können diese Subnetze nicht löschen, während die zugeordnete Azure Bastion- oder Azure Firewall-Ressource vorhanden ist.
Für Azure Bastion:
- Suchen Sie im Azure-Portal nach Bastionen , und suchen Sie die Bastion-Ressource im selben virtuellen Netzwerk.
- Löschen Sie die Azure Bastion-Ressource.
- Löschen Sie nach Abschluss des Löschvorgangs die
AzureBastionSubnet.
Für Azure Firewall:
- Suchen Sie im Azure-Portal nach Firewalls , und suchen Sie die Firewallressource.
- Deaktivieren oder löschen Sie die Azure-Firewall-Ressource.
- Löschen Sie nach Abschluss des Deallocation- oder Löschvorgangs die
AzureFirewallSubnet. - Verwenden Sie Azure CLI, um verbundene Ressourcen zu überprüfen:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name AzureBastionSubnet \
--query "ipConfigurations[].id" \
--output tsv
Behebung von Subnetzänderungsfehlern
Ändern der Größe eines Subnetzes, das aktive Ressourcen enthält
Sie können die Größe eines Subnetzes ändern, das über aktive Ressourcen verfügt, wenn der neue Adressbereich weiterhin alle vorhandenen IP-Adressen enthält. Wenn der neue Bereich eine verwendete IP-Adresse ausschließt, schlägt der Größenänderungsvorgang fehl.
Bevor Sie die Größe ändern:
Verwenden Sie Azure CLI, um die Anzahl der verwendeten IP-Adressen im Subnetz zu überprüfen.
az network vnet subnet show \ --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <subnet-name> \ --query "ipConfigurations | length(@)"Überprüfen Sie, ob das neue Adresspräfix alle zugewiesenen Adressen enthält.
Aktualisieren Sie das Subnetz.
az network vnet subnet update \ --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <subnet-name> \ --address-prefixes <new-prefix>
Hinweis
Azure reserviert fünf IP-Adressen innerhalb jedes Subnetzes: die ersten vier Adressen und die letzte Adresse. Berücksichtigen Sie beim Anpassen der Größe diese reservierten Adressen und Ihre aktuellen Zuordnungen.
Ändern oder Entfernen einer Subnetzdelegierung
Sie können eine Subnetzdelegierung nicht ändern, während Ressourcen aus der aktuellen Delegierung bereitgestellt werden. So ändern Sie die Delegierung:
Entfernen Sie alle Ressourcen, die die aktuelle Delegierung verwenden (z. B. den flexiblen Server- oder App-Serviceplan).
Verwenden Sie Azure CLI, um die vorhandene Delegierung zu entfernen.
az network vnet subnet update \ --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <subnet-name> \ --remove delegationsFügen Sie die neue Delegierung hinzu.
az network vnet subnet update \ --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <subnet-name> \ --delegations <new-service-delegation>
Hinzufügen oder Entfernen von Dienstendpunkten in einem aktiven Subnetz
Das Ändern von Dienstendpunkten in einem aktiven Subnetz kann zu einer kurzen Verbindungsunterbrechung mit dem Zieldienst führen. Planen Sie Endpunktänderungen während eines Wartungsfensters.
Verwenden Sie Azure CLI, um einen Dienstendpunkt hinzuzufügen.
az network vnet subnet update \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--service-endpoints Microsoft.Storage Microsoft.Sql
Wenn Sie einen bestimmten Dienstendpunkt entfernen möchten, geben Sie nur die Endpunkte an, die Sie behalten möchten.
az network vnet subnet update \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--service-endpoints Microsoft.Storage
Warnung
Das Entfernen eines Dienstendpunkts, während Ressourcen davon abhängen, kann zu Verbindungsverlusten führen. Überprüfen Sie, ob keine aktiven Ressourcen auf den Endpunkt angewiesen sind, bevor Sie sie entfernen.
Häufig auftretende Fehlermeldungen
| Fehlermeldung | Ursache | Resolution |
|---|---|---|
Subnet <name> is in use and cannot be deleted. |
Ressourcen wie NICs, private Endpunkte oder Dienstbereitstellungen befinden sich weiterhin im Subnetz. | Verwenden Sie die Diagnosebefehle , um blockierende Ressourcen zu identifizieren und sie zu entfernen. |
InUseSubnetCannotBeDeleted |
Das Subnetz enthält IP-Konfigurationen von VMs, Lastenausgleichsmodulen oder anderen Ressourcen. | Entfernen oder verschieben Sie die Ressourcen in ein anderes Subnetz, und wiederholen Sie dann den Löschvorgang. |
SubnetHasServiceEndpoints |
Dienstendpunkte werden im Subnetz konfiguriert. | Dienstendpunkte allein blockieren keine Subnetzlöschung. Wenn dieser Fehler mit anderen blockierenden Ressourcen auftritt, beheben Sie diese Ressourcen zuerst. Informationen zum Entfernen von Dienstendpunkten finden Sie unter Überprüfen, ob Dienstendpunkte im Subnetz konfiguriert sind. |
SubnetHasDelegations |
Das Subnetz wird an einen Dienst delegiert, und Ressourcen von diesem Dienst werden bereitgestellt. | Entfernen Sie die Dienstressourcen, die die Delegierung verwenden, und entfernen Sie dann die Delegierung. |
SubnetWithExternalResourcesCannotBeUsedByOtherResources |
Ein anderer Azure-Dienst hat Ressourcen im Subnetz bereitgestellt. | Identifizieren Sie den Dienst mithilfe von Dienstzuordnungslinks, und entfernen Sie die bereitgestellten Ressourcen. |
InUseNetworkInterfaceCannotBeAssociatedWithSubnet |
Eine verwaiste NIC verfügt über eine IP-Konfiguration, die mit Subnetzvorgängen in Konflikt kommt. | Löschen Sie die verwaiste NIC, und wiederholen Sie dann den Vorgang. |
SubnetIsDelegatedAndCannotBeUsed |
Das Subnetz wird bereits an einen anderen Dienst delegiert. | Ändern oder entfernen Sie die Delegierung , bevor Sie einen neuen Dienst ausführen. |
Cannot delete virtual network <name> because it is in use by resource <id>. |
Eine Ressource ist weiterhin mit dem VNet verbunden. | Befolgen Sie die Anweisungen zum Löschen des virtuellen Netzwerks , um die Ressource zu identifizieren und zu entfernen. |
NetworkProfileCannotBeDeleted |
Ein netzwerkprofil, das von Azure-Containerinstanzen verwendet wird, verweist weiterhin auf das Subnetz. | Überprüfen Sie, ob Azure-Containerinstanzen noch im virtuellen Netzwerk vorhanden sind, um das Problem zu beheben. |
Diagnosebefehle
Verwenden Sie den folgenden Azure CLI-Befehl, um eine umfassende Ansicht aller Ressourcen und Konfigurationen zu erhalten, die das Löschen oder Ändern des Subnetzs blockieren können:
az network vnet subnet show \
--resource-group <resource-group> \
--vnet-name <vnet-name> \
--name <subnet-name> \
--query "{addressPrefix:addressPrefix, delegations:delegations[].serviceName, serviceEndpoints:serviceEndpoints[].service, ipConfigurations:ipConfigurations[].id, privateEndpoints:privateEndpoints[].id, serviceAssociationLinks:serviceAssociationLinks[].linkedResourceType}" \
--output json
Dieser Befehl gibt Folgendes zurück:
- addressPrefix: Der aktuelle Adressbereich des Subnetzes.
- Delegierungen: Dienste, an die das Subnetz delegiert wird.
- serviceEndpoints: Konfigurierte Dienstendpunkte.
- ipConfigurations: NICs und andere Ressourcen mit IP-Adressen im Subnetz.
- privateEndpoints: Private Endpunkte, die dem Subnetz zugeordnet sind.
- serviceAssociationLinks: Dienste, die Ressourcen im Subnetz bereitgestellt haben.
Wenn eines dieser Felder Werte enthält, müssen Sie diese Ressourcen entfernen, bevor Sie das Subnetz löschen oder ändern können.