Azure-docs: Error al eliminar el servicio de subredAssociationLinks AppServiceLink

Creado en 25 feb. 2020  ·  28Comentarios  ·  Fuente: MicrosoftDocs/azure-docs

Cuando intento eliminar una subred en Azure, aparece el siguiente mensaje: No se pudo guardar la subred 'devops-subnet'. Error: 'Subred GumSite-rg-devops / proveedores / Microsoft.Network / virtualNetworks / Devopsvnet / subnets / devops-subnet'> Devopsvnet / devops-subnet requiere cualquiera de las siguientes delegaciones [Microsoft.Web / serverFarms] para hacer referencia enlace de asociación de servicios / subscriptions / * * * * /resourceGroups/GumSite-rg-devops/providers/Microsoft.Network/virtualNetworks/Devopsvnet/subnets/devops-subnet/serviceAssociationLinks/AppServiceLink. '


Detalles del documento

No edite esta sección.

Pri3 cxp product-question triaged virtual-networsvc

Comentario más útil

Tuve el mismo problema. Tenía el App Service conectado a la subred. Eliminé el App Service Plan junto con el App Service que rompió mi VNet y no permitió eliminar la subred asociada. Para arreglar la solución:

  1. Crear un plan de servicio de aplicaciones con el mismo nombre que el eliminado
  2. Crear App Service con el mismo nombre que el eliminado
  3. Vincular App Service con la subred VNET
  4. Desconecte VNet de App Service -> Redes -> Integración de VNet -> Desconectar
  5. Eliminar subred

@blendsdk esto probablemente te ayude

Todos 28 comentarios

@yvesgermain ¡ Gracias por comunicarte! Para responder mejor a su pregunta, ¿podría proporcionarnos la URL del MS Doc que estaba siguiendo, si lo hubiera?

Aquí un artículo de Microsoft "No se puede eliminar la red virtual debido a serviceAssociationLinks / AppServiceLink" que se parece a mi situación:
https://social.msdn.microsoft.com/Forums/en-US/f3fa0fb2-d930-484c-90a5-6860e360d87f/unable-to-delete-vnet-due-to-serviceassociationlinksappservicelink?forum=WAVirtualMachinesVirtualNetwork

Aquí hay un artículo que se parece a mi situación: No se puede eliminar la red virtual debido a serviceAssociationLinks / AppServiceLink: https://social.msdn.microsoft.com/Forums/en-US/f3fa0fb2-d930-484c-90a5-6860e360d87f/unable-to- delete-vnet-due-to-serviceassociationlinksappservicelink? forum = WAVirtualMachinesVirtualNetwork

@yvesgermain Gracias por la respuesta. He enviado esto al equipo correspondiente para que lo investigue y actualice.

@yvesgermain Este es un problema conocido y la única forma en que podrá eliminarlo es ponerse en contacto con el soporte de Azure. Si no tiene un plan de soporte, envíeme un correo electrónico a [email protected] con su ID de suscripción y un enlace a esta publicación, y habilitaré una solicitud de soporte gratuita por única vez para que elimine la subred.

Ahora procederemos a cerrar este hilo. Si hay más preguntas sobre este asunto, por favor etiquétame en tu respuesta. Con mucho gusto continuaremos la discusión y reabriremos el tema.

Parece tener un problema relacionado, es decir, cuando intento eliminar una subred, aparece un error:

Failed to delete subnet 'xxx'. Error: Subnet xxx is in use by my-resource-group/providers/Microsoft.Network/virtualNetworks/my-vnet/subnets/xxx/serviceAssociationLinks/AppServiceLink'>my-vnet/xxx/AppServiceLink and cannot be deleted. In order to delete the subnet, delete all the resources within the subnet. See aka.ms/deletesubnet.

¿Es esto también algo que solo se puede solucionar haciendo una llamada de soporte?

@sergevm Si eliminó App Service y el enlace, pero la subred no se puede eliminar, deberá crear una solicitud de soporte.

Si no tiene un plan de soporte, envíeme un correo electrónico a [email protected] con su ID de suscripción y un enlace a esta publicación, y habilitaré una solicitud de soporte gratuita por única vez para que elimine la subred.

¿Alguna idea de cuándo se solucionará este error?

Tuve el mismo problema. Tenía el App Service conectado a la subred. Eliminé el App Service Plan junto con el App Service que rompió mi VNet y no permitió eliminar la subred asociada. Para arreglar la solución:

  1. Crear un plan de servicio de aplicaciones con el mismo nombre que el eliminado
  2. Crear App Service con el mismo nombre que el eliminado
  3. Vincular App Service con la subred VNET
  4. Desconecte VNet de App Service -> Redes -> Integración de VNet -> Desconectar
  5. Eliminar subred

