bigip_command - Выполнение произвольной команды на устройствах F5.
Новая версия 2.4.
- Описание
- Требования (к хосту, выполняющему модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Описание
- Отправляет произвольную команду узлу BIG-IP и возвращает результаты, считанные с устройства. Этот модуль включает аргумент, который заставит модуль ожидать выполнения определенного условия перед возвратом или сработает таймаут, если условие не будет выполнено.
Требования (к хосту, выполняющему модуль)
- f5-sdk >= 2.2.3
Параметры
| параметр | обязательно | по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| commands | да | Команды, которые нужно отправить на удаленное устройство BIG-IP через настроенного поставщика. Результирующий вывод команды возвращается. Если предоставлен аргумент wait_for, модуль не возвращается до тех пор, пока условие не будет выполнено или не истечет число попыток. Аргумент commands также принимает альтернативную форму, которая позволяет использовать сложные значения, определяющие команду для выполнения и формат вывода. Это можно сделать для каждой команды по отдельности. Сложный аргумент поддерживает ключевые слова command и output, где command — это команда для выполнения, а output — 'text' или 'one-line'. | ||
| interval | нет | 1 | Настраивает интервал в секундах ожидания между повторами команды. Если команда не выполняет указанное условие, интервал указывает, сколько ждать перед новой попыткой. | |
| match | нет | all | Аргумент match используется совместно с аргументом wait_for для задания политики соответствия. Допустимые значения — all или any. Если значение установлено в all, все условия в wait_for должны быть выполнены. Если значение установлено в any, должно быть выполнено только одно из значений. | |
| password | да | Пароль для учетной записи пользователя, используемой для подключения к BIG-IP. Этот параметр можно опустить, если установлена переменная среды F5_PASSWORD. | ||
| retries | нет | 10 | Указывает количество попыток выполнения команды перед тем, как она будет считаться неудачной. Команда выполняется на целевом устройстве при каждой попытке и оценивается по условиям wait_for. | |
| server | да | Хост BIG-IP. Этот параметр можно опустить, если установлена переменная среды F5_SERVER. | ||
| server_port (добавлено в 2.2)
| нет | 443 | Порт сервера BIG-IP. Этот параметр можно опустить, если установлена переменная среды F5_SERVER_PORT. | |
| user | да | Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные привилегии на устройстве. Этот параметр можно опустить, если установлена переменная среды F5_USER. | ||
| validate_certs (добавлено в 2.0)
| нет | True |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах под личным контролем, использующих самозаверенные сертификаты. Этот параметр можно опустить, если установлена переменная среды F5_VALIDATE_CERTS. |
| wait_for | нет | Определяет, что нужно оценивать из вывода команды и какие условия применять. Этот аргумент заставит задачу подождать выполнения определенного условия, прежде чем продолжать. Если условие не выполняется к заданному количеству попыток, задача завершается с ошибкой. См. примеры. псевдонимы: waitfor |
Примеры
- name: run show version on remote devices
bigip_command:
commands: show sys version
server: "lb.mydomain.com"
password: "secret"
user: "admin"
validate_certs: "no"
delegate_to: localhost
- name: run show version and check to see if output contains BIG-IP
bigip_command:
commands: show sys version
wait_for: result[0] contains BIG-IP
server: "lb.mydomain.com"
password: "secret"
user: "admin"
validate_certs: "no"
delegate_to: localhost
- name: run multiple commands on remote nodes
bigip_command:
commands:
- show sys version
- list ltm virtual
server: "lb.mydomain.com"
password: "secret"
user: "admin"
validate_certs: "no"
delegate_to: localhost
- name: run multiple commands and evaluate the output
bigip_command:
commands:
- show sys version
- list ltm virtual
wait_for:
- result[0] contains BIG-IP
- result[1] contains my-vs
server: "lb.mydomain.com"
password: "secret"
user: "admin"
validate_certs: "no"
delegate_to: localhost
- name: tmsh prefixes will automatically be handled
bigip_command:
commands:
- show sys version
- tmsh list ltm virtual
server: "lb.mydomain.com"
password: "secret"
user: "admin"
validate_certs: "no"
delegate_to: localhost
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| failed_conditions | Список условий, которые не были выполнены | при ошибке | список | ['...', '...'] |
| stdout | Набор ответов от команд | всегда | список | ['...', '...'] |
| stdout_lines | Значение stdout, разделенное на список | всегда | список | [['...', '...'], ['...'], ['...']] |
Примечания
Примечание
- Требуется пакет f5-sdk Python на хосте. Это так же просто, как pip install f5-sdk.
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вы этого желаете, обратитесь к Информация о сообществе и участие, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/bigip_command_module.html