Share via


Impossibile eliminare una rete virtuale o una subnet usata da Istanze di Azure Container

Questo articolo illustra gli errori che si verificano quando si elimina una rete virtuale (rete virtuale) o una subnet usata da Istanze di Azure Container (ACI) e fornisce soluzioni alternative.

Sintomi

  • Quando si elimina una subnet usata da ACI, vengono visualizzati errori simili a quelli seguenti:

    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.
    
  • Quando si elimina una rete virtuale usata da ACI, viene visualizzato l'errore seguente:

    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.'
    

La delega della subnet richiesta da ACI deve fare riferimento a un collegamento di associazione del servizio residuo, che impedisce l'eliminazione della rete virtuale o della subnet usata da ACI.

  1. Passare alla subnet nel portale di Azure.

  2. Modificare la delega della subnet in Nessuno.

  3. Eliminare i profili di rete usando il az network profile delete comando per assicurarsi che nessun profilo di rete sia collegato alla subnet.

  4. Se il comando nel passaggio 3 ha esito negativo, potrebbe essere presente un profilo di rete persistente. Per eliminare un profilo di rete persistente, usare il comando seguente:

    az network profile delete --id resourceIdOfNetworkProfile
    
  5. Se i profili di rete bloccano ancora l'aggiornamento della subnet, provare a impostare di nuovo la delega della subnet su Nessuno .

  6. Se i passaggi precedenti non sono utili, provare a eliminare il collegamento all'associazione di servizi tramite l'interfaccia della riga di comando di Azure usando una versione dell'API specificata, ad esempio la versione 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
    

Causa 2: i profili di rete bloccano l'eliminazione della rete virtuale/subnet

Quando si rimuove il gruppo di contenitori, il profilo di rete creato da ACI durante la creazione del gruppo di contenitori potrebbe non essere eliminato correttamente. Ciò comporta il resto di qualcosa all'interno della rete virtuale o della subnet, che blocca determinate operazioni di eliminazione.

Soluzione alternativa 1: eliminare il profilo di rete del gruppo di contenitori dal portale di Azure

Dopo aver eliminato tutti i gruppi di contenitori ACI, seguire questa procedura:

  1. Passare al gruppo di risorse.
  2. Selezionare Mostra tipi nascosti. Per impostazione predefinita, i profili di rete sono nascosti nella portale di Azure.
  3. Selezionare il profilo di rete correlato al gruppo di contenitori.
  4. Selezionare Elimina.
  5. Eliminare la rete virtuale o la subnet.

Soluzione alternativa 2: eliminare il profilo di rete del gruppo di contenitori tramite l'interfaccia della riga di comando di Azure

Dopo aver eliminato tutti i gruppi di contenitori ACI, seguire questa procedura:

  1. Ottenere l'ID profilo di rete:

    NetworkProfile=$(az network vnet subnet show -g $RES_GROUP --vnet-name $VNET_NAME --name $SUBNET_NAME -o tsv --query ipConfigurationProfiles[].id)
    
  2. Eliminare il profilo di rete:

    az network profile delete --ids $NetworkProfile --yes
    
  3. Eliminare la subnet:

    az network vnet subnet delete --resource-group $RES_GROUP --vnet-name $VNET_NAME --name $SUBNET_NAME
    
  4. Eliminare la rete virtuale:

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

Soluzione alternativa 3: aggiornare la proprietà containerNetworkInterfaceConfigurations tramite l'interfaccia della riga di comando di Azure

Se l'eliminazione del profilo di rete tramite il portale di Azure e l'interfaccia della riga di comando di Azure ha esito negativo, aggiornare la proprietà containerNetworkInterfaceConfigurations del profilo di rete a un elenco vuoto:

  1. Ottenere l'ID profilo di rete:

    NETWORK_PROFILE_ID=$(az network profile list --resource-group <resource-group-name> --query [0].id --output tsv)
    
  2. Aggiornare il profilo di rete:

    az resource update --ids $NETWORK_PROFILE_ID --set properties.containerNetworkInterfaceConfigurations=[]
    
  3. Eliminare il profilo di rete e la subnet.

Contattaci per ricevere assistenza

In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.