通过 ARM 模板删除 Service Fabric 服务

Posted

技术标签:

【中文标题】通过 ARM 模板删除 Service Fabric 服务【英文标题】:Delete Service fabric Service via ARM template 【发布时间】:2021-09-09 02:35:58 【问题描述】:

我有一个应用程序,它有 3 个服务(服务 1 到 3),我通过 ARM 模板将这些服务部署到不同的集群。现在需要删除服务 3。现在,当我将应用程序清单更改为仅删除该服务并部署我的 ARM 模板时,Service Fabric 部署失败并出现以下错误:


  "ClassName": "System.Fabric.FabricException",
  "Message": "Services must be explicitly deleted before removing their Service Types ......"

在互联网上搜索,我看到需要使用Remove-ServiceFabricService cmdlet 删除该服务。

我想检查这是否是删除服务的唯一选项,或者是否有任何其他方式使用 ARM 模板来删除 SF 服务,或者可能是禁用上述检查的一种方式,因为删除是故意的。

【问题讨论】:

您可以使用部署脚本在PowerShell中运行删除命令docs.microsoft.com/en-us/azure/azure-resource-manager/templates/… 【参考方案1】:

目前,documentation says 你必须使用 Powershell 来删除它们:

删除使用应用程序部署的应用程序 资源管理器中的资源模型:

使用 Get-AzResource cmdlet 获取资源 ID 应用:

Get-AzResource -Name <String> | f1

使用 Remove-AzResource cmdlet 删除应用程序资源:

Remove-AzResource -ResourceId <String> [-Force] [-ApiVersion <String>]

【讨论】:

以上是关于通过 ARM 模板删除 Service Fabric 服务的主要内容,如果未能解决你的问题,请参考以下文章

Azure Functions ARM 模板重新部署会删除我发布的函数

如何通过ARM更新Azure Service Bus的队列/主题?

无法使用带有 Atmoz/SFTP (SSH) 的 ARM 模板挂载 /home 目录

无法通过 ARM 模板将 CMK 加密应用于 Azure 存储帐户

k8s学习-Service(概念模板创建外部代理删除等)

如何通过 ARM 模板在 StorageAccount 中设置选定的网络