Советы и уроки, полученные при переходе с шаблонов ARM на файлы Bicep.

В предыдущих статьях мы работали над развертыванием решений с помощью Bicep, предметно-ориентированного языка (DSL) для декларативного развертывания ресурсов Azure.

В этой статье будут рассмотрены три передовых метода, которые вы можете использовать при переходе от шаблонов ARM к файлам Bicep.

1. Проверьте синтаксис шаблона ARM и собственный эквивалент Bicep.

Хотя в шаблонах ARM и Bicep есть некоторый знакомый синтаксис, я настоятельно рекомендую вам проверить синтаксис, когда вам нужно получить идентификаторы ресурса или при объявлении значений свойств.

Некоторые примеры перечислены здесь: https://github.com/Azure/bicep/blob/main/docs/arm2bicep.md

2. Проверьте версию API и значения свойств.

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

В этом файле Bicep, хотя рекомендуется использовать последнюю стабильную версию API, есть свойства, определенные в шаблоне ARM, которые недоступны в значениях свойств Bicep, по крайней мере, пока.

В этих случаях я рекомендую вам проверить свойства, необходимые для вашего ресурса, и то, как отсутствующие свойства влияют на вашу среду в Azure.

Хорошей новостью является то, что документация в Azure для шаблонов Bicep и ARM в большинстве случаев показывает поддерживаемые версии и формат шаблона:



3. Понимание того, как ресурсы Azure развертываются в нужном масштабе.

Как и в случае с шаблонами ARM, вы можете ориентировать свое развертывание на разные области в зависимости от среды.

Четкое понимание иерархической структуры ресурсов с несколькими уровнями управления имеет решающее значение для лучшего управления вашими развертываниями. К ним относятся арендаторы, группы управления, подписки и группы ресурсов.

Представьте себе сценарий, в котором у вас есть клиент Azure с двумя группами управления и двумя подписками в каждой группе управления. Вам необходимо развернуть другой набор ресурсов в зависимости от типа среды, например рабочей или тестовой, с виртуальными сетями, DNS, службами приложений, виртуальными машинами и т. д.

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

Например, вы должны ориентироваться на подписку, когда вам нужно создать несколько групп ресурсов и предоставить доступ ко всем ресурсам в рамках подписки.

Вы можете выбрать группу управления, если вам нужно предоставить доступ ко всем ресурсам в определенной подписке.

Вы можете настроить таргетинг на арендатора, если вам нужно создать несколько подписок.

Кроме того, подумайте о модульности, например, файл Bicep, определяющий виртуальную сеть, может использоваться как модуль и развертываться в нескольких подписках.

Один набор файлов Bicep можно использовать для развертывания ресурсов в нескольких областях в рамках одной операции.

Присоединяйтесь к списку рассылки AzInsider здесь.

-Дэйв Р.