Spec-Zone.ru › Ansible

Модуль 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-сервисами. Значение по умолчанию latest подходит для публичных облаков; будущие значения позволят использовать с Azure Stack.

По умолчанию: "latest"

append_tags

логический тип

Управляет тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам.

При каноническом варианте все теги, отсутствующие в параметре тегов, будут удалены из метаданных объекта.

Варианты:

  • false
  • true ← (по умолчанию)

auth_source

строка

добавлен в azure.azcollection 0.0.1

Управляет источником учетных данных для аутентификации.

Также может быть установлен через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.

При значении auto (по умолчанию) приоритет — параметры модуля -> env -> credential_file -> cli.

При значении env, учетные данные будут считываться из переменных среды.

При значении credential_file, профиль будет считываться из ~/.azure/credentials.

При значении cli, учетные данные будут взяты из профиля Azure CLI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для идентификации идентификатора подписки, если их несколько; в противном случае используется стандартная подписка az cli.

При значении msi, хост-машина должна быть Azure-ресурсом с включённым расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID может быть использована для идентификации идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам; в противном случае выбирается первая подписка.

msi был добавлен в Ansible 2.6.

Варианты:

  • "auto" ← (по умолчанию)
  • "cli"
  • "credential_file"
  • "env"
  • "msi"

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

список / элементы=словарь

Список ссылок на сертификаты аутентификации шлюза приложений.

Применима только если cookie_based_affinity включена, в противном случае тихо игнорируется.

END_OF_DOCUMENT_MARKER

id

string

Идентификатор ресурса.

connection_draining

dictionary

added in azure.azcollection 1.15.0

Отключение соединений для ресурса настроек HTTP-бекенда.

drain_timeout_in_sec

integer

Количество секунд, в течение которых активно отключение соединений. Допустимые значения от 1 секунды до 3600 секунд.

enabled

boolean

Включено ли отключение соединений.

Выбор:

  • false
  • true

cookie_based_affinity

string

Аффинити на основе cookie.

Выбор:

  • "enabled"
  • "disabled"

host_name

string

Заголовок хоста, который будет отправлен на серверы бекенда.

name

string

Имя ресурса, уникальное в группе ресурсов. Это имя может быть использовано для доступа к ресурсу.

path

string

Путь, который должен использоваться в качестве префикса для всех запросов.

Null означает, что префикс пути не будет добавлен. Значение по умолчанию - null.

pick_host_name_from_backend_address

boolean

Выбирать заголовок хоста из имени хоста сервера бекенда. Значение по умолчанию - false.

Выбор:

  • false
  • true

port

integer

Порт назначения на бекенде.

probe

any

Ресурс зондирования шлюза приложений.

protocol

string

Протокол, используемый для связи с бекендом.

Выбор:

  • "http"
  • "https"

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, может потребоваться отключить это поведение, передав ignore. Также может быть задано через профиль файла аутентификации или переменную окружения AZURE_CERT_VALIDATION.

Выбор:

  • "ignore"
  • "validate"

client_id

string

Идентификатор Azure-клиента. Используется при аутентификации с помощью службы-принципала или управляемой учетной записи (msi).

Также может быть задано через переменную окружения AZURE_CLIENT_ID.

cloud_environment

string

added in azure.azcollection 0.0.1

Для облачных сред, отличных от общедоступного облака США, имя среды (определяется Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment), или URL-адрес конечной точки обнаружения метаданных (требуется для Azure Stack). Также может быть задано через профиль файла аутентификации или переменную окружения AZURE_CLOUD_ENVIRONMENT.

По умолчанию: "AzureCloud"

disable_instance_discovery

boolean

added in azure.azcollection 2.3.0

Определяет, выполняется ли обнаружение экземпляров при попытке аутентификации. Установка этого параметра в значение true полностью отключит как обнаружение экземпляров, так и проверку полномочий. Эта функция предназначена для использования в сценариях, когда конечная точка метаданных недоступна, например, в частных облаках или Azure Stack. Процесс обнаружения экземпляров включает в себя извлечение метаданных полномочий из https://login.microsoft.com/ для проверки полномочий. Установив это значение в **True**, проверка полномочий отключается. В результате крайне важно убедиться, что настроенный узел полномочий является действительным и заслуживающим доверия.

