Share via


Kan een virtueel netwerk of subnet dat door Azure Container Instances wordt gebruikt, niet verwijderen

In dit artikel worden fouten besproken die optreden wanneer u een virtueel netwerk (VNet) of subnet verwijdert dat wordt gebruikt door Azure Container Instances (ACI) en biedt tijdelijke oplossingen.

Symptomen

  • Wanneer u een subnet verwijdert dat wordt gebruikt door ACI, ontvangt u fouten die er ongeveer als volgt uitzien:

    Failed to delete subnet '<subnet-name>'.
    Error: 'Subnet /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name> requires any of the following delegations
    [Microsoft.ContainerInstance/containerGroups] to reference service association link /
    subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>/serviceAssociationLinks/acisal.'
    
    Subnet <subnet-name> is in use by /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkProfiles/aci-network-profile-<network-profile-name>/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile and cannot be deleted. 
    In order to delete the subnet, delete all the resources within the subnet. See aka.ms/deletesubnet.
    
    Failed to delete subnet '<subnet-name>'. 
    Error: Subnet <subnet-name> is in use by /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkProfiles/aci-network-profile-<network-profile-name>/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile/aci-network-profile-<network-profile-name>/eth0/ipconfigprofile and cannot be deleted. 
    In order to delete the subnet, delete all the resources within the subnet. See aka.ms/deletesubnet.
    
  • Wanneer u een VNet verwijdert dat wordt gebruikt door ACI, ontvangt u de volgende fout:

    Failed to delete virtual network '<vnet-name>'. 
    Error: 'Subnet /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name> requires any of the following delegations [Microsoft.ContainerInstance/containerGroups] to reference service association link 
    /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>/serviceAssociationLinks/acisal.'
    

De subnetdelegering die door ACI is vereist, moet verwijzen naar een resterende servicekoppeling, waardoor het verwijderen van het VNet of subnet dat door ACI wordt gebruikt, wordt voorkomen.

  1. Navigeer naar het subnet in de Azure Portal.

  2. Wijzig de subnetdelegering in Geen.

  3. Verwijder netwerkprofielen met behulp van de az network profile delete opdracht om ervoor te zorgen dat er geen netwerkprofielen zijn gekoppeld aan het subnet.

  4. Als de opdracht in stap 3 mislukt, is er mogelijk een blijvend netwerkprofiel. Als u een hangend netwerkprofiel wilt verwijderen, gebruikt u de volgende opdracht:

    az network profile delete --id resourceIdOfNetworkProfile
    
  5. Als netwerkprofielen de subnetupdate nog steeds blokkeren, probeert u de subnetdelegering opnieuw in te stellen op Geen .

  6. Als de vorige stappen niet helpen, probeert u de Koppeling voor servicekoppeling te verwijderen via de Azure CLI met behulp van een opgegeven API-versie, zoals versie 2018-10-01:

    az resource delete --ids /subscriptions/<subscription-id>/resourceGroups/<resourcegroup-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default --api-version 2018-10-01
    

Oorzaak 2: Netwerkprofielen blokkeren het verwijderen van het VNet/subnet

Wanneer u de containergroep verwijdert, wordt het netwerkprofiel dat door ACI is gemaakt tijdens het maken van de containergroep mogelijk niet correct verwijderd. Dit resulteert in iets dat binnen het VNet of subnet blijft, waardoor bepaalde verwijderingsbewerkingen worden geblokkeerd.

Tijdelijke oplossing 1: verwijder het netwerkprofiel van de containergroep uit de Azure Portal

Nadat u alle ACI-containergroepen hebt verwijderd, voert u de volgende stappen uit:

  1. Ga naar de resourcegroep.
  2. Selecteer Verborgen typen weergeven. Standaard zijn netwerkprofielen verborgen in de Azure Portal.
  3. Selecteer het netwerkprofiel dat is gerelateerd aan de containergroep.
  4. Selecteer Verwijderen.
  5. Verwijder het VNet of subnet.

Tijdelijke oplossing 2: het netwerkprofiel van de containergroep verwijderen via Azure CLI

Nadat u alle ACI-containergroepen hebt verwijderd, voert u de volgende stappen uit:

  1. Haal de netwerkprofiel-id op:

    NetworkProfile=$(az network vnet subnet show -g $RES_GROUP --vnet-name $VNET_NAME --name $SUBNET_NAME -o tsv --query ipConfigurationProfiles[].id)
    
  2. Het netwerkprofiel verwijderen:

    az network profile delete --ids $NetworkProfile --yes
    
  3. Het subnet verwijderen:

    az network vnet subnet delete --resource-group $RES_GROUP --vnet-name $VNET_NAME --name $SUBNET_NAME
    
  4. Het VNet verwijderen:

    az network vnet delete --resource-group $RES_GROUP --name $SUBNET_NAME
    

Tijdelijke oplossing 3: de eigenschap containerNetworkInterfaceConfigurations bijwerken via Azure CLI

Als het verwijderen van het netwerkprofiel via de Azure Portal en Azure CLI mislukt, werkt u de eigenschap containerNetworkInterfaceConfigurations netwerkprofiel bij naar een lege lijst:

  1. Haal de netwerkprofiel-id op:

    NETWORK_PROFILE_ID=$(az network profile list --resource-group <resource-group-name> --query [0].id --output tsv)
    
  2. Werk het netwerkprofiel bij:

    az resource update --ids $NETWORK_PROFILE_ID --set properties.containerNetworkInterfaceConfigurations=[]
    
  3. Verwijder het netwerkprofiel en het subnet.

Contacteer ons voor hulp

Als u vragen hebt of hulp nodig hebt, maak een ondersteuningsaanvraag of vraag de Azure-communityondersteuning. U kunt ook productfeedback verzenden naar de Feedback-community van Azure.