Краткое руководство. Создание шаблонов ARM с помощью Visual Studio Code

Средства Azure Resource Manager для Visual Studio Code предоставляют языковую поддержку, фрагменты ресурсов и функцию автозавершения ресурсов. Эти инструменты помогают создавать и проверять шаблоны Azure Resource Manager (шаблоны ARM) и поэтому являются рекомендуемым методом создания и настройки шаблонов ARM. В этом кратком руководстве показано, как с помощью расширения создать шаблон ARM с нуля. При этом вы воспользуетесь возможностями расширений, например фрагментами кода шаблона Resource Manager, функциями проверки и завершения, а также поддержкой файла параметров.

В этом кратком руководстве рассматривается использование расширения Visual Studio Code для создания шаблона ARM. Дополнительные сведения о синтаксисе см . в руководстве по созданию и развертыванию первого шаблона ARM.

Для работы с этим кратким руководством вам необходимо установить Visual Studio Code с расширением средств Azure Resource Manager. Вам также потребуется установить и аутентифицировать Azure CLI или модуль Azure PowerShell.

Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.

Совет

Мы рекомендуем использовать Bicep, так как он предоставляет те же возможности, что и шаблоны ARM, и имеет более простой синтаксис. Подробнее см. статью Краткое руководство. Создание BICEP-файлов с помощью Visual Studio Code.

Примечание.

Текущий выпуск расширения средств Azure Resource Manager для Visual Studio Code не распознает улучшения, внесенные в languageVersion 2.0.

Создание шаблона ARM

Создайте и откройте файл azuredeploy.json с помощью Visual Studio Code. Введите arm в редактор кода, который инициирует фрагмент кода Azure Resource Manager для формирования шаблона Resource Manager.

Выберите arm!, чтобы создать шаблон для развертывания группы ресурсов Azure.

Screenshot showing Azure Resource Manager scaffolding snippets.

В этом фрагменте кода создаются стандартные блоки для шаблона Resource Manager.

Screenshot showing a fully scaffolded ARM template.

Обратите внимание, что языковой режим Visual Studio Code изменился с JSON на шаблон Azure Resource Manager. Расширение включает языковой сервер, характерный для шаблонов ARM, которые предоставляют проверку, завершение шаблона и другие языковые службы.

Screenshot showing Azure Resource Manager as the Visual Studio Code language mode.

Добавление ресурса Azure

Расширение содержит фрагменты кода для многих ресурсов Azure. С помощью этих фрагментов кода можно легко добавить ресурсы к развертыванию шаблона.

Поместите курсор в блок ресурсов шаблона, введите storage и выберите фрагмент кода arm-storage.

Screenshot showing a resource being added to the ARM template.

В результате этого действия в шаблон будет добавлен ресурс хранилища.

Screenshot showing an Azure Storage resource in an ARM template.

Вы можете переключаться между настраиваемыми свойствами в учетной записи хранения с помощью клавиши TAB.

Screenshot showing how the tab key can be used to navigate through resource configuration.

Завершение и проверка

Одной из наиболее мощных возможностей расширения является интеграция со схемами Azure. Схемы Azure предоставляют расширения с возможностями проверки и завершения ресурсов. Давайте изменим учетную запись хранения, чтобы увидеть возможности проверки и завершения в действии.

Сначала задайте для типа учетной записи хранения недопустимое значение, например megaStorage. Обратите внимание, что при выполнении этого действия появится предупреждение о том, что megaStorage не является допустимым значением.

Screenshot showing an invalid storage configuration.

Чтобы использовать возможности завершения, удалите megaStorage, поместите курсор внутри двойных кавычек и нажмите ctrl + space. Отобразится список завершения допустимых значений.

Screenshot showing extension auto-completion.

Добавление параметров шаблона

Теперь создайте параметр и воспользуйтесь им, чтобы указать имя учетной записи хранения.

Поместите курсор в блок параметров, добавьте символ возврата каретки, введите ", а затем выберите фрагмент кода new-parameter. В шаблон будет добавлен универсальный параметр.

Screenshot showing a parameter being added to the ARM template.

Измените имя параметра на storageAccountName, а описание на Storage Account Name.

Screenshot showing the completed parameter in an ARM template.

Минимальная длина имен учетных записей хранения Azure — 3 символа, а максимальная — 24. Добавьте в параметр minLength и maxLength, а затем укажите соответствующие значения.

Screenshot showing minLength and maxLength being added to an ARM template parameter.

Теперь обновите свойство Name в ресурсе хранилища, чтобы использовать параметр. Для этого удалите текущее имя. Введите двойные кавычки и открывающуюся квадратную скобку [, которая вызывает список функций шаблона Resource Manager. В списке выберите parameters.

Screenshot showing auto-completion when using parameters in ARM template resources.

Если ввести одинарную кавычку ' внутри круглых скобок, откроется список всех параметров, определенных в шаблоне, в данном случае — storageAccountName. Выберите параметр .

Screenshot showing completed parameter in an ARM template resource.

Создание файла параметров

Файл параметров шаблона Resource Manager позволяет сохранять значения параметров среды и передавать их в виде группы во время развертывания. Например, можно иметь файл параметров со значениями, определенными для тестовой среды, и другой для рабочей среды.

Расширение позволяет легко создавать файл параметров на основе имеющихся шаблонов. Для этого щелкните правой кнопкой мыши шаблон в редакторе кода и выберите Select/Create Parameter File.

Screenshot showing the right-click process for creating a parameter file from an ARM template.

Щелкните New>All Parameters> выберите имя и расположение файла параметров.

В результате этого действия будет создан файл параметров, который затем сопоставляется с шаблоном, на основе которого он был создан. Вы можете выбрать параметр, чтобы просмотреть и изменить текущий шаблон и сопоставление файла параметров в строке состояния Visual Studio Code.

Screenshot showing the template/parameter file mapping in the Visual Studio Code status bar.

Теперь, когда файл параметров сопоставлен с шаблоном, расширение проверяет как файл шаблона, так и файл параметров вместе. Чтобы увидеть эту проверку на практике, добавьте двухсимвольное значение в параметр storageAccountName в файле параметров и сохраните файл.

Screenshot showing an invalidated template due to parameter file issue.

Вернитесь к шаблону ARM и обратите внимание на ошибку, указывающую, что значение не соответствует критериям параметра.

Screenshot showing a valid ARM template.

Установите соответствующее значение, сохраните файл и вернитесь к шаблону. Обратите внимание, что устранена ошибка параметра.

Развертывание шаблона

Откройте встроенный терминал Visual Studio Code, используя сочетание клавиш ctrl + `, и разверните шаблон с помощью Azure CLI или модуля Azure PowerShell.

az group create --name arm-vscode --location eastus

az deployment group create --resource-group arm-vscode --template-file azuredeploy.json --parameters azuredeploy.parameters.json

Очистка ресурсов

Если ресурсы Azure больше не нужны, используйте Azure CLI или модуль Azure PowerShell, чтобы удалить группу ресурсов, созданную для краткого руководства.

az group delete --name arm-vscode

Следующие шаги