Spec-Zone.ru › Ansible 2.10

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

Примечание

Этот плагин входит в коллекцию f5networks.f5_modules (версия 1.6.0).

Для его установки используйте: ansible-galaxy collection install f5networks.f5_modules

Чтобы использовать его в книге задач, укажите: f5networks.f5_modules.bigip_command

Новое в версии 1.0.0: модуля f5networks.f5_modules

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
chdir
строка
Изменить текущую директорию перед выполнением команды.
commands
сырые данные / обязательный
Команды, которые необходимо отправить на удаленное устройство BIG-IP через настроенный поставщик. Результирующий вывод команды возвращается. Если аргумент wait_for указан, модуль не возвращается, пока условие не будет выполнено или не истечёт время ожидания.
Поддерживаются только tmsh команды. Если вы используете перенаправление или добавляете дополнительную логику, выходящую за рамки tmsh (например, grep, awk или другую shell-логику, которая не является tmsh), это поведение не поддерживается.
interval
целое число
По умолчанию:
1
Настраивает интервал в секундах для ожидания между повторами команды. Если команда не удовлетворяет указанному условию, интервал определяет, сколько времени нужно подождать, прежде чем повторить её выполнение.
match
строка
    Варианты:
  • любой
  • все ←
Аргумент match используется в сочетании с аргументом wait_for для указания политики соответствия. Допустимые значения — all или any. Если значение установлено на all, все условия в wait_for должны быть выполнены. Если значение установлено на any, должно быть выполнено только одно из условий.
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
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.
wait_for
список / элементы=строка
Указывает, что необходимо оценить из вывода команды и какие условия применить. Этот аргумент заставит задачу подождать, пока определённое условие не станет истинным, прежде чем продолжить. Если условие не станет истинным за указанное количество попыток, задача завершается ошибкой. См. примеры.

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

Примечания

Примечание

  • При запуске этого модуля в среде HA через SSH-соединение и использовании роли, отличной от admin или root, вы можете увидеть статус Change Pending, даже если вы не внесли никаких изменений. Это отслеживается с помощью ID429869.
  • Для получения дополнительной информации об использовании Ansible для управления устройствами F5 Networks см. https://www.ansible.com/integrations/networks/f5.
  • Требуется версия ПО BIG-IP >= 12.
  • Модули F5 только манипулируют текущей конфигурацией продукта F5. Чтобы убедиться, что конфигурация BIG-IP сохраняется на диске, обязательно включите по крайней мере одну задачу, которая использует модуль f5networks.f5_modules.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


Авторы

  • 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_command_module.html

Spec-Zone.ru

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