问题描述

使用Azure APIM服务,在删除旧资源准备新建相同名称的新APIM服务时,尝试多次都是出现“指定的服务名称已正在使用”错误。但实际上同名称的服务已经被删除。为什么多次重建还是提示正在使用呢?

问题解答

这是因为APIM服务自动启用了软删除(Soft-Delete)功能。 在删除 API 管理实例时,APIM服务将处于已删除状态,任何正常的 API 管理操作都无法访问该服务。

在软删除状态下:

只能列出、恢复或清除(永久删除)API 管理实例。

在经过预先确定的保留期(48 小时)后,Azure 将指派系统永久删除 API 管理实例所对应的底层数据。

不能重复使用 API 管理实例的名称。

如果未在 48 小时内恢复或清除 API 管理实例,则系统会自动将其永久删除。

 

所以,如果要重新创建同名的APIM服务,可以等待48小时后,或者是通过清除方法( Purge a soft-deleted instance ) 来实现清除APIM服务。

 

Purge a soft-deleted Instance:

DELETE https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/locations/{location}/deletedservices/{serviceName}?api-version=2021-08-01

PS:  Authorization 可以通过 Azure 门户上 F12 (开发者模式) 下抓取操作APIM服务的请求所使用Authrozation值也可以! 或参考文档 : https://www.cnblogs.com/lulight/p/14978216.html

 

参考资料

APIM Soft-delete behavior : https://docs.microsoft.com/en-us/azure/api-management/soft-delete#soft-delete-behavior

Deleted Services - Purge :https://docs.microsoft.com/en-us/rest/api/apimanagement/current-ga/deleted-services/purge?tabs=HTTP

 

 

 

参考阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。