微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 ARM 模板进行部署时,如何禁用 Azure API 管理实例的软删除?

如何解决使用 ARM 模板进行部署时,如何禁用 Azure API 管理实例的软删除?

在我的项目团队中,我们有一个 Azure DevOps 管道,用于拆除 CI 环境中的特定资源组,然后在第二天使用 ARM 模板重新部署它。

在 ~2021 年春季,似乎在 Azure API 管理实例上自动启用了软删除选项,因此现在此管道失败了。这是因为您无法部署与已被软删除的资源同名的资源,并且在删除后 48 小时内不会自动清除这些资源。当管道尝试在此时间范围内重新部署 API 管理实例时,它失败了。拆除和重新部署之间的时间不能延长。

API Management 的文档,但那是针对 REST API 调用的,我想知道它是否可以在 ARM 模板部署中指定。

还有这个 keyvault resource 的文档,也许我可以使用类似的东西?不过,我不确定我会把它放在哪里。

欢迎提供任何相关建议。 TIA。

解决方法

或使用此操作清除资源:https://docs.microsoft.com/en-us/azure/api-management/soft-delete#purge-a-soft-deleted-apim-instance

,

请参考 https://docs.microsoft.com/en-us/answers/questions/257072/azure-api-management-already-exists.html 看看是否有帮助。您可能希望在 UserVoice 上提出 feature request 以支持。

您可以尝试创建一个脚本来检查“按订阅列出已删除的服务”REST API 来检查已删除的 APIM 服务是否处于“软删除”状态,它还会返回 API 管理服务将要删除的日期被清除。 Deleted Services - List By Subscription (Azure API Management) | Microsoft Docs

,

目前唯一的选择是清除(不能通过 ARM 模板使用)然后部署。我们正在考虑减轻此类担忧的选项。

,

作为一种解决方法,您可以明确删除 API 管理服务并指定要使用的 2019-12-01 API 版本(不确定您使用什么来删除 RG,但例如 https://docs.microsoft.com/en-us/powershell/module/az.resources/remove-azresource?view=azps-5.7.0)。这样服务就会被硬删除。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。