尝试在Azure中删除子网时,出现以下消息:无法保存子网'devops-subnet'。 错误:“子网GumSite-rg-devops / providers / Microsoft.Network / virtualNetworks / Devopsvnet / subnets / devops-subnet”> Devopsvnet / devops-subnet需要以下任何委托[Microsoft.Web / serverFarms]进行引用服务关联链接/ subscriptions / * * * * /resourceGroups/GumSite-rg-devops/providers/Microsoft.Network/virtualNetworks/Devopsvnet/subnets/devops-subnet/serviceAssociationLinks/AppServiceLink。
⚠请勿编辑此部分。
@yvesgermain感谢您与我们联系! 为了最好地解决您的问题,是否可以向我们提供您正在关注的MS Doc的URL(如果有)?
这里是类似于我的情况的Microsoft文章“由于serviceAssociationLinks / AppServiceLink而无法删除VNet”:
https://social.msdn.microsoft.com/Forums/zh-CN/f3fa0fb2-d930-484c-90a5-6860e360d87f/unable-to-delete-vnet-due-to-serviceassociationlinksappservicelink?forum=WAVirtualMachinesVirtualNetwork
这是类似于我的情况的文章:由于serviceAssociationLinks / AppServiceLink而无法删除VNet: https :
@yvesgermain感谢您的回复。 我已将其发送给适当的团队进行调查和更新。
@yvesgermain这是一个已知问题,您唯一可以删除此方法的方法是联系Azure支持。 如果您没有支持计划,请通过[email protected]给我
现在,我们将关闭该线程。 如果对此问题还有其他疑问,请在回复中标记我。 我们将很高兴继续讨论,并将重新讨论该问题。
似乎有一个相关的问题,即当我尝试删除子网时,出现错误:
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.
这也是只能通过拨打技术支持电话才能解决的问题吗?
@sergevm如果您删除了App Service和链接,但是仍无法删除子网,则需要创建支持请求。
如果您没有支持计划,请通过[email protected]给我
知道何时可以修复此错误?
我遇到过同样的问题。 我将App Service连接到了子网。 我与App Service一起删除了App Service计划,这破坏了我的VNet,并且不允许删除关联的子网。 为了解决方案:
@blendsdk这可能对您有帮助
@sergevm如果您删除了App Service和链接,但是仍无法删除子网,则需要创建支持请求。
如果您没有支持计划,请通过[email protected]给我
我向[email protected]发送了一条消息,但似乎没有人响应。
@frehnejc我在Azure门户中创建了一个支持请求,此问题很快得到了支持的修复。 不必发送邮件。
@frehnejc感谢您的跟进! 我能够找到您的电子邮件,并为免费支持请求启用了您的订阅。
@frehnejc感谢您的跟进! 我能够找到您的电子邮件,并为免费支持请求启用了您的订阅。
谢谢,还有在天青防火墙存在时无法删除组IP的问题,我也可以在该日志上记录票证吗?
@frehnejc您可以,但是通过相同的支持请求让工程师来解决这个问题会更容易。 如果工程师要求您再做一张票,而您却无能为力,请回复我的电子邮件,如果需要,我将启用另一个支持请求。
我在容器实例中遇到了这个问题,这是在删除容器实例并且无法删除委托时我要删除的操作。
将az cli与登录的用户一起使用以获得jwt令牌
az account get-access-token --resource https://management.azure.com/
然后使用邮递员发出以下呼叫:
添加到标题:“授权:承载|来自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
在此之后,我可以使用门户网站,cli或powershell删除委托
如果是应用服务,则需要清除“应用服务计划”>“网络”下的关联,该关联将列出您的网络与任何应用(包括插槽)的所有链接。
将vnet与应用程序服务和插槽断开连接后,您应该可以将委派设置回无,并取消选择服务端点,最后可以分别删除子网。
@dgcaron这
@dgcaron ,
在您的帮助下,我能够使用PowerShell删除VNet。
非常感谢你!
[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) }
我遇到过同样的问题。 我将App Service连接到了子网。 我与App Service一起删除了App Service计划,这破坏了我的VNet,并且不允许删除关联的子网。 为了解决方案:
- 使用与已删除的名称相同的名称创建应用服务计划
- 创建与已删除应用名称相同的应用服务
- 将App Service与VNET子网链接
- 断开VNet与App Service的连接->网络-> VNet集成->断开连接
- 删除子网
@blendsdk这可能对您有帮助
@ybutkevych这对我
我遇到过同样的问题。 我将App Service连接到了子网。 我与App Service一起删除了App Service计划,这破坏了我的VNet,并且不允许删除关联的子网。 为了解决方案:
- 使用与已删除的名称相同的名称创建应用服务计划
- 创建与已删除应用名称相同的应用服务
- 将App Service与VNET子网链接
- 断开VNet与App Service的连接->网络-> VNet集成->断开连接
- 删除子网
@blendsdk这可能对您有帮助
以后遇到同样问题的人,请按照以下步骤操作,我只是尝试了一下,然后解决了我的问题。
@dgcaron ,感谢您进行API文档的挖掘:)这是清理的bash脚本:
#!/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}"
@jannekeskitalo的解决方案对我来说效果很好。 但是我的环境中没有httpie,因此以下是使用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非常感谢! 由于您的帮助,我能够删除子网委派。
@jannekeskitalo @boonwj
我认为最简单的解决方案是像这样使用az rest
:
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
我在容器实例中遇到了这个问题,这是在删除容器实例并且无法删除委托时我要删除的操作。
将az cli与登录的用户一起使用以获得jwt令牌
az account get-access-token --resource https://management.azure.com/
然后使用邮递员发出以下呼叫:
添加到标题:“授权:承载|来自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
在此之后,我可以使用门户网站,cli或powershell删除委托
这行得通,谢谢!
@ TravisCragg-MSFT是否可以正确解决此问题,而不是强迫所有这些人与支持人员联系?
az cli命令对于AppServiceLinks似乎不起作用。 它运行成功,但是链接不会删除。
我们可以为此得到实际的解决方法吗? 如果在删除应用程序服务和ASP的情况下没有提供断开vnet的方法,那么在删除整个资源组的非生产环境中,您可能会为我们生成很多支持票证再次部署更为常见。
为什么关闭? 这是一个现有的错误/问题/问题。
最有用的评论
我遇到过同样的问题。 我将App Service连接到了子网。 我与App Service一起删除了App Service计划,这破坏了我的VNet,并且不允许删除关联的子网。 为了解决方案:
@blendsdk这可能对您有帮助