Изменение шаблона быстрого запуска Azure 201-vmss-ubuntu-autoscale для включения расширения Docker

Я пытаюсь развернуть измененную версию https://github.com/Azure/azure-quickstart-templates/blob/master/201-vmss-ubuntu-autoscale/azuredeploy.json для добавления в расширение Docker, но получаю сообщение об ошибке при попытке развернуть. Вы можете увидеть, как я пытался это сделать, на https://gist.github.com/jinky32/d80e0ab2137236ff262484193f93c946 строка 329 ++

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "name": "[concat(variables('vmName'),'/', variables('extensionName'))]",
  "apiVersion": "2015-05-01-preview",
  "location": "[variables('location')]",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
  ],
  "properties": {
    "publisher": "Microsoft.Azure.Extensions",
    "type": "DockerExtension",
    "typeHandlerVersion": "1.0",
    "autoUpgradeMinorVersion": true
        }
      }

когда я бегу azure group create --name autoscalegroup2 --location "West Europe" \ --template-uri http://path/to.json

после ввода некоторых деталей мне будет предложено ввести error: InvalidTemplate : Deployment template validation failed: 'The resource 'Microsoft.Compute/virtualMachines/autoscalegroup2' is not defined in the template. Please see https://aka.ms/arm-template for usage details.'.

Однако я думал, что это должно работать на основе строк 334-336.

"dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
  ],

и vmName определяется в переменных выше (строка 68)

"vmName": "[resourceGroup().name]",

Любая помощь очень ценится!


person Stuart Brown    schedule 18.11.2016    source источник


Ответы (1)


Расширения для VMSS создаются по-разному - я не нашел точного образца (а вы, вероятно, не нашли), но взгляните на это в качестве примера:

https://github.com/Azure/azure-quickstart-templates/blob/master/201-vmss-ubuntu-web-ssl/azuredeploy.json#L382-L398

Тело свойств для расширений остается таким же для VMSS, но это не дочерний ресурс. Таким образом, вы получите что-то вроде этого в объекте свойств ресурса VMSS:

      "extensionProfile": {
        "extensions": [
          {
            "name": "docker",
            "properties": {
              "publisher": "Microsoft.Azure.Extensions",
              "type": "DockerExtension",
              "typeHandlerVersion": "1.0",
              "autoUpgradeMinorVersion": true,
              "settings": {}
            }
          }
        ]
      },

Профиль расширения является одноранговым узлом osProfile, networkProfile и т. Д.

person bmoore-msft    schedule 19.11.2016