f5networks.f5_modules.bigip_pool_member – Управляет членами пула F5 BIG-IP LTM
Примечание
Этот плагин входит в коллекцию f5networks.f5_modules (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install f5networks.f5_modules.
Для использования в плейбуке укажите: f5networks.f5_modules.bigip_pool_member.
Новое в версии 1.0.0: модуля f5networks.f5_modules
Описание
- Управляет членами пулов F5 BIG-IP LTM через REST API.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| address строка | IP-адрес участника пула. Может быть IPv4 или IPv6. При создании нового участника пула необходимо указать либо address, либо fqdn. После установки этот параметр изменить нельзя.Псевдонимы: ip, host | ||
| aggregate список / элементы=словарь | Список определений участников пула, которые необходимо создать, изменить или удалить. При использовании aggregates, если одно из определений в агрегате неверно, выполнение агрегата завершится ошибкой, указав последнюю обнаруженную ошибку.Модуль НЕ откатит любые изменения, произведённые до возникновения ошибки. Модуль также не укажет, какие изменения были внесены до сбоя. Поэтому настоятельно рекомендуем запускать модуль в режиме check, чтобы обеспечить базовую проверку перед выполнением этого модуля.Псевдонимы: members | ||
| availability_requirements словарь | Если активировано более одного монитора работоспособности, указывает количество мониторов работоспособности, которые должны получить успешные ответы, чтобы подключение считалось доступным. Указание пустой строки удалит мониторы и вернётся к наследованию от пула (значение по умолчанию). Указание none полностью удалит любой мониторинг работоспособности от участника. | ||
| at_least целое число | Указывает минимальное количество активных мониторов работоспособности, которые должны быть успешными, прежде чем соединение будет считаться активным. Этот параметр актуален только при использовании типа type из at_least.Этот параметр будет проигнорирован, если используется тип all. | ||
| type строка / обязательно |
| Тип правила мониторинга, когда указан параметр monitors.При создании нового пула, если этот параметр не указан, будет использоваться значение по умолчанию all. | |
| connection_limit целое число | Предел подключений участника пула. Установка значения 0 отключает лимит. | ||
| description строка | Описание участника пула. | ||
| fqdn строка | FQDN-имя участника пула. Может быть любым именем, соответствующим валидному DNS-имени RFC 1123. Поэтому могут использоваться только символы "A"–"Z", "a"–"z", "0"–"9", дефис ("-") и точка ("."). FQDN-имена должны содержать по меньшей мере одну точку; отделяя хост от домена. Например, host.domain.FQDN-имена должны заканчиваться буквой или цифрой. При создании нового участника пула необходимо указать либо address, либо fqdn. После установки этот параметр изменить нельзя.Псевдонимы: hostname | ||
| fqdn_auto_populate булево |
| Указывает, автоматически ли система создает временные узлы, используя IP-адреса, возвращенные результатами разрешения DNS-запроса для узла, определенного FQDN. При значении yes система создает временный узел для каждого IP-адреса, возвращенного в ответ на DNS-запрос для FQDN узла. Кроме того, если DNS-ответ указывает, что IP-адрес временного узла больше не существует, система удаляет временный узел.При значении no система разрешает DNS-запрос для FQDN узла с единственным IP-адресом, связанным с FQDN.При создании нового участника пула значение по умолчанию для этого параметра — yes.После установки этот параметр изменить нельзя. Этот параметр игнорируется, когда reuse_nodes равно yes. | |
| ip_encapsulation строка | Указывает IP-инкапсуляцию, используя IPIP (IP-инкапсуляция в IP, RFC 2003) или GRE (Generic Router Encapsulation, RFC 2784) для исходящих пакетов (от BIG-IP системы до участника пула серверов). При значении none отключается IP-инкапсуляция.При значении inherit наследуется параметр IP-инкапсуляции из пула участника.При любом другом значении варианты — None, Наследовать из пула и Участник-специфическое. | ||
| monitors список / элементы=строка | Указывает мониторы работоспособности, которые система в настоящее время использует для мониторинга этого ресурса. | ||
| name строка | Имя узла для создания или повторного использования при создании нового участника пула. Этот параметр необязательный. Если не указан, имя узла будет создано автоматически из указанного address или fqdn.Состояние enabled — псевдоним present. | ||
| partition строка | Значение по умолчанию: "Common" | Раздел для управления ресурсами. | |
| pool строка / обязательно | Имя пула. Этот пул должен существовать. | ||
| port целое число | Порт участника пула. Это значение изменить нельзя после установки. | ||
| preserve_node булево |
| Когда состояние — absent, система пытается удалить узел, на который ссылается участник пула.Узел не будет удален, если он по-прежнему ссылается на другие участники пула. В этом случае модуль не выдаст ошибку. Установка значения yes отключает это поведение. | |
| priority_group целое число | Указывает число, представляющее группу приоритетов для участника пула. При добавлении нового участника значение по умолчанию — 0, что означает, что у участника нет приоритета.Чтобы задать приоритет, необходимо включить использование группы приоритетов при создании нового пула или добавлении или удалении участников пула. При активации система балансирует трафик в соответствии с номером группы приоритетов, назначенной участнику пула. Чем выше число, тем выше приоритет. Участник с приоритетом 3 имеет больший приоритет, чем участник с приоритетом 1. | ||
| 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 булево |
| Если no, сертификаты SSL не проверяются. Используйте только на сайтах, контролируемых лично, с самозаверяющими сертификатами.Вы можете опустить этот параметр, задав переменную среды F5_VALIDATE_CERTS. | |
| rate_limit целое число | Предел скорости участника пула (подключений в секунду). Установка значения 0 отключает лимит. | ||
| ratio целое число | Весовой коэффициент соотношения участника пула. Допустимые значения от 1 до 100. Новые участники пула, если не переопределены, имеют значение по умолчанию 1. | ||
| replace_all_with boolean |
| Удаляет члены пула, не определённые в параметре aggregate.Этот процесс выполняется целиком или никак, то есть он остановится, если некоторые члены пула не могут быть удалены. псевдонимы: purge | |
| reuse_nodes boolean |
| Использует определения узлов, если запрошено. | |
| state string |
| Состояние члена пула. | |
Примечания
Примечание
- В предыдущих версиях этого модуля, использующего SDK, параметр
nameдействовал какfqdn, еслиaddressилиfqdnне были указаны. - Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks см. на странице https://www.ansible.com/integrations/networks/f5.
- Требуется версия ПО BIG-IP ≥ 12.
- Модули F5 изменяют только рабочую конфигурацию продукта F5. Чтобы убедиться, что конфигурация BIG-IP сохранится на диске, обязательно включите хотя бы одну задачу, использующую модуль f5networks.f5_modules.bigip_config для сохранения рабочей конфигурации. Обратитесь к документации модуля для правильного использования модуля для сохранения рабочей конфигурации.
Примеры
- name: Add pool member
bigip_pool_member:
pool: my-pool
partition: Common
host: "{{ ansible_default_ipv4['address'] }}"
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Modify pool member ratio and description
bigip_pool_member:
pool: my-pool
partition: Common
host: "{{ ansible_default_ipv4['address'] }}"
port: 80
ratio: 1
description: nginx server
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Remove pool member from pool
bigip_pool_member:
state: absent
pool: my-pool
partition: Common
host: "{{ ansible_default_ipv4['address'] }}"
port: 80
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Force pool member offline
bigip_pool_member:
state: forced_offline
pool: my-pool
partition: Common
host: "{{ ansible_default_ipv4['address'] }}"
port: 80
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Create members with priority groups
bigip_pool_member:
pool: my-pool
partition: Common
host: "{{ item.address }}"
name: "{{ item.name }}"
priority_group: "{{ item.priority_group }}"
port: 80
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
loop:
- address: 1.1.1.1
name: web1
priority_group: 4
- address: 2.2.2.2
name: web2
priority_group: 3
- address: 3.3.3.3
name: web3
priority_group: 2
- address: 4.4.4.4
name: web4
priority_group: 1
- name: Add pool members aggregate
bigip_pool_member:
pool: my-pool
aggregate:
- host: 192.168.1.1
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
- host: 192.168.1.2
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
- host: 192.168.1.3
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
- name: Add pool members aggregate, remove non aggregates
bigip_pool_member:
pool: my-pool
aggregate:
- host: 192.168.1.1
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
- host: 192.168.1.2
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
- host: 192.168.1.3
partition: Common
port: 80
description: web server
connection_limit: 100
rate_limit: 50
ratio: 2
replace_all_with: yes
provider:
server: lb.mydomain.com
user: admin
password: secret
delegate_to: localhost
Значения возврата
Общие значения возврата описаны в этом документе, а ниже приведены поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| address string | changed | Адрес члена пула. Пример: 1.2.3.4 |
| connection_limit integer | changed | Новый лимит подключений для члена пула. Пример: 1000 |
| description string | changed | Новое описание члена пула. Пример: Мой член пула |
| fqdn string | changed | FQDN члена пула. Пример: foo.bar.com |
| fqdn_auto_populate boolean | changed | Установлена ли автоматическая генерация FQDN для члена пула. Пример: True |
| monitors list / elements=string | changed | Новый список мониторов для ресурса. Пример: ['/Common/monitor1', '/Common/monitor2'] |
| priority_group integer | changed | Новая группа приоритетов. Пример: 3 |
| rate_limit integer | changed | Новый лимит скорости, в подключениях в секунду, для члена пула. Пример: 100 |
| ratio integer | changed | Новый весовой коэффициент члена пула. Пример: 50 |
| replace_all_with boolean | changed | Удаляет все члены пула, не являющиеся агрегированными, с устройства. Пример: True |
Авторы
- Tim Rupp (@caphrim007)
- Wojciech Wypior (@wojtek0806)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/f5networks/f5_modules/bigip_pool_member_module.html