Невозможно добавить VM в RecoveryServiceVault во время цикла - PullRequest
0 голосов
/ 29 декабря 2018

Я пытаюсь создать набор vms через цикл, я хотел бы добавить хранилище служб восстановления vm и политику резервного копирования, это работает на одном vm, однако при добавлении я получаю следующую ошибкуcopyIndex(1) to friendlyName.

Ниже приведен раздел служб восстановления:

 {
      "apiVersion": "2017-05-10",
      "name": "[concat(parameters('VMNames'),copyIndex(1),'recoveryServicesVault')]",
      "type": "Microsoft.Resources/deployments",
      "resourceGroup": "[parameters('recoveryServicesVaultResourceGroup')]",
      "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachines/', parameters('VMNames'),copyIndex(1))]"
      ],
      "properties": {
        "mode": "Incremental",
        "template": {
          "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
          "contentVersion": "1.0.0.0",
          "resources": [
            {
              "name": "[concat(parameters('recoveryServicesVaultName'), '/', 'Azure', '/', variables('rsvV2vm'), resourceGroup().name, ';', parameters('VMNames'), copyIndex(1))]",
              "apiVersion": "2017-07-01",
              "type": "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent",
              "properties": {
                "friendlyName": "[concat(parameters('VMNames'), copyIndex(1), 'BackupIntent')]",
                "protectionIntentItemType": "AzureResourceItem",
                "policyId": "[resourceId(parameters('recoveryServicesVaultResourceGroup'), 'Microsoft.RecoveryServices/vaults/backupPolicies', parameters('recoveryServicesVaultName'), parameters('recoveryServicesVaultBackupPolicyName'))]",
                "sourceResourceId": "[resourceId(resourceGroup().name, 'Microsoft.Compute/virtualMachines', parameters('VMNames'))]"
              }
            }
          ]
        }
      }
    }

Полный код: https://pastebin.com/embed_iframe/7LSB7Lkb

Можно ли это сделать с помощью цикла?

1 Ответ

0 голосов
/ 29 декабря 2018

Я не уверен, но похоже, что ваша name для резервной копии недействительна:

"[concat(variables('vaultName'), '/', variables('backupFabric'), '/', variables('protectionContainer'), '/', variables('protectedItem'))]",

этот пример состоит из 4 частей, ваша только 3.

https://github.com/Azure/azure-quickstart-templates/blob/master/101-recovery-services-create-vm-and-configure-backup/azuredeploy.json#L210
это также может помочь: Шаблон JSON Azure ARM - добавление виртуальной машины в хранилище служб восстановления в другой группе ресурсов

...