0

我已执行发现操作以列出 Azure 备份中的受保护项目:“Azure VM 中的 SQL”。

我可以使用以下模板执行“发现”

 "resources": [
        {
            "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers",
            "apiVersion": "2016-12-01",
            "name": "[concat(parameters('vaultName'), '/', parameters('fabricName'), '/',parameters('protectionContainers')[copyIndex()])]",
            "properties": {
                "backupManagementType": "[parameters('backupManagementType')]",
                "workloadType": "[parameters('workloadType')]",
                "containerType": "[parameters('protectionContainerTypes')[copyIndex()]]",
                "sourceResourceId": "[parameters('sourceResourceIds')[copyIndex()]]",
                "operationType": "Register"
            },
            "copy": {
                "name": "protectionContainersCopy",
                "count": "[length(parameters('protectionContainers'))]"
            }
        }
    ]

我同样尝试了以下操作类型:

“重新注册”:按预期工作。“无效:未执行任何操作。

有人可以指导我使用 ARM 模板注销容器吗?(我已经有 API 来做这件事,但我需要一个 ARM 模板)。

同样,有没有办法使用 ARM 模板重新发现已注册容器中的数据库?

任何帮助都非常感激。

4

1 回答 1

0

查看保护容器的注册 API ,看起来支持的值为OperationTypeInvalid和。Unregister API 会触发一个使用 ARM 模板无法直接模拟的 HTTP 请求。ARM 模板主要用于创建管理作为 IaC 解决方案的 Azure 资源。RegisterReregisterDELETE

也就是说,如果您将 ARM 模板作为唯一选择,您可以尝试在Complete mode 下部署它。在完整模式下,资源管理器会删除资源组中存在但未在模板中指定的资源。

要在 Complete 模式下部署模板,您必须使用Mode参数显式设置它,因为默认模式是incremental。请务必在完整模式下部署模板之前使用假设操作,以避免无意中删除资源。

于 2021-09-30T10:29:26.137 回答