@blendsdk esto probablemente te ayude

@sergevm Si eliminó App Service y el enlace, pero la subred no se puede eliminar, deberá crear una solicitud de soporte.

Si no tiene un plan de soporte, envíeme un correo electrónico a [email protected] con su ID de suscripción y un enlace a esta publicación, y habilitaré una solicitud de soporte gratuita por única vez para que elimine la subred.

Envié un mensaje a [email protected] pero nadie parece responder.

@frehnejc Creé una solicitud de soporte en Azure Portal, y el soporte lo solucionó poco después. No tuve que enviar un correo.

@frehnejc ¡ Gracias por el seguimiento! Pude encontrar su correo electrónico y habilité su suscripción para una solicitud de asistencia gratuita.

@frehnejc ¡ Gracias por el seguimiento! Pude encontrar su correo electrónico y habilité su suscripción para una solicitud de asistencia gratuita.

Gracias, también tengo problemas con las IP de grupo que no se pueden eliminar cuando había un firewall azul. ¿Puedo registrar un ticket en eso también?

@frehnejc Puede, pero será más fácil pedirle al ingeniero que se encargue de eso con la misma solicitud de soporte. Si el ingeniero le pide que haga un segundo ticket y no puede, responda a mi correo electrónico y habilitaré otra solicitud de soporte si es necesario.

Me encontré con esto con instancias de contenedor y esto es lo que hice para eliminar esto cuando se eliminó mi instancia de contenedor y no pude eliminar la delegación.

uso de az cli con un usuario que haya iniciado sesión para obtener un token jwt

az account get-access-token --resource https://management.azure.com/

luego usando cartero para realizar las siguientes llamadas:

agregar a los encabezados: "Autorización: Portador | token de acceso desde cli |"

DELETE  Service Association
 https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01

DELETE Network Profle
 https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}?api-version=2020-05-01

después de esto, podría eliminar la delegación usando el portal, cli o powershell

En el caso de un servicio de aplicación, debe limpiar la asociación en App Service Plan> Networking, que enumerará todos los enlaces que su red tiene a cualquiera de las aplicaciones, incluidas las ranuras.
Una vez que desconecte la red virtual del servicio de la aplicación y la ranura, debería poder volver a establecer la delegación en Ninguno y anular la selección del punto final del servicio y, finalmente, poder eliminar la subred respectivamente.

@dgcaron ¡ esto funcionó! Muchas gracias.

@dgcaron ,
Con su ayuda, pude eliminar la red virtual con PowerShell.
¡Muchas gracias!

[string]$ResourceGroupName = 'MyResourceGroupName'
[string]$VirtualNetworkName = 'VNetName'
[string]$SubnetName = 'SubnetName'

$CurrentAzureContext = Get-AzContext
$AzureRmProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
$ProfileClient = New-Object Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient($AzureRmProfile)
$Token = $ProfileClient.AcquireAccessToken($CurrentAzureContext.Tenant.TenantId)
[string]$AccessToken = $Token.AccessToken
[string]$ManagementEp = $CurrentAzureContext.Environment.ResourceManagerUrl

[string]$NetworkProfileName = (Get-AzNetworkProfile -ResourceGroupName $ResourceGroupName).Name

[string]$Uri1 = "$($ManagementEp)subscriptions/$($CurrentAzureContext.Subscription.Id)/resourceGroups/$ResourceGroupName/providers/Microsoft.Network/virtualNetworks/$VirtualNetworkName/subnets/$SubnetName/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01"
[string]$Uri2 = "$($ManagementEp)subscriptions/$($CurrentAzureContext.Subscription.Id)/resourceGroups/$ResourceGroupName/providers/Microsoft.Network/networkProfiles/$($NetworkProfileName)?api-version=2020-05-01"

Invoke-RestMethod -Method Delete -Uri $Uri1 -Headers @{"Authorization" = ("Bearer " + $AccessToken) }

Invoke-RestMethod -Method Delete -Uri $Uri2 -Headers @{"Authorization" = ("Bearer " + $AccessToken) }