Устанавливается через профиль файла учетных данных или переменную среды AZURE_DISABLE_INSTANCE_DISCOVERY.

Choices:

  • false ← (default)
  • true

enable_http2

boolean

added in azure.azcollection 1.15.0

Включен ли HTTP2 в ресурсе шлюза приложений.

Choices:

  • false ← (default)
  • true

frontend_ip_configurations

list / elements=dictionary

Входящие IP-адреса ресурса шлюза приложений.

name

string

Имя ресурса, которое является уникальным в пределах группы ресурсов. Это имя может использоваться для доступа к ресурсу.

private_ip_address

string

PrivateIPAddress конфигурации IP-адреса сетевого интерфейса.

private_ip_allocation_method

string

Метод выделения PrivateIP.

Choices:

  • "static"
  • "dynamic"

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:

  • "started"
  • "stopped"

http_listeners

список / элементы=словарь

Список HTTP-прослушивателей ресурса шлюза приложений.

frontend_ip_configuration

любой

Ресурс конфигурации IP-адреса фронтального узла шлюза приложений.

frontend_port

любой

Ресурс порта фронтального узла шлюза приложений.

host_name

строка

Имя хоста http прослушивателя.

name

строка

Имя ресурса, уникальное в рамках группы ресурсов. Это имя может быть использовано для доступа к ресурсу.

protocol

строка

Протокол http прослушивателя.

Варианты:

  • "http"
  • "https"

require_server_name_indication

логическое

Применимо только если protocol равен https. Включает SNI для многохостинга.

Варианты:

  • false
  • true

ssl_certificate

любой

Сертификат SSL ресурса шлюза приложений.

identity

словарь

добавлено в azure.azcollection 2.5.0

Идентификатор для шлюза приложений

type

строка

Тип управляемого идентификатора

Варианты:

  • "SystemAssigned"
  • "UserAssigned"
  • "SystemAssigned, UserAssigned"
  • "None" ← (по умолчанию)

user_assigned_identities

словарь

Пользовательские назначенные управляемые идентификаторы и их параметры

По умолчанию: {}

append

логическое

Добавить ли список идентификаторов к текущим (true) или заменить ли текущие идентификаторы (false)

Варианты:

  • false
  • true ← (по умолчанию)

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.

Варианты:

  • false ← (по умолчанию)
  • true

порт

целое число

Пользовательский порт, который будет использоваться для проверки бэкенд-серверов.

Допустимые значения — от 1 до 65535.

Если не задан, используется порт из настроек HTTP.

Это свойство действует только для Standard_v2 и WAF_v2.

протокол

строка

Используемый протокол для пробы.

Варианты:

  • "http"
  • "https"

таймаут

целое число

Таймаут пробы в секундах.

Проба считается неудачной, если ответ не получен в течение этого таймаута.

Допустимые значения — от 1 до 86400 секунд.

порог_неисправности

целое число

Количество повторов пробы.

Бэкенд-сервер отмечается как неисправный после достижения количества последовательных неудач, равного порогу неисправности.

Допустимые значения — от 1 до 20.

профиль

строка

Профиль безопасности из файла ~/.azure/credentials.

настройки_перенаправления

список / элементы=словарь

Настройки перенаправления ресурса шлюза приложений.

включать_путь

булево

Включать путь в перенаправленный URL.

Варианты:

  • false
  • true

включать_строку_запроса

булево

Включать строку запроса в перенаправленный URL.

Варианты:

  • false
  • true

имя

строка

Имя ресурса, уникальное в пределах группы ресурсов.

правила_путей

список / элементы=словарь

добавлен в azure.azcollection 1.10.0

Список правил пути URL в правиле маршрутизации по пути, к которому привязано перенаправление.

имя

строка

Имя правила URL.

имя_карты_путей

строка

Имя карты пути URL.

тип_перенаправления

строка

Тип перенаправления.

