TL; DR — Template Spects-это новый тип ресурса для хранения шаблонов ARM в ваших группах ресурсов для более быстрого обмена, развертывания и контроля доступа на основе ролей (RBAC) на тех шаблонах, разделенных в организации. Спецификации шаблонов решают сегодняшние самые большие проблемы, связанные с управлением шаблонами, хранением и доступом.
Проблема: Распределение шаблонов ARM в организации является сложной задачей, требуя большего количества этапов управления внешним или внутренним хранилищем, с которой они обмениваются.
- Обмен: Обеспечение того, чтобы подходящие команды в вашей организации имели доступ, становится очень утомительным, поскольку вы не можете использовать Azure RBAC на шаблонах рук, которыми вы хотите поделиться.
- Управление: Предоставление командам с последними шаблонами ARM последовательным и версии.
Почему шаблонные характеристики?
Как нативное решение, Шаблонные характеристики позволит пользователям привести все свои шаблоны рук в Azure в качестве ресурса и надежно хранить и поделиться ими в Azure Andant.
Решение: 1 -я сторона безопасное хранение и управление шаблонами ARM в Azure.
- Обмен: Кто может получить доступ к спецификации шаблона, можно определить с помощью Azure RBAC.
- Управление: Спецификации шаблонов могут быть версированы в одном и том же ресурсе, что обеспечивает доступ пользователей всегда получить доступ к последним итерациям шаблона ARM (или шаблонов), хранящихся в спецификации шаблона.
Что нового с момента публичного предварительного просмотра?
Новая версия API 2021-05-01. Благодаря всем отзывам клиентов во время нашего публичного предварительного просмотра мы смогли закрыть 3 выпуска , исправить 5 ошибок и принять решение изменить имена шаблон
и Артефакты
характеристики:
Что скоро будет после GA?
- Интеграция бицепса:
AZ TS CREATE
с файлами BICEP. - Встроенные характеристики шаблона поддержка.
- Поддержка форм пользовательского интерфейса — формы пользовательского интерфейса заменит CreateuideFinition в будущем.
- GA версия Azure CLI и PowerShell с нарушениями изменений, выпущенных к концу мая.
- Из -за переименования свойств, выделенного выше, вы увидите новые имена свойств, когда получите версию спецификации шаблона. Это может быть нарушающим изменением, если вы зависите от запроса этих свойств в сценарии. Это не изменит то, как характеристики шаблонов создаются или обновляются при использовании Azure Portal, Azure CLI и PowerShell, но это изменит то, как они создаются через шаблоны Rest/Arm/Bicep.
- Если вы хотите протестировать последние командлеты PowerShell PowerShell, они доступны в Галерея PowerShell
Ссылка на спецификации шаблона и документы:
- Обзор спецификации шаблонов — Microsoft Docs
- Создайте спецификацию шаблона с связанными шаблонами — Microsoft Docs
- Развернуть спецификацию шаблона как связанный шаблон — Microsoft Docs
- Шаблоны ссылок для развертывания — Microsoft Docs
- Преобразовать шаблон портала в спецификацию шаблона — Microsoft Docs
Примечание: Спецификации шаблонов могут быть созданы с помощью шаблона ARM, но мы настоятельно рекомендуем использовать Portal, PowerShell или CLI для создания характеристик шаблонов. Microsoft. Ресурсы/Шаблоны ПЕЧАТИ/ВЕРИИ — Ссылка на шаблон ARM | Microsoft Docs
Создание и развертывание ресурса спецификации шаблона
Спецификация шаблона — это ресурс, который содержит массив версий спецификации шаблона, который состоит из Корневой шаблон и любое количество связанных шаблонов Анкет Спецификация шаблона может быть создана с использованием портала, PowerShell, Azure CLI, REST API или шаблона ARM. Чтобы помочь визуализировать создание спецификации шаблона, вот несколько примеров того, как он будет выглядеть в CLI Azure:
Создание спецификации шаблона с использованием Azure CLI Чтобы создать спецификацию шаблона, используйте AZ TS CREATE Команда, чтобы упаковать руку в ресурс спецификации шаблона.
az ts create --name webAppSpec --version "v1.0" --resource-group rgName --location "westus2" --template-file "azuredeploy.json"
Требуемые свойства:
--имя
: Имя для ресурса спецификации шаблона.-Версия
: Номер версии или имя версии, созданной.--локация
: Область Azure для ресурса Spec Spec.--template-file
: Шаблон руки, который будет упакован в спецификацию шаблона.
Создание и развертывание спецификации шаблона со связанными шаблонами с использованием Azure CLI Чтобы создать спецификацию шаблона с артефактами внутри него, нам нужно следующее:
- Создайте основной шаблон (например, azuredeploy.json ), который развертывает связанные шаблоны, которые должны быть переданы в AZ TS CREATE Команда как файл шаблона.
Создать n номер Ресурсы развертывания С связанными шаблонами, на которые ссылаются, с использованием Относительный пакет свойство в пределах Templatelink объект. В этом примере связанные шаблоны хранятся в подпапке, называемой LinkedTemplates , который находится на том же пути, что и основной файл шаблона. Свойство RELAVITYPATH относится к файлу шаблона, где объявляется RELAVITIONPATH. Свойство RELAIDEPATH может принимать любое из следующих значений:
./linkedTemplates/storageLinkedTemplate.json
/linkedtemplates/storageLinkedTemplate.json
LinkedTemplates/StorageLinkedTemplate.json
Примечание: Относительный пакет также может использоваться развертываемыми удаленными связанными шаблонами, учитывая, что все файлы шаблонов поставлены вместе и доступны через удаленное URI, такие как GitHub или Azure Storage. Основной шаблон вызывается с использованием URI, и все связанные шаблоны, на которые ссылаются как относительно этого основного шаблона, будет иметь URI, построенный с использованием основного шаблона URI и указанного RELAIDEPATH. Эта функция требует версии API 2020-10-01 или более. Чтобы узнать больше об этой функции, пожалуйста, обратитесь к Шаблоны ссылок для развертывания — Microsoft Docs АнкетЗапустить AZ TS CREATE Команда для создания или обновления версии спецификации шаблона. Эти командные пакеты Связанные шаблоны, добавленные через TemplateLink в виде связанных шаблонов в вашей версии Spec Spec.
AZ TS CREATE-name webAppspec-версия "v1.0"-rgroup-rgroup rgname- "westus2"-Template-file "azuredeploy.json"
В этом командном пакете файл шаблона azuredeploy.json в основной шаблон версии Spec Spec WebAppSpec-V1.0 и все связанные шаблоны, указанные вLinkedTemplates []
массив объекта Spec шаблона.Развернуть спецификацию шаблона, передав свой идентификатор ресурса, используя AZ Deployment Group Create командование Во -первых, нам нужно создать идентификатор ресурса Spec Spect, и это можно легко сделать в CLI Azure, используя AZ TS Show Команда:
id = $ (AZ TS Show-name webappspec-vversion "v1.0"-Resource-Group rgname-query "id")
После хранения идентификатора ресурса спецификации шаблона в переменной запустите командуAZ Deployment Group Create
и передать переменную--template-spec
Входной параметр:AZ Deployment Group Create-rgroup-rgroup rgname -Template-Spec $ id
Проверьте содержимое спецификации шаблона, запустив AZ TS Export Команда, которая загружает указанную версию спецификации шаблонов в -Подоротка в вашей локальной файловой системе.
AZ TS Export -Побалор "C: \\ Exported-Template Specs" -s "шаблон-spec-version-id"
Эта команда экспортирует основной шаблон указанного шаблона Spec (например, WebAppSpec. Json и папка артефактов со всеми соответствующими связанными шаблонами. Содержимое версии спецификации шаблона также можно увидеть с помощью портала Azure.
Развертывание спецификации шаблона в качестве связанного шаблона с использованием шаблона ARM со ссылкой на ID
Ресурс спецификации шаблона также можно ссылаться с использованием Templatelink свойство и указание id шаблона спецификация:
Шаблонные характеристики в национальных облаках Обратите внимание, что шаблонные характеристики еще не являются GA в национальных облаках. Целевая дата GA для национальных облаков — конец июля.
Ссылки и документы
- Справочник по спецификации шаблона CLI
- Ссылка
- Шаблонный спектакль PowerShell ссылка
- Шаблон Spec REST Ссылка API
- Шаблон Spec Quick Start Rutorial
- Обзор спецификации шаблонов — Microsoft Docs
- Создайте спецификацию шаблона с связанными шаблонами — Microsoft Docs
- Развернуть спецификацию шаблона как связанный шаблон — Microsoft Docs
- Шаблоны ссылок для развертывания — Microsoft Docs
Оригинал: «https://dev.to/azure/arm-template-specs-now-ga-161a»