Как работает Bicep

Завершено

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

В этом уроке вы узнаете, как Bicep работает с Azure Resource Manager.

Развертывание Bicep

В предыдущем уроке вы узнали, что Bicep предназначен для определенного сценария или домена, что делает его языком для конкретного домена. Bicep создан для упрощения развертывания и настройки ресурсов Azure.

При развертывании ресурса или ряда ресурсов в Azure вы отправляете шаблон Bicep в службу Resource Manager, которая все еще требует шаблоны JSON. Инструмент, встроенный в Bicep, преобразует шаблон Bicep в шаблон JSON. Этот процесс, при котором шаблон ARM обрабатывается как промежуточный язык, называется транспиляцией. Преобразование происходит автоматически при отправке развертывания или его можно выполнить вручную.

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

Примечание.

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

Последние версии Azure CLI и Azure PowerShell поддерживают встроенную поддержку Bicep. Для развертывания шаблонов Bicep и JSON можно использовать те же команды развертывания. Например, следующая команда развертывает шаблон Bicep в группе ресурсов под названием storage-resource-group.

az deployment group create \
  --template-file main.bicep \
  --resource-group storage-resource-group

После отправки этого развертывания Resource Manager просматривает ресурсы, развернутые в Настоящее время в Azure. Затем она просматривает, что вы пытаетесь развернуть, и настраивает последовательность действий для достижения этого состояния. Все эти действия подразумевают вызов API Resource Manager.

Шаблон JSON, отправленный в Resource Manager, можно просмотреть с помощью bicep build команды. В следующем примере шаблон Bicep преобразуется в соответствующий шаблон JSON:

bicep build main.bicep

Сравнение JSON и Bicep

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

Снимок экрана: сравнение кода Bicep в левой части экрана и соответствующего кода JSON в правой части экрана.

Обратите внимание, что шаблон Bicep содержит меньше кода. Синтаксис легко читать и понимать, также здесь нет сложных выражений, как в шаблоне JSON (справа).

Примечание.

Одновременный просмотр эквивалентных файлов JSON и Bicep см. на тестовой площадке Bicep.