Варианты:

  • "permanent"
  • "found"
  • "see_other"
  • "temporary"

правила_маршрутизации_запросов

список / элементы=строка

добавлен в azure.azcollection 1.10.0

Список имён правил маршрутизации запросов в шлюзе приложений, к которым привязано перенаправление.

целевой_слушатель

строка

Ссылка на слушатель, к которому перенаправляется запрос.

карты_путей_url

список / элементы=строка

добавлен в azure.azcollection 1.10.0

Список имён карт пути URL (правил маршрутизации по пути) в шлюзе приложений, к которым привязано перенаправление.

правила_маршрутизации_запросов

список / элементы=словарь

Список правил маршрутизации запросов ресурса шлюза приложений.

пул_адресов_бэкенда

любой

Ресурс пула адресов бэкенда шлюза приложений. Не используется, если rule_type — path_based_routing.

backend_http_settings

any

Ресурс настроек бэкенда http шлюза приложений.

http_listener

any

Ресурс слушателя HTTP шлюза приложений.

name

string

Имя ресурса, уникальное в рамках группы ресурсов. Это имя может быть использовано для доступа к ресурсу.

redirect_configuration

any

Ресурс конфигурации перенаправления шлюза приложений.

rewrite_rule_set

any

добавлен в azure.azcollection 1.11.0

Набор правил переписывания для карты путей.

Может быть именем набора правил переписывания или полным идентификатором ресурса.

rule_type

string

Тип правила.

Варианты:

  • "basic"
  • "path_based_routing"

url_path_map

any

Ресурс карты URL-путей шлюза приложений. Требуется, если rule_type равен path_based_routing.

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, будет повторно вычисляться карта путей, предоставленная в правилах маршрутизации запросов на основе пути, с использованием изменённого пути.

Варианты:

  • false ← (по умолчанию)
  • true

conditions

список / элементы=словарь

Условия, на основе которых будет оцениваться выполнение набора действий.

По умолчанию: []

ignore_case

boolean

Установка этого значения в true заставит шаблон выполнить сравнение, не учитывая регистр.

Варианты:

  • false
  • true ← (по умолчанию)

negate

boolean

Установка этого значения в true заставит проверить отрицание условия, заданного пользователем.

Варианты:

  • false ← (по умолчанию)
  • true

pattern

строка / обязательно

Шаблон, представляющий собой либо фиксированную строку, либо регулярное выражение, оценивающий истинность условия.

variable

строка / обязательно

Параметр для условия.

name

строка / обязательно

Имя правила переписывания.

rule_sequence

целое число / обязательно

Последовательность правила, определяющая порядок выполнения в наборе.

secret

строка

Секретный ключ Azure. Используйте при аутентификации с помощью принципала службы.

sku

словарь

SKU ресурса шлюза приложений.

capacity

целое число

Ёмкость (количество экземпляров) шлюза приложений.

name

строка

Имя SKU шлюза приложений.

Варианты:

  • "standard_small"
  • "standard_medium"
  • "standard_large"
  • "standard_v2"
  • "waf_medium"
  • "waf_large"
  • "waf_v2"

tier

строка

Уровень шлюза приложений.

Варианты:

  • "standard"
  • "standard_v2"
  • "waf"
  • "waf_v2"

ssl_certificates

список / элементы=словарь

Сертификаты SSL ресурса шлюза приложений.

data

строка

Сертификат pfx в кодировке Base-64.

Применимо только для запросов PUT.

name

строка

Имя ресурса, уникальное в группе ресурсов. Это имя может использоваться для доступа к ресурсу.

password

строка

Пароль для файла pfx, указанного в data.

Применимо только для запросов PUT.

ssl_policy

словарь

Политика SSL ресурса шлюза приложений.

cipher_suites

список / элементы=строка

Список наборов шифров SSL, которые необходимо включить в указанном порядке для шлюза приложений.

