как использовать вложенную копию в Arm Template - PullRequest
0 голосов
/ 07 ноября 2018

Я создаю несколько политик ресурсов (политики резервного копирования в Recovery Service Vault) для нескольких сред. Мне удалось создать их для одной среды, как мне их реплицировать, используя вложенную копию для QA.

У них будет имя политики AZR-QA-SQL-1Hour-Policy-001

Любая помощь приветствуется.

  "variables": {
    "sqlDevPolicyName": [
      "[concat('AZR-DEV-SQL-1HOUR-POLICY-001')]",
      "[concat('AZR-DEV-SQL-4HOUR-POLICY-001')]",
      "[concat('AZR-DEV-SQL-8HOUR-POLICY-001')]"
    ]
    }
  }

"resources": [
    {
      "type": "Microsoft.RecoveryServices/vaults",
      "apiVersion": "2018-01-10",
      "name": "[parameters('vaultName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "RS0",
        "tier": "Standard"
      },
      "properties": {}
    },
    {
      "apiVersion": "2018-01-10",
      "name": "[concat(parameters('vaultName'), '/', variables('sqlPolicyName')[copyIndex()])]",
      "type": "Microsoft.RecoveryServices/vaults/backupPolicies",
      "dependsOn": [
        "[concat('Microsoft.RecoveryServices/vaults/', parameters('vaultName'))]"
      ],
      "copy": {
        "name": "policies",
        "count": "[length(variables('sqlDevPolicyName'))]"
      },
      "location": "[parameters('location')]",
      "properties": {
        "backupManagementType": "AzureWorkload",
        "protectedItemsCount": 0,
        "settings": {
          "isCompression": false,
          "issqlcompression": false,
          "timeZone": "[parameters('timeZone')]"
        },
        "subProtectionPolicy": [
          {
            "policyType": "Full",
            "retentionPolicy": {
              "retentionPolicyType": "LongTermRetentionPolicy",
              "weeklySchedule": {
                "daysOfTheWeek": [
                  "Sunday"
                ],
                "retentionDuration": {
                  "count": 15,
                  "durationType": "Weeks"
                },
                "retentionTimes": "[parameters('scheduleRunTimes')]"
              }
            },

1 Ответ

0 голосов
/ 08 ноября 2018

Согласно моему пониманию того, что вы говорите, вам нужно сделать следующее:

"variables": {
  "sqlQAPolicyName": [ // dont need concat() here
    "AZR-QA-SQL-1HOUR-POLICY-001",
    "AZR-QA-SQL-4HOUR-POLICY-001",
    "AZR-QA-SQL-8HOUR-POLICY-001"
  ]
},
"resources": [
  {
    same thing here, just need to create it two times, as you now have 2 sets of resources.
    and you need to use your QA variable to create backup policies for QA
    ...
  } 
]

по крайней мере, так я это вижу

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...