Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вы можете экспортировать группы ресурсов Azure в новый шаблон Azure Resource Manager, который затем можно развернуть. Процесс экспорта интерпретирует существующие ресурсы и создает шаблон Resource Manager, который при развертывании приводит к аналогичной группе ресурсов. При использовании параметра экспорта для группы ресурсов, содержащей расширения виртуальной машины, необходимо учитывать такие элементы, как совместимость расширений и защищенные параметры.
В этой статье описано, как работает процесс экспорта группы ресурсов для расширений виртуальных машин. Он содержит список поддерживаемых расширений и подробных сведений о том, как обрабатывать защищенные данные.
Поддерживаемые расширения виртуальной машины
Доступно множество расширений виртуальных машин. Вы не можете экспортировать все расширения в шаблон Resource Manager с помощью функции скрипта автоматизации. Если расширение виртуальной машины не поддерживается, необходимо вручную поместить его обратно в экспортируемый шаблон.
Вы можете экспортировать следующие расширения с помощью функции скрипта автоматизации:
Acronis Backup, Acronis Backup Linux, BGInfo, BMC Control-M Agent Linux, BMC Control-M Agent Windows, Chef Client, Custom Script, Custom Script Extension, Custom Script, Custom Script for Linux, Datadog Linux Agent, Datadog Windows Agent, Docker Extension, Dynatrace Linux, Dynatrace Windows, HPE Security Application Defender for Cloud, IaaS Antimalware, IaaS Diagnostics, Linux Chef Client, Linux Diagnostics, Linux Diagnostics, Os Patching для Linux, Агент Puppet, Site24x7 APM Insights, Site24x7 Linux Server, Site24x7 Windows Server, Trend Micro DSA, Trend Micro DSA Linux, vm Access for Linux, VM Access for Linux, VM Access for Linux, VM Snapshot, VM Snapshot Linux
Экспорт группы ресурсов
Чтобы экспортировать группу ресурсов в шаблон повторного использования, выполните следующие действия.
- Войдите на портал Azure.
- В меню "Концентратор " выберите "Группы ресурсов".
- Выберите целевую группу ресурсов из списка.
- В области группы ресурсов выберите "Экспорт шаблона " в разделе "Автоматизация ".
Скрипт автоматизации Azure Resource Manager создает шаблон Resource Manager, файл параметров и несколько примеров сценариев развертывания, таких как PowerShell и скрипты Azure CLI. На этом этапе можно скачать экспортируемый шаблон с помощью кнопки скачивания, добавить шаблон в библиотеку шаблонов или повторно развернуть шаблон с помощью кнопки "Развернуть ".
Настройка защищенных параметров
Многие расширения виртуальных машин Azure включают в себя конфигурацию защищенных параметров, которая шифрует конфиденциальные данные, такие как учетные данные и строки конфигурации. Защищенные параметры не экспортируются с помощью скрипта автоматизации. При необходимости повторно вставьте защищенные параметры в экспортируемый шаблон.
Шаг 1. Удаление параметра шаблона
При экспорте группы ресурсов создается один параметр шаблона для предоставления значения экспортируемым защищенным параметрам. Этот параметр можно удалить.
Чтобы удалить параметр, просмотрите список параметров и удалите тот, который выглядит примерно так же, как в этом примере JSON:
"extensions_extensionname_protectedSettings": {
"defaultValue": null,
"type": "SecureObject"
}
Шаг 2. Получение свойств для защищенных параметров
Так как каждый защищенный параметр имеет набор обязательных свойств, необходимо собрать список этих свойств. Каждый параметр конфигурации защищенных параметров можно найти в схеме Azure Resource Manager на GitHub. Эта схема содержит только наборы параметров для расширений, перечисленных в разделе обзора этой статьи.
В репозитории схем найдите требуемое расширение. После поиска объекта расширения protectedSettings запишите каждый параметр. В следующем примере IaasDiagnostic расширения необходимые параметры: storageAccountNamestorageAccountKeyи storageAccountEndPoint:
"protectedSettings": {
"type": "object",
"properties": {
"storageAccountName": {
"type": "string"
},
"storageAccountKey": {
"type": "string"
},
"storageAccountEndPoint": {
"type": "string"
}
},
"required": [
"storageAccountName",
"storageAccountKey",
"storageAccountEndPoint"
]
}
Шаг 3. Повторное создание защищенной конфигурации
На экспортируемом шаблоне выполните поиск protectedSettings. Замените экспортируемый защищенный объект настройки новым объектом, который включает необходимые параметры расширения и значение для каждого из них.
В примере IaasDiagnostic расширения новая конфигурация защищенного параметра будет выглядеть следующим образом:
"protectedSettings": {
"storageAccountName": "[parameters('storageAccountName')]",
"storageAccountKey": "[parameters('storageAccountKey')]",
"storageAccountEndPoint": "https://core.windows.net"
}
Окончательный ресурс расширения выглядит примерно так, как показано в следующем примере JSON:
{
"name": "Microsoft.Insights.VMDiagnosticsSettings",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "[variables('apiVersion')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
],
"tags": {
"displayName": "AzureDiagnostics"
},
"properties": {
"publisher": "Microsoft.Azure.Diagnostics",
"type": "IaaSDiagnostics",
"typeHandlerVersion": "1.5",
"autoUpgradeMinorVersion": true,
"settings": {
"xmlCfg": "[base64(concat(variables('wadcfgxstart'), variables('wadmetricsresourceid'), variables('vmName'), variables('wadcfgxend')))]",
"storageAccount": "[parameters('existingdiagnosticsStorageAccountName')]"
},
"protectedSettings": {
"storageAccountName": "[parameters('storageAccountName')]",
"storageAccountKey": "[parameters('storageAccountKey')]",
"storageAccountEndPoint": "https://core.windows.net"
}
}
}
Если вы используете параметры шаблона для предоставления значений свойств, их необходимо создать. При создании параметров шаблона для защищенных значений параметров используйте SecureString тип параметра для защиты конфиденциальных значений. Дополнительные сведения об использовании параметров см. в статье "Создание шаблонов Azure Resource Manager".
В примере IaasDiagnostic расширения в разделе параметров шаблона Resource Manager будут созданы следующие параметры:
"storageAccountName": {
"defaultValue": null,
"type": "SecureString"
},
"storageAccountKey": {
"defaultValue": null,
"type": "SecureString"
}
На этом этапе можно развернуть шаблон с помощью любого метода развертывания шаблона.