Модуль azure.azcollection.azure_rm_appgateway — Управление экземпляром Application Gateway
Примечание
Этот модуль является частью коллекции azure.azcollection (версия 2.7.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install azure.azcollection. Для использования этого модуля необходимы дополнительные требования. Подробнее см. раздел Требования.
Для использования в книге задач укажите: azure.azcollection.azure_rm_appgateway.
Добавлена в azure.azcollection 0.1.2
Описание
- Создание, обновление и удаление экземпляра Application Gateway.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.7
- На хосте, на котором выполняется этот модуль, должна быть установлена коллекция azure.azcollection через Galaxy
- Все пакеты Python, перечисленные в файле requirements.txt коллекции, должны быть установлены через pip на хосте, на котором выполняются модули из azure.azcollection
- Полные инструкции по установке можно найти по адресу https://galaxy.ansible.com/azure/azcollection
Параметры
Параметр | Комментарии |
|---|---|
ad_user строка | Имя пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory, а не с сервисным принципалом. |
adfs_authority_url строка добавлен в azure.azcollection 0.0.1 | URL-адрес службы авторизации Azure AD. Используется при аутентификации с помощью имени пользователя/пароля и собственной службы авторизации ADFS. |
api_profile строка добавлен в azure.azcollection 0.0.1 | Выбирает профиль API для взаимодействия с Azure-сервисами. Значение по умолчанию По умолчанию: |
append_tags логический тип | Управляет тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам. При каноническом варианте все теги, отсутствующие в параметре тегов, будут удалены из метаданных объекта. Варианты:
|
auth_source строка добавлен в azure.azcollection 0.0.1 | Управляет источником учетных данных для аутентификации. Также может быть установлен через переменную среды При значении При значении При значении При значении При значении
Варианты:
|
authentication_certificates список / элементы=словарь | Сертификаты аутентификации ресурса шлюза приложений. |
|
data строка |
Открытые данные сертификата — закодированный в base64 pfx. |
|
name строка |
Имя ресурса, уникальное в группе ресурсов. Это имя может использоваться для доступа к ресурсу. |
autoscale_configuration словарь добавлен в azure.azcollection 1.15.0 | Настройка автоматического масштабирования ресурса шлюза приложений. |
|
max_capacity целое число |
Верхний предел количества экземпляров шлюза приложений. |
|
min_capacity целое число |
Нижний предел количества экземпляров шлюза приложений. |
backend_address_pools список / элементы=словарь | Список пулов адресов обратного подключения ресурса шлюза приложений. |
|
backend_addresses список / элементы=словарь |
Список обратных адресов. |
|
fqdn строка |
Полное доменное имя (FQDN). |
|
ip_address строка |
IP-адрес. |
|
name строка |
Ресурс, уникальный в пределах группы ресурсов. Это имя может быть использовано для доступа к ресурсу. |
backend_http_settings_collection список / элементы=словарь | Настройки обратного HTTP-соединения ресурса шлюза приложений. |
|
affinity_cookie_name строка |
Имя cookie для использования в механизме сцепления. |
|
authentication_certificates список / элементы=словарь |
Список ссылок на сертификаты аутентификации шлюза приложений. Применима только если |
|
id string |
Идентификатор ресурса. |
|
connection_draining dictionary added in azure.azcollection 1.15.0 |
Отключение соединений для ресурса настроек HTTP-бекенда. |
|
drain_timeout_in_sec integer |
Количество секунд, в течение которых активно отключение соединений. Допустимые значения от 1 секунды до 3600 секунд. |
|
enabled boolean |
Включено ли отключение соединений. Выбор:
|
|
cookie_based_affinity string |
Аффинити на основе cookie. Выбор:
|
|
host_name string |
Заголовок хоста, который будет отправлен на серверы бекенда. |
|
name string |
Имя ресурса, уникальное в группе ресурсов. Это имя может быть использовано для доступа к ресурсу. |
|
path string |
Путь, который должен использоваться в качестве префикса для всех запросов. Null означает, что префикс пути не будет добавлен. Значение по умолчанию - null. |
|
pick_host_name_from_backend_address boolean |
Выбирать заголовок хоста из имени хоста сервера бекенда. Значение по умолчанию - false. Выбор:
|
|
port integer |
Порт назначения на бекенде. |
|
probe any |
Ресурс зондирования шлюза приложений. |
|
protocol string |
Протокол, используемый для связи с бекендом. Выбор:
|
|
request_timeout integer |
Таймаут запроса в секундах. Шлюз приложений отклонит запрос, если ответ не будет получен в течение RequestTimeout. Допустимые значения от 1 секунды до 86400 секунд. |
|
trusted_root_certificates list / elements=any added in azure.azcollection 1.15.0 |
Массив ссылок на доверенные корневые сертификаты шлюза приложений. Может быть именем доверенного корневого сертификата или полным идентификатором ресурса. |
cert_validation_mode string added in azure.azcollection 0.0.1 | Управляет поведением проверки сертификатов для Azure-точек конечного доступа. По умолчанию все модули проверяют сертификат сервера, но при использовании HTTPS-прокси или при работе с Azure Stack, может потребоваться отключить это поведение, передав Выбор:
|
client_id string | Идентификатор Azure-клиента. Используется при аутентификации с помощью службы-принципала или управляемой учетной записи (msi). Также может быть задано через переменную окружения |
cloud_environment string added in azure.azcollection 0.0.1 | Для облачных сред, отличных от общедоступного облака США, имя среды (определяется Azure Python SDK, например, По умолчанию: |
disable_instance_discovery boolean added in azure.azcollection 2.3.0 | Определяет, выполняется ли обнаружение экземпляров при попытке аутентификации. Установка этого параметра в значение true полностью отключит как обнаружение экземпляров, так и проверку полномочий. Эта функция предназначена для использования в сценариях, когда конечная точка метаданных недоступна, например, в частных облаках или Azure Stack. Процесс обнаружения экземпляров включает в себя извлечение метаданных полномочий из https://login.microsoft.com/ для проверки полномочий. Установив это значение в **True**, проверка полномочий отключается. В результате крайне важно убедиться, что настроенный узел полномочий является действительным и заслуживающим доверия. Устанавливается через профиль файла учетных данных или переменную среды Choices:
|
enable_http2 boolean added in azure.azcollection 1.15.0 | Включен ли HTTP2 в ресурсе шлюза приложений. Choices:
|
frontend_ip_configurations list / elements=dictionary | Входящие IP-адреса ресурса шлюза приложений. |
|
name string |
Имя ресурса, которое является уникальным в пределах группы ресурсов. Это имя может использоваться для доступа к ресурсу. |
|
private_ip_address string |
PrivateIPAddress конфигурации IP-адреса сетевого интерфейса. |
|
private_ip_allocation_method string |
Метод выделения PrivateIP. Choices:
|
|
public_ip_address any |
Ссылка на ресурс PublicIP. |
|
subnet dictionary |
Ссылка на ресурс подсети. |
|
id string |
Полный ID ресурса подсети. Требуется, если name и virtual_network_name не указаны. |
|
name string |
Имя подсети. Используется только если также указано virtual_network_name. |
|
virtual_network_name string |
Имя виртуальной сети. Используется только если также указано name. |
frontend_ports list / elements=dictionary | Список входящих портов ресурса шлюза приложений. |
|
name string |
Имя ресурса, которое является уникальным в пределах группы ресурсов. Это имя может использоваться для доступа к ресурсу. |
|
port string |
Входящий порт. |
gateway_ip_configurations list / elements=dictionary | Список подсетей, используемых шлюзом приложений. |
|
name string |
Имя ресурса, которое является уникальным в пределах группы ресурсов. Это имя может использоваться для доступа к ресурсу. |
|
subnet dictionary |
Ссылка на ресурс подсети. Подсеть, из которой шлюз приложений получает свой частный адрес. |
|
id string |
Полный ID ресурса подсети. Требуется, если name и virtual_network_name не указаны. |
|
name string |
Имя подсети. Используется только если также указано virtual_network_name. |
|
virtual_network_name string |
Имя виртуальной сети. Используется только если также указано name. |
gateway_state string | Запуск или остановка шлюза приложений. При указании этого параметра обновления шлюза выполняться не будут. Choices:
|
http_listeners список / элементы=словарь | Список HTTP-прослушивателей ресурса шлюза приложений. |
|
frontend_ip_configuration любой |
Ресурс конфигурации IP-адреса фронтального узла шлюза приложений. |
|
frontend_port любой |
Ресурс порта фронтального узла шлюза приложений. |
|
host_name строка |
Имя хоста |
|
name строка |
Имя ресурса, уникальное в рамках группы ресурсов. Это имя может быть использовано для доступа к ресурсу. |
|
protocol строка |
Протокол Варианты:
|
|
require_server_name_indication логическое |
Применимо только если protocol равен Варианты:
|
|
ssl_certificate любой |
Сертификат SSL ресурса шлюза приложений. |
identity словарь добавлено в azure.azcollection 2.5.0 | Идентификатор для шлюза приложений |
|
type строка |
Тип управляемого идентификатора Варианты:
|
|
user_assigned_identities словарь |
Пользовательские назначенные управляемые идентификаторы и их параметры По умолчанию: |
|
append логическое |
Добавить ли список идентификаторов к текущим (true) или заменить ли текущие идентификаторы (false) Варианты:
|
|
id список / элементы=строка |
Список идентификаторов пользовательских назначенных идентификаторов, связанных со шлюзом приложений По умолчанию: |
location строка | Расположение ресурса. Если не задано, используется расположение из группы ресурсов по умолчанию. |
log_mode строка | Родительский аргумент. |
log_path строка | Родительский аргумент. |
name строка / обязательно | Имя шлюза приложений. |
password строка | Пароль пользователя Active Directory. Используется при аутентификации с пользователем Active Directory, а не с принципалом службы. |
probes список / элементы=словарь | Пробы, доступные для ресурса шлюза приложений. |
|
host строка |
Имя хоста, к которому отправляется проба. |
|
interval целое число |
Интервал зондирования в секундах. Это интервал времени между двумя последовательными зондированиями. Допустимые значения от 1 секунды до 86400 секунд. |
|
match словарь |
Критерий для классификации ответной реакции зондирования как здоровой. |
|
status_codes список / элементы=строка |
Разрешенные диапазоны кодов состояния для здоровой реакции. Диапазон кодов состояния по умолчанию для здоровой реакции — 200-399. |
|
имя строка |
Имя пробы, уникальное в пределах шлюза приложений. |
|
путь строка |
Относительный путь пробы. Допустимый путь начинается с '/'. Проба отправляется по адресу <Протокол>://<хост>:<порт><путь>. |
|
pick_host_name_from_backend_http_settings булево |
Указывает, следует ли брать заголовок хоста из имени хоста настроек HTTP бэкенда. Значение по умолчанию — false. Варианты:
|
|
порт целое число |
Пользовательский порт, который будет использоваться для проверки бэкенд-серверов. Допустимые значения — от 1 до 65535. Если не задан, используется порт из настроек HTTP. Это свойство действует только для |
|
протокол строка |
Используемый протокол для пробы. Варианты:
|
|
таймаут целое число |
Таймаут пробы в секундах. Проба считается неудачной, если ответ не получен в течение этого таймаута. Допустимые значения — от 1 до 86400 секунд. |
|
порог_неисправности целое число |
Количество повторов пробы. Бэкенд-сервер отмечается как неисправный после достижения количества последовательных неудач, равного порогу неисправности. Допустимые значения — от 1 до 20. |
профиль строка | Профиль безопасности из файла ~/.azure/credentials. |
настройки_перенаправления список / элементы=словарь | Настройки перенаправления ресурса шлюза приложений. |
|
включать_путь булево |
Включать путь в перенаправленный URL. Варианты:
|
|
включать_строку_запроса булево |
Включать строку запроса в перенаправленный URL. Варианты:
|
|
имя строка |
Имя ресурса, уникальное в пределах группы ресурсов. |
|
правила_путей список / элементы=словарь добавлен в azure.azcollection 1.10.0 |
Список правил пути URL в правиле маршрутизации по пути, к которому привязано перенаправление. |
|
имя строка |
Имя правила URL. |
|
имя_карты_путей строка |
Имя карты пути URL. |
|
тип_перенаправления строка |
Тип перенаправления. Варианты:
|
|
правила_маршрутизации_запросов список / элементы=строка добавлен в azure.azcollection 1.10.0 |
Список имён правил маршрутизации запросов в шлюзе приложений, к которым привязано перенаправление. |
|
целевой_слушатель строка |
Ссылка на слушатель, к которому перенаправляется запрос. |
|
карты_путей_url список / элементы=строка добавлен в azure.azcollection 1.10.0 |
Список имён карт пути URL (правил маршрутизации по пути) в шлюзе приложений, к которым привязано перенаправление. |
правила_маршрутизации_запросов список / элементы=словарь | Список правил маршрутизации запросов ресурса шлюза приложений. |
|
пул_адресов_бэкенда любой |
Ресурс пула адресов бэкенда шлюза приложений. Не используется, если rule_type — |
|
backend_http_settings any |
Ресурс настроек бэкенда |
|
http_listener any |
Ресурс слушателя HTTP шлюза приложений. |
|
name string |
Имя ресурса, уникальное в рамках группы ресурсов. Это имя может быть использовано для доступа к ресурсу. |
|
redirect_configuration any |
Ресурс конфигурации перенаправления шлюза приложений. |
|
rewrite_rule_set any добавлен в azure.azcollection 1.11.0 |
Набор правил переписывания для карты путей. Может быть именем набора правил переписывания или полным идентификатором ресурса. |
|
rule_type string |
Тип правила. Варианты:
|
|
url_path_map any |
Ресурс карты URL-путей шлюза приложений. Требуется, если rule_type равен |
resource_group string / обязательно | Имя группы ресурсов. |
rewrite_rule_sets list / элементы=словарь добавлен в azure.azcollection 1.11.0 | Список конфигураций переписывания для ресурса шлюза приложений. |
|
name string / обязательно |
Имя набора правил переписывания. |
|
rewrite_rules list / элементы=словарь / обязательно |
Список правил переписывания. |
|
action_set dictionary / обязательно |
Набор действий, которые нужно выполнить в рамках правила переписывания. |
|
request_header_configurations list / элементы=словарь |
Список действий, которые нужно выполнить над заголовками запроса. По умолчанию: |
|
header_name string / обязательно |
Имя заголовка. |
|
header_value string |
Значение заголовка. Оставьте параметр пустым, чтобы удалить заголовок. По умолчанию: |
|
response_header_configurations list / элементы=словарь |
Список действий, которые нужно выполнить над заголовками ответа. По умолчанию: |
|
header_name string / обязательно |
Имя заголовка. |
|
header_value string |
Значение заголовка. Оставьте параметр пустым, чтобы удалить заголовок. По умолчанию: |
|
url_configuration dictionary |
Действие, выполняемое над URL. |
|
modified_path string |
Значение, на которое будет переписан путь URL. Оставьте параметр пустым, чтобы сохранить исходный путь URL. |
|
modified_query_string string |
Значение, на которое будет переписана строка запроса URL. Оставьте параметр пустым, чтобы сохранить исходную строку запроса URL. |
|
reroute boolean |
Если установлено в значение true, будет повторно вычисляться карта путей, предоставленная в правилах маршрутизации запросов на основе пути, с использованием изменённого пути. Варианты:
|
|
conditions список / элементы=словарь |
Условия, на основе которых будет оцениваться выполнение набора действий. По умолчанию: |
|
ignore_case boolean |
Установка этого значения в true заставит шаблон выполнить сравнение, не учитывая регистр. Варианты:
|
|
negate boolean |
Установка этого значения в true заставит проверить отрицание условия, заданного пользователем. Варианты:
|
|
pattern строка / обязательно |
Шаблон, представляющий собой либо фиксированную строку, либо регулярное выражение, оценивающий истинность условия. |
|
variable строка / обязательно |
Параметр для условия. |
|
name строка / обязательно |
Имя правила переписывания. |
|
rule_sequence целое число / обязательно |
Последовательность правила, определяющая порядок выполнения в наборе. |
secret строка | Секретный ключ Azure. Используйте при аутентификации с помощью принципала службы. |
sku словарь | SKU ресурса шлюза приложений. |
|
capacity целое число |
Ёмкость (количество экземпляров) шлюза приложений. |
|
name строка |
Имя SKU шлюза приложений. Варианты:
|
|
tier строка |
Уровень шлюза приложений. Варианты:
|
ssl_certificates список / элементы=словарь | Сертификаты SSL ресурса шлюза приложений. |
|
data строка |
Сертификат pfx в кодировке Base-64. Применимо только для запросов PUT. |
|
name строка |
Имя ресурса, уникальное в группе ресурсов. Это имя может использоваться для доступа к ресурсу. |
|
password строка |
Пароль для файла pfx, указанного в data. Применимо только для запросов PUT. |
ssl_policy словарь | Политика SSL ресурса шлюза приложений. |
|
cipher_suites список / элементы=строка |
Список наборов шифров SSL, которые необходимо включить в указанном порядке для шлюза приложений. Варианты:
|
|
disabled_ssl_protocols список / элементы=строка |
Список протоколов SSL, которые необходимо отключить на шлюзе приложений. Варианты:
|
|
min_protocol_version строка |
Минимальная версия протокола SSL, которая должна поддерживаться шлюзом приложений. Варианты:
|
|
policy_name строка |
Имя политики Ssl Варианты:
|
|
policy_type строка |
Тип политики SSL. Варианты:
|
state строка | Установите состояние шлюза приложений. Используйте Варианты:
|
subscription_id строка | Ваш идентификатор подписки Azure. |
tags словарь | Словарь пар строка:строка для назначения в качестве метаданных объекту. Метаданные теги объекта будут обновлены любыми предоставленными значениями. Для удаления тегов установите параметр append_tags в значение false. В настоящее время зоны Azure DNS и службы Traffic Manager также не разрешают использование пробелов в теге. Azure Front Door не поддерживает использование Azure Automation и Azure CDN поддерживают только 15 тегов на ресурсах. |
tenant строка | Идентификатор Azure-аренды. Используйте при аутентификации с помощью принципа сервиса. |
thumbprint строка добавлено в azure.azcollection 1.14.0 | Отпечаток цифровой подписи закрытого ключа, указанного в x509_certificate_path. Используйте при аутентификации с помощью принципа сервиса. Требуется, если определен x509_certificate_path. |
trusted_root_certificates список / элементы=словарь добавлено в azure.azcollection 1.15.0 | Доверенные корневые сертификаты ресурса шлюза приложений. |
|
data строка |
Данные открытого сертификата. |
|
key_vault_secret_id строка |
Идентификатор секрета (кодированный в base-64 нешифрованный pfx) объекта «Секрет» или «Сертификат», хранящегося в KeyVault. По умолчанию: |
|
name строка |
Имя доверенного корневого сертификата, уникального в пределах шлюза приложений. |
url_path_maps список / элементы=словарь | Список отображений URL-путей ресурса шлюза приложений. |
|
default_backend_address_pool строка |
Ресурс пула адресов обратного подключения шлюза приложений, который будет использоваться, если не будет найдено соответствие пути. Взаимоисключающие с default_redirect_configuration. |
|
default_backend_http_settings строка |
Ресурс параметров HTTP обратного подключения шлюза приложений; используется с default_backend_address_pool. |
|
default_redirect_configuration строка добавлено в azure.azcollection 1.10.0 |
Имя ресурса конфигурации перенаправления шлюза приложений, который будет использоваться, если не будет найдено соответствие пути. Взаимоисключающие с default_backend_address_pool. |
|
default_rewrite_rule_set строка добавлено в azure.azcollection 1.11.0 |
Набор правил переписывания по умолчанию для отображения пути. Может быть именем набора правил переписывания или полным идентификатором ресурса. |
|
name строка |
Имя ресурса, уникальное в пределах шлюза приложений. Это имя можно использовать для доступа к ресурсу. |
|
path_rules список / элементы=словарь |
Список правил URL-путей. |
|
backend_address_pool string |
Ресурс пула адресов бэкенда шлюза приложений, который будет использоваться, если путь совпадает. Взаимоисключающее с redirect_configuration. |
|
backend_http_settings string |
Ресурс настроек HTTP бэкенда шлюза приложений; используется для backend_address_pool пути. |
|
name string |
Имя ресурса, уникальное в рамках карты путей. |
|
paths list / elements=string |
Список путей. |
|
redirect_configuration string added in azure.azcollection 1.10.0 |
Имя ресурса конфигурации перенаправления шлюза приложений, которое будет использоваться, если путь совпадает. Взаимоисключающее с backend_address_pool. |
|
rewrite_rule_set string added in azure.azcollection 1.11.0 |
Набор правил переписывания для карты путей. Может быть именем набора правил переписывания или полным идентификатором ресурса. |
web_application_firewall_configuration dictionary added in azure.azcollection 1.15.0 | Конфигурация веб-приложениезащиты шлюза приложений. |
|
disabled_rule_groups list / elements=dictionary |
Отключенные группы правил. По умолчанию: |
|
rule_group_name string |
Имя группы правил, которая будет отключена. |
|
rules list / elements=integer |
Список правил, которые будут отключены. Если null, все правила группы правил будут отключены. По умолчанию: |
|
enabled boolean |
Включена ли веб-защита приложений или нет. Варианты:
|
|
exclusions list / elements=dictionary |
Список исключений. По умолчанию: |
|
match_variable string |
Переменная, которая будет исключена. |
|
selector string |
Если match_variable представляет собой коллекцию, оператор, используемый для указания элементов в коллекции, к которым применяется это исключение. |
|
selector_match_operator string |
Если match_variable представляет собой коллекцию, оператор над selector для указания элементов в коллекции, к которым применяется это исключение. |
|
file_upload_limit_in_mb integer |
Максимальный размер загрузки файла в Мб для WAF. |
|
firewall_mode string |
Режим веб-защиты приложений. Варианты:
|
|
max_request_body_size integer |
Максимальный размер тела запроса для WAF. |
|
max_request_body_size_in_kb integer |
Максимальный размер тела запроса в Кб для WAF. |
|
request_body_check boolean |
Разрешить WAF проверять тело запроса. Варианты:
|
|
rule_set_type string |
Тип набора правил брандмауэра веб-приложений. Возможные значения — ‘OWASP’. Варианты:
|
|
rule_set_version string |
Версия типа набора правил. |
x509_certificate_path path добавлен в azure.azcollection 1.14.0 | Путь к сертификату X509, используемому для создания службы-принципала в формате PEM. Сертификат должен быть присоединен к закрытому ключу. Используйте при аутентификации с помощью службы-принципала. |
Примечания
Примечание
- Для аутентификации с Azure вы можете передать параметры, установить переменные среды, использовать профиль, сохраненный в ~/.azure/credentials, или войти в систему перед запуском задач или плейбука с помощью
az login. - Аутентификация также возможна с помощью службы-принципала или пользователя Active Directory.
- Для аутентификации через службу-принципал передайте subscription_id, client_id, secret и tenant или установите переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации через пользователя Active Directory передайте ad_user и password или установите AZURE_AD_USER и AZURE_PASSWORD в среде.
- В качестве альтернативы учетные данные могут быть сохранены в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant или subscription_id, ad_user и password. Также возможно добавление дополнительных профилей. Укажите профиль, передав профиль или установив AZURE_PROFILE в среде.
См. также
См. также
- Вход в Azure CLI
-
Как аутентифицироваться с помощью команды
az login.
Примеры
- name: Create instance of Application Gateway
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: standard_small
tier: standard
capacity: 2
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
connection_draining:
drain_timeout_in_sec: 60
enabled: true
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: sample_http_listener
name: rule1
- name: Create instance of Application Gateway with custom trusted root certificate
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: standard_small
tier: standard
capacity: 2
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
trusted_root_certificates:
- name: "root_cert"
key_vault_secret_id: "https://kv/secret"
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
connection_draining:
drain_timeout_in_sec: 60
enabled: true
name: sample_appgateway_http_settings
trusted_root_certificates:
- "root_cert"
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: sample_http_listener
name: rule1
- name: Create instance of Application Gateway by looking up virtual network and subnet
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: standard_small
tier: standard
capacity: 2
gateway_ip_configurations:
- subnet:
name: default
virtual_network_name: my-vnet
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
name: default
virtual_network_name: my-vnet
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: sample_http_listener
name: rule1
- name: Create instance of Application Gateway with path based rules
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: standard_small
tier: standard
capacity: 2
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: path_based_routing
http_listener: sample_http_listener
name: rule1
url_path_map: path_mappings
url_path_maps:
- name: path_mappings
default_backend_address_pool: test_backend_address_pool
default_backend_http_settings: sample_appgateway_http_settings
path_rules:
- name: path_rules
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
paths:
- "/abc"
- "/123/*"
- name: Create instance of Application Gateway with complex routing and redirect rules
azure_rm_appgateway:
resource_group: myResourceGroup
name: myComplexAppGateway
sku:
name: standard_small
tier: standard
capacity: 2
ssl_policy:
policy_type: "predefined"
policy_name: "ssl_policy20170401_s"
ssl_certificates:
- name: ssl_cert
password: your-password
data: "{{ lookup('file', 'certfile') }}"
gateway_ip_configurations:
- subnet:
id: "{{ subnet_output.state.id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_output.state.id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- name: "inbound-http"
port: 80
- name: "inbound-https"
port: 443
backend_address_pools:
- name: test_backend_address_pool1
backend_addresses:
- ip_address: 10.0.0.1
- name: test_backend_address_pool2
backend_addresses:
- ip_address: 10.0.0.2
backend_http_settings_collection:
- name: "http-profile1"
port: 443
protocol: https
pick_host_name_from_backend_address: true
probe: "http-probe1"
cookie_based_affinity: "Disabled"
- name: "http-profile2"
port: 8080
protocol: http
pick_host_name_from_backend_address: true
probe: "http-probe2"
cookie_based_affinity: "Disabled"
http_listeners:
- name: "inbound-http"
protocol: "http"
frontend_ip_configuration: "sample_gateway_frontend_ip_config"
frontend_port: "inbound-http"
- name: "inbound-traffic1"
protocol: "https"
frontend_ip_configuration: "sample_gateway_frontend_ip_config"
frontend_port: "inbound-https"
host_name: "traffic1.example.com"
require_server_name_indication: true
ssl_certificate: "ssl_cert"
- name: "inbound-traffic2"
protocol: "https"
frontend_ip_configuration: "sample_gateway_frontend_ip_config"
frontend_port: "inbound-https"
host_name: "traffic2.example.com"
require_server_name_indication: true
ssl_certificate: "ssl_cert"
url_path_maps:
- name: "path_mappings"
default_redirect_configuration: "redirect-traffic1"
path_rules:
- name: "path_rules"
backend_address_pool: "test_backend_address_pool1"
backend_http_settings: "http-profile1"
paths:
- "/abc"
- "/123/*"
request_routing_rules:
- name: "app-routing1"
rule_type: "basic"
http_listener: "inbound-traffic1"
backend_address_pool: "test_backend_address_pool2"
backend_http_settings: "http-profile1"
- name: "app-routing2"
rule_type: "path_based_routing"
http_listener: "inbound-traffic2"
url_path_map: "path_mappings"
- name: "redirect-routing"
rule_type: "basic"
http_listener: "inbound-http"
redirect_configuration: "redirect-http"
probes:
- name: "http-probe1"
interval: 30
path: "/abc"
protocol: "https"
pick_host_name_from_backend_http_settings: true
timeout: 30
unhealthy_threshold: 2
- name: "http-probe2"
interval: 30
path: "/xyz"
protocol: "http"
pick_host_name_from_backend_http_settings: true
timeout: 30
unhealthy_threshold: 2
redirect_configurations:
- name: "redirect-http"
redirect_type: "permanent"
target_listener: "inbound-traffic1"
include_path: true
include_query_string: true
request_routing_rules:
- "redirect-routing"
- name: "redirect-traffic1"
redirect_type: "found"
target_listener: "inbound-traffic1"
include_path: true
include_query_string: true
url_path_maps:
- "path_mappings"
- name: Create v2 instance of Application Gateway with rewrite rules
azure_rm_appgateway:
resource_group: myResourceGroup
name: myV2AppGateway
sku:
name: standard_v2
tier: standard_v2
capacity: 2
ssl_policy:
policy_type: predefined
policy_name: ssl_policy20170401_s
ssl_certificates:
- name: ssl_cert
password: your-password
data: "{{ lookup('file', ssl_cert) }}"
gateway_ip_configurations:
- subnet:
id: "{{ subnet_output.state.id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- name: "public-inbound-ip"
public_ip_address: my-appgw-pip
frontend_ports:
- name: "inbound-http"
port: 80
- name: "inbound-https"
port: 443
backend_address_pools:
- name: test_backend_address_pool1
backend_addresses:
- ip_address: 10.0.0.1
- name: test_backend_address_pool2
backend_addresses:
- ip_address: 10.0.0.2
backend_http_settings_collection:
- name: "http-profile1"
port: 443
protocol: https
pick_host_name_from_backend_address: true
probe: "http-probe1"
cookie_based_affinity: "Disabled"
- name: "http-profile2"
port: 8080
protocol: http
pick_host_name_from_backend_address: true
probe: "http-probe2"
cookie_based_affinity: "Disabled"
http_listeners:
- name: "inbound-http"
protocol: "http"
frontend_ip_configuration: "public-inbound-ip"
frontend_port: "inbound-http"
- name: "inbound-traffic1"
protocol: "https"
frontend_ip_configuration: "public-inbound-ip"
frontend_port: "inbound-https"
host_name: "traffic1.example.com"
require_server_name_indication: true
ssl_certificate: "ssl_cert"
- name: "inbound-traffic2"
protocol: "https"
frontend_ip_configuration: "public-inbound-ip"
frontend_port: "inbound-https"
host_name: "traffic2.example.com"
require_server_name_indication: true
ssl_certificate: "ssl_cert"
url_path_maps:
- name: "path_mappings"
default_redirect_configuration: "redirect-traffic1"
default_rewrite_rule_set: "configure-headers"
path_rules:
- name: "path_rules"
backend_address_pool: "test_backend_address_pool1"
backend_http_settings: "http-profile1"
paths:
- "/abc"
- "/123/*"
request_routing_rules:
- name: "app-routing1"
rule_type: "basic"
http_listener: "inbound-traffic1"
backend_address_pool: "test_backend_address_pool2"
backend_http_settings: "http-profile1"
rewrite_rule_set: "configure-headers"
- name: "app-routing2"
rule_type: "path_based_routing"
http_listener: "inbound-traffic2"
url_path_map: "path_mappings"
- name: "redirect-routing"
rule_type: "basic"
http_listener: "inbound-http"
redirect_configuration: "redirect-http"
rewrite_rule_sets:
- name: "configure-headers"
rewrite_rules:
- name: "add-security-response-header"
rule_sequence: 1
action_set:
response_header_configurations:
- header_name: "Strict-Transport-Security"
header_value: "max-age=31536000"
- name: "remove-backend-response-headers"
rule_sequence: 2
action_set:
response_header_configurations:
- header_name: "Server"
- header_name: "X-Powered-By"
- name: "set-custom-header-condition"
rule_sequence: 3
conditions:
- variable: "var_client_ip"
pattern: "1.1.1.1"
- variable: "http_req_Authorization"
pattern: "12345"
ignore_case: false
action_set:
request_header_configurations:
- header_name: "Foo"
header_value: "Bar"
probes:
- name: "http-probe1"
interval: 30
path: "/abc"
protocol: "https"
pick_host_name_from_backend_http_settings: true
timeout: 30
unhealthy_threshold: 2
- name: "http-probe2"
interval: 30
path: "/xyz"
protocol: "http"
pick_host_name_from_backend_http_settings: true
timeout: 30
unhealthy_threshold: 2
redirect_configurations:
- name: "redirect-http"
redirect_type: "permanent"
target_listener: "inbound-traffic1"
include_path: true
include_query_string: true
request_routing_rules:
- "redirect-routing"
- name: "redirect-traffic1"
redirect_type: "found"
target_listener: "inbound-traffic1"
include_path: true
include_query_string: true
url_path_maps:
- "path_mappings"
- name: Create instance of Application Gateway with autoscale configuration
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: standard_small
tier: standard
autoscale_configuration:
max_capacity: 2
min_capacity: 1
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: sample_http_listener
name: rule1
- name: Create instance of Application Gateway waf_v2 with waf configuration
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
sku:
name: waf_v2
tier: waf_v2
capacity: 2
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: sample_gateway_frontend_ip_config
frontend_ports:
- port: 90
name: ag_frontend_port
backend_address_pools:
- backend_addresses:
- ip_address: 10.0.0.4
name: test_backend_address_pool
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: ag_frontend_port
name: sample_http_listener
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: sample_http_listener
name: rule1
web_application_firewall_configuration:
- enabled: true
firewall_mode: Detection
rule_set_type: OWASP
rule_set_version: 3.0
request_body_check: true
max_request_body_size_in_kb: 128
file_upload_limit_in_mb: 100
- name: Create application gateway with multi parameters
azure_rm_appgateway:
resource_group: myResourceGroup
name: myappgateway
sku:
name: standard_v2
tier: standard_v2
capacity: 2
gateway_ip_configurations:
- subnet:
id: "{{ subnet_id }}"
name: app_gateway_ip_config
frontend_ip_configurations:
- name: sample_gateway_frontend_ip_config
public_ip_address: "pip{{ rpfx }}"
frontend_ports:
- port: 80
name: http_frontend_port
backend_address_pools:
- name: test_backend_address_pool # empty pool which will receive attachment to NIC.
backend_http_settings_collection:
- port: 80
protocol: http
cookie_based_affinity: enabled
name: sample_appgateway_http_settings
http_listeners:
- frontend_ip_configuration: sample_gateway_frontend_ip_config
frontend_port: http_frontend_port
protocol: http
name: http_listener
probes:
- name: testprobes01
protocol: http
path: '/'
timeout: 30
host: testazure
interval: 90
port: 80
match:
status_codes:
- 200
request_routing_rules:
- rule_type: basic
backend_address_pool: test_backend_address_pool
backend_http_settings: sample_appgateway_http_settings
http_listener: http_listener
name: rule1
- name: Stop an Application Gateway instance
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
gateway_state: stopped
- name: Start an Application Gateway instance
azure_rm_appgateway:
resource_group: myResourceGroup
name: myAppGateway
gateway_state: started
Возвращаемые значения
Общие возвращаемые значения описаны в здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
id string | Идентификатор ресурса шлюза приложений. Возвращается: всегда Пример: |
location string | Расположение шлюза приложений. Возвращается: всегда Пример: |
name string | Имя шлюза приложений. Возвращается: всегда Пример: |
operational_state string | Рабочее состояние шлюза приложений. Возвращается: всегда Пример: |
provisioning_state string | Состояние подготовки шлюза приложений. Возвращается: всегда Пример: |
resource_group string | Имя группы ресурсов. Возвращается: всегда Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/azure/azcollection/azure_rm_appgateway_module.html