Tuve el mismo problema. Tenía el App Service conectado a la subred. Eliminé el App Service Plan junto con el App Service que rompió mi VNet y no permitió eliminar la subred asociada. Para arreglar la solución:

  1. Crear un plan de servicio de aplicaciones con el mismo nombre que el eliminado
  2. Crear App Service con el mismo nombre que el eliminado
  3. Vincular App Service con la subred VNET
  4. Desconecte VNet de App Service -> Redes -> Integración de VNet -> Desconectar
  5. Eliminar subred

@blendsdk esto probablemente te ayude

@ybutkevych ¡ esto funcionó para mí! Muchas gracias.

Tuve el mismo problema. Tenía el App Service conectado a la subred. Eliminé el App Service Plan junto con el App Service que rompió mi VNet y no permitió eliminar la subred asociada. Para arreglar la solución:

  1. Crear un plan de servicio de aplicaciones con el mismo nombre que el eliminado
  2. Crear App Service con el mismo nombre que el eliminado
  3. Vincular App Service con la subred VNET
  4. Desconecte VNet de App Service -> Redes -> Integración de VNet -> Desconectar
  5. Eliminar subred

@blendsdk esto probablemente te ayude

Quien esté experimentando el mismo problema en el futuro, siga estos pasos, los probé y solucionó mi problema.

@dgcaron , gracias por investigar los documentos de la API :) Aquí hay un script bash para la limpieza:

#!/bin/bash
# Requires "httpie" command line tool

# Set variables with your identifiers...
subscriptionId=""
resourceGroupName=""
virtualNetworkName=""
subnetName=""

# To get the profile name, try subnet delete with CLI or portal and check the error message
# Should be something like this:
networkProfileName="aci-network-profile-vnet-foo-01-subnet-bar-01"

token=$(az account get-access-token --resource https://management.azure.com/ --query accessToken -o tsv)
http DELETE https://management.azure.com/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Network/virtualNetworks/${virtualNetworkName}/subnets/${subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01 \
"Authorization: Bearer ${token}"

http DELETE https://management.azure.com/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkProfiles/${networkProfileName}?api-version=2020-05-01 \
"Authorization: Bearer ${token}"

La solución de @jannekeskitalo funcionó bien para mí. Pero no tenía httpie en mi entorno, por lo que la siguiente es la misma implementación con curl.

#!/bin/bash

# Set variables with your identifiers...
subscriptionId=""
resourceGroupName=""
virtualNetworkName=""
subnetName=""

# To get the profile name, try subnet delete with CLI or portal and check the error message
# Should be something like this:
networkProfileName="aci-network-profile-vnet-foo-01-subnet-bar-01"

token=$(az account get-access-token --resource https://management.azure.com/ --query accessToken -o tsv)

curl -H "Authorization: Bearer ${token}" -X DELETE https://management.azure.com/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Network/virtualNetworks/${virtualNetworkName}/subnets/${subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01
curl -H "Authorization: Bearer ${token}" -X DELETE https://management.azure.com/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkProfiles/${networkProfileName}?api-version=2020-05-01

@dgcaron ¡ Muchas gracias! Gracias a su ayuda, pude eliminar la delegación de subred.

@jannekeskitalo @boonwj

Creo que la solución más simple es usar az rest así:

az rest --method delete --uri https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01

Me encontré con esto con instancias de contenedor y esto es lo que hice para eliminar esto cuando se eliminó mi instancia de contenedor y no pude eliminar la delegación.

uso de az cli con un usuario que haya iniciado sesión para obtener un token jwt

az account get-access-token --resource https://management.azure.com/

luego usando cartero para realizar las siguientes llamadas:

agregar a los encabezados: "Autorización: Portador | token de acceso desde cli |"

DELETE  Service Association
 https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default?api-version=2018-10-01

DELETE Network Profle
 https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}?api-version=2020-05-01

después de esto, podría eliminar la delegación usando el portal, cli o powershell

¡Esto funcionó, gracias!

@ TravisCragg-MSFT, ¿sería posible solucionar esto correctamente en lugar de obligar a todas estas personas a ponerse en contacto con el soporte?

El comando az cli no parece funcionar para AppServiceLinks. Se ejecuta correctamente, pero el enlace no se elimina.

¿Podemos obtener una solución real para esto? Si no proporciona una forma de desconectar la vnet en el caso de que se eliminen un servicio de aplicación y la ASP, es probable que genere bastantes tickets de soporte para nosotros en entornos que no son de producción donde se eliminan grupos de recursos completos. y desplegar de nuevo es más común.

¿Por qué esta cerrado? Este es un error / problema / problema existente.

¿Fue útil esta página
0 / 5 - 0 calificaciones