Spec-Zone.ru › Ansible 2.9

bigip_command – Выполнение команд TMSH и BASH на устройствах F5

Новая в версии 2.4.

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Отправляет команду TMSH или BASH на узел BIG-IP и возвращает результаты, считанные с устройства. Этот модуль включает аргумент, который заставит модуль ожидать выполнения определенного условия перед возвратом или вызовом таймаута, если условие не выполнено.
  • Этот модуль не является идемпотентным и никогда им не будет. Он предназначен как временная мера для удовлетворения требований автоматизации до тех пор, пока не будет разработан реальный модуль для конфигурации в соответствии с вашими потребностями.
  • Если вы используете этот модуль, вам следует также создать задачу для создания реального модуля, отвечающего вашим потребностям.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
chdir
строка
добавлен в 2.6
Изменить текущую директорию перед выполнением команды.
commands
сырой / обязательно
Команды, которые необходимо отправить на удаленное устройство BIG-IP через настроенного поставщика. Результат выполнения команды возвращается. Если аргумент wait_for предоставлен, модуль не возвращается до тех пор, пока условие не будет выполнено или количество попыток не истечёт.
Поддерживаются только tmsh команды. Если вы используете перенаправление или добавляете дополнительную логику, которая выходит за рамки tmsh (такие как grep, awk или другие оболочечные действия, не являющиеся tmsh), это поведение не поддерживается.
interval
целое число
По умолчанию:
1
Устанавливает интервал в секундах ожидания между повторениями команды. Если команда не соответствует заданному условию, интервал указывает, как долго ждать перед повторной попыткой.
match
строка
    Варианты:
  • любой
  • все ←
Аргумент match используется совместно с аргументом wait_for для указания политики сопоставления. Допустимые значения являются all или any. Если значение установлено в all, все условия в wait_for должны быть выполнены. Если значение установлено в any, должно быть выполнено только одно из значений.
provider
словарь
добавлен в 2.5
Объект словаря, содержащий детали подключения.
auth_provider
строка
Настраивает поставщика аутентификации для получения маркеров аутентификации с удаленного устройства.
Этот параметр используется при работе с устройствами BIG-IQ.
password
строка / обязательно
Пароль для учетной записи пользователя, используемой для подключения к BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_PASSWORD.

псевдонимы: pass, pwd
server
строка / обязательно
Хост BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_SERVER.
server_port
целое число
По умолчанию:
443
Порт сервера BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_SERVER_PORT.
ssh_keyfile
путь
Указывает файл SSH-ключа, используемый для аутентификации подключения к удаленному устройству. Этот аргумент используется только для транспортов cli.
Вы можете опустить этот параметр, установив переменную среды ANSIBLE_NET_SSH_KEYFILE.
timeout
целое число
Устанавливает таймаут в секундах для взаимодействия с сетевым устройством при подключении или отправке команд. Если таймаут превышен до завершения операции, модуль выдаст ошибку.
transport
строка
    Варианты:
  • cli
  • rest ←
Настраивает транспортное подключение для использования при подключении к удаленному устройству.
user
строка / обязательно
Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные привилегии на устройстве.
Вы можете опустить этот параметр, установив переменную среды F5_USER.
validate_certs
логическое значение
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не проверяются. Используйте это только на сайтах, контролируемых лично, с использованием самозаверяемых сертификатов.
Вы можете опустить этот параметр, установив переменную среды F5_VALIDATE_CERTS.
retries
целое число
По умолчанию:
10
Указывает количество попыток выполнения команды перед её признанием неудачной. Команда выполняется на целевом устройстве при каждой попытке и оценивается по условиям wait_for.
transport
- / обязательно
добавлен в 2.5
    Варианты:
  • rest ←
  • cli
Настраивает транспортное подключение для использования при подключении к удаленному устройству. Аргумент transport поддерживает подключение к устройству по протоколам cli (ssh) или rest.
wait_for
список
Указывает, что следует оценивать из выходных данных команды и какие условия применять. Этот аргумент заставит задачу ожидать выполнения конкретного условия до продвижения вперёд. Если условие не выполняется за указанное количество попыток, задача завершается неудачно. См. примеры.

псевдонимы: waitfor
warn
логическое значение
добавлен в 2.6
    Варианты:
  • нет
  • да ←
Выводить ли модулем предупреждения о неидемпотентности команды.
Обратите внимание, что разработчики F5 Ansible специально оставляют это включенным, чтобы обратить ваше внимание на то, что ваше использование этого модуля может быть более эффективным при использовании официальных модулей F5 Ansible. Этот модуль должен всегда использоваться в последнюю очередь.

Примечания

Примечание

  • Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks см. на сайте https://www.ansible.com/integrations/networks/f5.
  • Требуется версия программного обеспечения BIG-IP >= 12.
  • Модули F5 только изменяют текущую конфигурацию продукта F5. Чтобы убедиться, что конфигурация BIG-IP сохранится на диске, обязательно включите хотя бы одну задачу, использующую модуль bigip_config для сохранения текущей конфигурации. Обратитесь к документации модуля для правильного использования модуля для сохранения текущей конфигурации.

Примеры

- name: run show version on remote devices
  bigip_command:
    commands: show sys version
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  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
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  register: result
  delegate_to: localhost

- name: run multiple commands on remote nodes
  bigip_command:
    commands:
      - show sys version
      - list ltm virtual
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  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
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  register: result
  delegate_to: localhost

- name: tmsh prefixes will automatically be handled
  bigip_command:
    commands:
      - show sys version
      - tmsh list ltm virtual
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  delegate_to: localhost

- name: Delete all LTM nodes in Partition1, assuming no dependencies exist
  bigip_command:
    commands:
      - delete ltm node all
    chdir: Partition1
    provider:
      server: lb.mydomain.com
      password: secret
      user: admin
  delegate_to: localhost

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
failed_conditions
список
неудачные
Список условных выражений, которые завершились неудачей.

Пример:
['...', '...']
stdout
список
всегда
Набор ответов от команд.

Пример:
['...', '...']
stdout_lines
список
всегда
Значение stdout, разделенное на список.

Пример:
[['...', '...'], ['...'], ['...']]
warn
логическое
изменилось
Указывает, следует ли выводить предупреждения о командах изменения.

Пример:
True


Статус

  • В этом модуле гарантируются изменения интерфейса, совместимые со старыми версиями. [stableinterface]
  • Этот модуль поддерживается партнером Ansible. [certified]

Авторы

  • 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.9/modules/bigip_command_module.html

Spec-Zone.ru

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