f5networks.f5_modules.bigip_policy_rule – Управление правилами политики LTM на BIG-IP
Примечание
Этот плагин входит в коллекцию f5networks.f5_modules (версия 1.7.1).
Для его установки используйте: ansible-galaxy collection install f5networks.f5_modules.
Для использования в книге задач укажите: f5networks.f5_modules.bigip_policy_rule.
Новое в версии 1.0.0: of f5networks.f5_modules
Описание
- Этот модуль будет управлять правилами политики LTM на BIG-IP.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- BIG-IP >= v12.1.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| actions список / элементы=словарь | Действия, которые должна выполнить политика. Доступные атрибуты зависят от действия, однако для каждого действия необходимо указать type. Эти условия могут быть указаны в любом порядке. Несмотря на то, что они перечислены в списке, порядок в списке не имеет значения для BIG-IP. | ||
| asm_policy строка | Политика ASM для включения. Этот параметр действителен только для типа enable. | ||
| cookie_expiry целое число добавлен в 1.1.0 f5networks.f5_modules | Необязательный аргумент, указывающий время, в течение которого сессия будет сохраняться. Этот параметр действителен только для типа persist. | ||
| cookie_insert строка добавлен в 1.1.0 f5networks.f5_modules | Имя куки, для которого нужно сохранить сессию. Этот параметр действителен только для типа persist. | ||
| event строка | События, при которых можно инициировать действия, такие как сброс. Для действия set_variable, используется для указания события действия, такого как запрос или ответ. | ||
| expression строка | Tcl-выражение, используемое с действием set_variable. | ||
| location строка | Новый URL, для которого будет отправлен ответ перенаправления. Для этого поля можно использовать подстановку Tcl-команд. | ||
| node строка добавлен в 1.2.0 f5networks.f5_modules | Узел, на который нужно перенаправить трафик. Этот параметр действителен только для типа forward. | ||
| pool строка | Пул, на который нужно перенаправить трафик. Этот параметр действителен только для типа forward. | ||
| type строка / обязательно |
| Тип действия. Это значение определяет, какие из следующих параметров обязательны. Когда type равно forward, система связывает заданный pool, или virtual, или node с этой правилом.Когда type равно enable, система связывает заданный asm_policy с этим правилом.Когда type равно ignore, система удаляет все существующие действия из этого правила.Когда type равно redirect, система перенаправляет HTTP-запрос на другой URL.Когда type равно reset, система сбрасывает соединение при event. Когда type равно persist, система связывает cookie_insert и cookie_expiry с этим правилом.Когда type равно set_variable, система устанавливает переменную на основе вычисленного Tcl expression на основе event. | |
| variable_name строка | Имя переменной, используемой с действием set_variable. | ||
| virtual строка | Виртуальный сервер, на который нужно перенаправить трафик. Этот параметр действителен только для типа forward. | ||
| conditions список / элементы=словарь | Список атрибутов, описывающих условие. См. подпараметры для получения подробной информации о том, как создать каждый элемент списка. Порядок этого списка важен; модуль гарантирует, что порядок будет сохранен при изменении задачи. Ниже перечисленные подпараметры не требуются для всех типов условий, ознакомьтесь с описанием для получения более подробной информации. Эти условия могут быть указаны в любом порядке. Несмотря на то, что они перечислены в списке, порядок в списке не имеет значения для BIG-IP. | ||
| event строка | События, при которых можно инициировать условия, такие как расширение SSL. | ||
| host_begins_with_any список / элементы=строка | Список строк символов, с которых должен начинаться HTTP-Host. Этот параметр действителен только для типа http_host. | ||
| host_is_any список / элементы=строка | Список строк символов, которым должен соответствовать HTTP-Host. Этот параметр действителен только для типа http_host. | ||
| host_is_not_any список / элементы=строка | Список строк символов, которым HTTP-Host не должен соответствовать. Этот параметр действителен только для типа http_host. | ||
| path_begins_with_any список / элементы=строка | Список строк символов, с которых должна начинаться HTTP-URI. Этот параметр действителен только для типа http_uri. | ||
| server_name_is_any список / элементы=строка | Список строк символов, которым должно соответствовать расширение SSL. Этот параметр действителен только для типа ssl_extension. | ||
| type строка / обязательно |
| Тип условия. Это значение определяет, какие из следующих параметров обязательны. Когда type равно http_uri, система связывает заданный список path_begins_with_any строк, с которых должна начинаться HTTP-URI. Любой элемент в списке обеспечит соответствие.Когда type равно all_traffic, система удаляет все существующие условия из этого правила. | |
| description строка | Описание правила политики. | ||
| name строка / обязательно | Имя правила. | ||
| partition строка | Значение по умолчанию: "Common" | Раздел устройства для управления ресурсами. | |
| policy строка / обязательно | Имя политики, которую нужно связать с этим правилом. | ||
| provider словарь добавлен в 1.0.0 f5networks.f5_modules | Объект словаря, содержащий данные соединения. | ||
| auth_provider строка | Настраивает поставщика авторизации для получения маркеров аутентификации с удаленного устройства. Этот параметр используется при работе с устройствами BIG-IQ. | ||
| no_f5_teem логическое |
| Если yes, данные телеметрии TEEM не отправляются в F5.Можно опустить этот параметр, установив переменную среды F5_TEEM. | |
| password строка / обязательно | Пароль учетной записи пользователя для подключения к BIG-IP. Можно опустить этот параметр, установив переменную среды F5_PASSWORD.псевдонимы: pass, pwd | ||
| server строка / обязательно | Хост BIG-IP. Можно опустить этот параметр, установив переменную среды F5_SERVER. | ||
| server_port целое число | Значение по умолчанию: 443 | Порт сервера BIG-IP. Можно опустить этот параметр, установив переменную среды F5_SERVER_PORT. | |
| timeout целое число | Устанавливает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут превышен до завершения операции, модуль выдаст ошибку. | ||
| transport строка |
| Настраивает транспортное соединение для подключения к удаленному устройству. | |
| user строка / обязательно | Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь права администратора на устройстве. Можно опустить этот параметр, установив переменную среды F5_USER. | ||
| validate_certs boolean |
| Если no, сертификаты SSL не проверяются. Используйте только на сайтах, контролируемых вами лично, использующих самозаверенные сертификаты.Этот параметр можно опустить, установив переменную среды F5_VALIDATE_CERTS. | |
| state string |
| Когда present, гарантирует, что ключ загружен на устройство. Когда absent, гарантирует, что ключ удален с устройства. Если ключ в настоящее время используется, модуль не сможет удалить ключ. | |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks см. в https://www.ansible.com/integrations/networks/f5.
- Требуется версия ПО BIG-IP >= 12.
- Модули F5 манипулируют только текущей конфигурацией продукта F5. Чтобы убедиться, что конфигурация, специфичная для BIG-IP, сохранится на диске, обязательно включите хотя бы одну задачу, которая использует модуль f5networks.f5_modules.bigip_config, для сохранения текущей конфигурации. Обратитесь к документации модуля для правильного использования модуля для сохранения текущей конфигурации.
Примеры
- name: Create policies
bigip_policy:
name: Policy-Foo
state: present
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Add a rule to the new policy
bigip_policy_rule:
policy: Policy-Foo
name: rule3
conditions:
- type: http_uri
path_begins_with_any:
- /ABC
actions:
- type: forward
pool: pool-svrs
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Add multiple rules to the new policy
bigip_policy_rule:
policy: Policy-Foo
name: "{{ item.name }}"
conditions: "{{ item.conditions }}"
actions: "{{ item.actions }}"
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
loop:
- name: rule1
actions:
- type: forward
pool: pool-svrs
conditions:
- type: http_uri
path_begins_with_any:
- /euro
- name: rule2
actions:
- type: forward
pool: pool-svrs
conditions:
- type: http_uri
path_begins_with_any:
- /HomePage/
- name: rule3
actions:
- type: set_variable
variable_name: user-agent
expression: tcl:[HTTP::header User-Agent]
event: request
conditions:
- type: http_uri
path_begins_with_any:
- /HomePage/
- name: Remove all rules and confitions from the rule
bigip_policy_rule:
policy: Policy-Foo
name: rule1
conditions:
- type: all_traffic
actions:
- type: ignore
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
Значения возврата
Общие значения возврата описаны в здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| actions сложный | changed | Новый список действий, примененных к правилу. Пример: хэш/словарь значений | |
| pool строка | changed | Пул для переадресации. Пример: foo-pool | |
| type строка | changed | Тип действия. Пример: forward | |
| conditions сложный | changed | Новый список условий, примененных к правилу. Пример: хэш/словарь значений | |
| path_begins_with_any список / элементы=строка | changed | Список строк, с которых начинается URI. Пример: ['foo', 'bar'] | |
| type строка | changed | Тип условия. Пример: http_uri | |
| description строка | changed | Новое описание правила. Пример: Моё правило | |
Авторы
- Tim Rupp (@caphrim007)
- Wojciech Wypior (@wojtek0806)
- Greg Crosby (@crosbygw)
- Nitin Khanna (@nitinthewiz)
- Andrey Kashcheev (@andreykashcheev)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/f5networks/f5_modules/bigip_policy_rule_module.html