В этой статье вы можете найти ответы на распространенные вопросы о Bicep и о том, как использовать этот язык для развертывания ресурсов в Azure.
Намерение
Зачем создавать новый язык вместо использования существующего?
Bicep можно рассматривать как редакцию имеющегося языка шаблона Azure Resource Manager (шаблона ARM), а не новый язык. Синтаксис изменился, но основная функциональность и среда выполнения остаются неизменными.
Перед началом разработки Бицеп наша группа рассматривала использование имеющегося языка программирования. Группа разработчиков решила, что целевой аудитории будет проще изучить Бицеп, а не начинать работу с другим языком.
Почему бы не сосредоточить свой потенциал на Terraform или другой сторонней инфраструктуре в качестве предложений кода?
Разные пользователи предпочитают различные языки и инструменты конфигурации. Нашей команде нужно убедиться, что все эти инструментальные средства обеспечивают широкие возможности работы в Azure. Бицеп является частью таких усилий.
Если нравится работать в Terraform, нет смысла переходить на другой язык. Корпорация Майкрософт стремится обеспечить наилучшую реализацию Terraform в Azure.
Наша группа считает, что Бицеп расширяет возможности разработки клиентов, выбравших шаблоны ARM. Бицеп также помогает переходу клиентов, которые еще не приняли инфраструктуру в качестве кода.
Доступность
Можно ли использовать этот язык в рабочей среде?
Да. Начиная с версии 0.3, Bicep включается в планы поддержки Майкрософт. Возможности Bicep и шаблонов ARM равноценны. В настоящее время критические изменения не запланированы, но в будущем они могут потребоваться.
Бицеп разработан только для Azure?
В настоящее время мы не планируем расширять Bicep за пределы Azure. Мы хотим обеспечить полную поддержку в Azure и оптимизировать процесс развертывания.
Для достижения этой цели требуется работа с некоторыми API, которые выходят за рамки Azure. Наша группа разработчиков планирует предоставить точки расширения для таких сценариев.
Можно ли использовать Bicep для развертывания в Azure Stack Hub?
Да, вы можете использовать Bicep для развертываний Azure Stack Hub, но обратите внимание, что некоторые типы Bicep еще не доступны в Azure Stack Hub. Вы можете просмотреть набор примеров в репозитории шаблонов QuickStart для Azure Stack Hub на сайте GitHub.
Шаблоны ARM
Что происходит с существующими шаблонами ARM?
Они продолжают работать точно так же, как и всегда. В них не требуется вносить каких-либо изменений. Наши разработчики будут и дальше поддерживать базовый язык JSON шаблона ARM. Файлы Бицеп компилируются в JSON, и полученный код JSON отправляется в Azure для развертывания.
Когда вы будете готовы, можно декомпилировать файлы JSON в Bicep.