Варианты:

  • "tls_ecdhe_rsa_with_aes_256_gcm_sha384"
  • "tls_ecdhe_rsa_with_aes_128_gcm_sha256"
  • "tls_ecdhe_rsa_with_aes_256_cbc_sha384"
  • "tls_ecdhe_rsa_with_aes_128_cbc_sha256"
  • "tls_ecdhe_rsa_with_aes_256_cbc_sha"
  • "tls_ecdhe_rsa_with_aes_128_cbc_sha"
  • "tls_dhe_rsa_with_aes_256_gcm_sha384"
  • "tls_dhe_rsa_with_aes_128_gcm_sha256"
  • "tls_dhe_rsa_with_aes_256_cbc_sha"
  • "tls_dhe_rsa_with_aes_128_cbc_sha"
  • "tls_rsa_with_aes_256_gcm_sha384"
  • "tls_rsa_with_aes_128_gcm_sha256"
  • "tls_rsa_with_aes_256_cbc_sha256"
  • "tls_rsa_with_aes_128_cbc_sha256"
  • "tls_rsa_with_aes_256_cbc_sha"
  • "tls_rsa_with_aes_128_cbc_sha"
  • "tls_ecdhe_ecdsa_with_aes_256_gcm_sha384"
  • "tls_ecdhe_ecdsa_with_aes_128_gcm_sha256"
  • "tls_ecdhe_ecdsa_with_aes_256_cbc_sha384"
  • "tls_ecdhe_ecdsa_with_aes_128_cbc_sha256"
  • "tls_ecdhe_ecdsa_with_aes_256_cbc_sha"
  • "tls_ecdhe_ecdsa_with_aes_128_cbc_sha"
  • "tls_dhe_dss_with_aes_256_cbc_sha256"
  • "tls_dhe_dss_with_aes_128_cbc_sha256"
  • "tls_dhe_dss_with_aes_256_cbc_sha"
  • "tls_dhe_dss_with_aes_128_cbc_sha"
  • "tls_rsa_with_3des_ede_cbc_sha"
  • "tls_dhe_dss_with_3des_ede_cbc_sha"

disabled_ssl_protocols

список / элементы=строка

Список протоколов SSL, которые необходимо отключить на шлюзе приложений.

Варианты:

  • "tls_v1_0"
  • "tls_v1_1"
  • "tls_v1_2"

min_protocol_version

строка

Минимальная версия протокола SSL, которая должна поддерживаться шлюзом приложений.

Варианты:

  • "tls_v1_0"
  • "tls_v1_1"
  • "tls_v1_2"

policy_name

строка

Имя политики Ssl predefined.

Варианты:

  • "ssl_policy20150501"
  • "ssl_policy20170401"
  • "ssl_policy20170401_s"

policy_type

строка

Тип политики SSL.

Варианты:

  • "predefined"
  • "custom"

state

строка

Установите состояние шлюза приложений. Используйте present для создания или обновления и absent для удаления.

Варианты:

  • "absent"
  • "present" ← (по умолчанию)

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

Включена ли веб-защита приложений или нет.

Варианты:

  • false
  • true

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

Режим веб-защиты приложений.

Варианты:

  • "Detection"
  • "Prevention"

max_request_body_size

integer

Максимальный размер тела запроса для WAF.

max_request_body_size_in_kb

integer

Максимальный размер тела запроса в Кб для WAF.

request_body_check

boolean

Разрешить WAF проверять тело запроса.

Варианты:

  • false
  • true

rule_set_type

string

Тип набора правил брандмауэра веб-приложений.

Возможные значения — ‘OWASP’.

Варианты:

  • "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

Идентификатор ресурса шлюза приложений.

Возвращается: всегда

Пример: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/myAppGw"

location

string

Расположение шлюза приложений.

Возвращается: всегда

Пример: "centralus"

name

string

Имя шлюза приложений.

Возвращается: всегда

Пример: "myAppGw"

operational_state

string

Рабочее состояние шлюза приложений.

Возвращается: всегда

Пример: "Running"

provisioning_state

string

Состояние подготовки шлюза приложений.

Возвращается: всегда

Пример: "Succeeded"

resource_group

string

Имя группы ресурсов.

Возвращается: всегда

Пример: "myResourceGroup"

Авторы

  • Zim Kalinowski (@zikalino)

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (источники)

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API