Как ограничить / настроить регион группы ресурсов в шаблонах ARM

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

Снимок экрана развертывания шаблона ARM

Изменить

измененный шаблон ARM

Добавляется новый параметр "Регион" вместо повторного использования существующего


person Navlok Mishra    schedule 16.02.2021    source источник
comment
Не могли бы вы подробно описать вашу проблему? Вы хотите знать, как реализовать лазерный ресурс, который можно развернуть только в определенных регионах?   -  person Jim Xu    schedule 16.02.2021
comment
Прилагаемый снимок экрана относится к случаю, когда я развернул пустой шаблон ARM. Автоматически добавляется параметр «Регион», имеющий все возможные значения. Я хочу управлять этим списком, как будто мне нужно иметь только uksouth и eastus в раскрывающемся списке Region. Поскольку эта область параметров не контролируется шаблоном ARM, как я могу ее контролировать? Есть ли способ сделать это? Кстати, я знаю, как развернуть ресурс Azure в конкретном регионе.   -  person Navlok Mishra    schedule 16.02.2021
comment
Вы можете определить значение региона в параметре: docs.microsoft.com/en-us/azure/azure-resource-manager/templates/   -  person Jim Xu    schedule 16.02.2021
comment
Я пробовал, и мне это не помогает. Он добавляет новый параметр в графический интерфейс, а не контролирует существующий, который добавляется автоматически. Я отредактировал сообщение, включив в него образец шаблона и выходной графический интерфейс. Не могли бы вы взглянуть и сообщить мне, если я сделал что-то иное, чем то, что вы предложили.   -  person Navlok Mishra    schedule 16.02.2021


Ответы (1)


Первое раскрывающееся меню региона предназначено для местоположения группы ресурсов - оно требуется при создании новой, отключено при использовании существующей. Для настраиваемого шаблона вы не можете настроить или удалить этот элемент управления, если не предоставите собственный файл определения пользовательского интерфейса.

Тем не менее, также нет ничего, что требовало бы от вас использования значения из этого элемента управления в вашем развертывании. Если вы хотите использовать это значение, вы должны ссылаться на него с помощью resourceGroup (). Location в вашем шаблоне. Это позволит вам удалить дубликат, но также требует, чтобы ресурсы были развернуты в том же регионе, что и группа ресурсов.

Для вашего собственного элемента управления регионом вы можете использовать свойство allowedValues ​​для параметра в шаблоне, и это ограничит элементы в списке тем, что вы предоставляете - это ссылка, которую Джим предоставил в комментарии выше.

Если вы предоставите свой собственный файл определения пользовательского интерфейса, вы можете сделать еще кое-что, чтобы ограничить список, но вам потребуется написать немного больше кода. Это будет отправной точкой:

https://docs.microsoft.com/en-us/azure/azure-resource-manager/managed-applications/create-uidefinition-overview

В документации говорится об управляемых приложениях, но пользовательский интерфейс - это общая конструкция, которую вы можете использовать для развертывания шаблонов, вот общий пример:

https://github.com/Azure/azure-quickstart-templates/tree/master/100-marketplace-sample

[редактирует комментарий к записи]

Если вы хотите использовать встроенный элемент управления регионом, вы можете настроить список отображаемых там местоположений, установив конфигурацию в файле createUiDefintion.json. Подробнее об этом здесь:

https://docs.microsoft.com/en-us/azure/azure-resource-manager/managed-applications/create-uidefinition-overview#config

person bmoore-msft    schedule 17.02.2021
comment
Спасибо @ bmoore-msft. Спасибо за подтверждение. Я искал, возможно ли настроить расположение группы ресурсов, чтобы я мог развертывать ресурсы в том же регионе, что и группа ресурсов, но в ограниченных регионах в соответствии с моими потребностями. Это предотвращает необходимость отдельных параметров, но, как вы сказали, это невозможно. Спасибо. Как вы упомянули, я использовал другой параметр, чтобы ограничить регионы, в которых могут быть развернуты мои ресурсы Azure. - person Navlok Mishra; 18.02.2021
comment
Хорошо, я отредактировал ответ выше, думаю, вы можете делать все, что хотите, со своим собственным CUID, lmk, если что-то не ясно. - person bmoore-msft; 19.02.2021