junos_command - Выполнение произвольных команд на устройстве Juniper JUNOS
Новое в версии 2.1.
- Описание
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Описание
- Отправляет произвольный набор команд на узел JUNOS и возвращает результаты, считанные с устройства. Этот модуль включает аргумент, который заставит модуль ожидать определённого условия перед возвратом или вызовет таймаут, если условие не выполнено.
Требования (к хосту, на котором выполняется модуль)
- jxmlease
- ncclient (>=v0.5.2)
Параметры
| параметр | обязательно | по умолчанию | выбор | комментарии | |||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| commands | нет | Команды для отправки на удалённое устройство junos через настроенный поставщик. Результирующий вывод команды возвращается. Если задан аргумент wait_for, модуль не возвращается, пока условие не выполнится или не будет превышено количество повторных попыток. | |||||||||||||||||||||||||||||||||||||
| display (добавлен в 2.3)
| нет | зависит от входного аргумента I(rpcs) или I(commands) |
| Схема кодирования для сериализации вывода с устройства. Это определяет, как правильно интерпретировать вывод и применять условные пути к набору результатов. Для аргумента rpcs значение по умолчанию для display — xml, а для аргумента commands — text. Значение set применимо только для извлечения конфигурации с устройства.псевдонимы: формат, вывод | |||||||||||||||||||||||||||||||||||
| interval | нет | 1 | Настраивает интервал в секундах ожидания между повторными попытками выполнения команды. Если команда не удовлетворяет указанному условию, интервал определяет, как долго ждать перед повторной попыткой выполнения команды. | ||||||||||||||||||||||||||||||||||||
| match (добавлен в 2.2)
| нет | all |
| Аргумент match используется совместно с аргументом wait_for для указания политики сопоставления. Допустимые значения — all или any. Если значение установлено на all, должны быть выполнены все условия в wait_for. Если значение установлено на any, должно быть выполнено только одно из условий. | |||||||||||||||||||||||||||||||||||
| provider | нет | Объект типа dict, содержащий данные подключения. |
|||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||
| retries | нет | 10 | Указывает количество попыток выполнения команды перед её признанием неудачной. Команда выполняется на целевом устройстве при каждой попытке и оценивается по условиям wait_for. | ||||||||||||||||||||||||||||||||||||
| rpcs (добавлен в 2.3)
| нет | Аргумент rpcs принимает список RPC для выполнения в рамках сессии netconf, а результаты выполнения RPC возвращаются в словарь результатов модуля в playbook. | |||||||||||||||||||||||||||||||||||||
| wait_for (добавлен в 2.2)
| нет | Определяет, что оценивать из вывода команды и какие условия применять. Этот аргумент заставляет задачу ожидать выполнения определённого условия перед продолжением. Если условие не выполняется в течение заданного количества попыток, задача завершается с ошибкой. См. примеры. псевдонимы: waitfor | |||||||||||||||||||||||||||||||||||||
Примеры
- name: run show version on remote devices
junos_command:
commands: show version
- name: run show version and check to see if output contains Juniper
junos_command:
commands: show version
wait_for: result[0] contains Juniper
- name: run multiple commands on remote nodes
junos_command:
commands:
- show version
- show interfaces
- name: run multiple commands and evaluate the output
junos_command:
commands:
- show version
- show interfaces
wait_for:
- result[0] contains Juniper
- result[1] contains Loopback0
- name: run commands and specify the output format
junos_command:
commands: show version
display: json
- name: run rpc on the remote device
junos_command:
commands: show configuration
display: set
- name: run rpc on the remote device
junos_command:
rpcs: get-software-information
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для этого модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| failed_conditions | Список условий, которые не выполнены | неуспех | список | ['...', '...'] |
| output | Набор преобразованных данных xml в формате json из ответов команд | Если I(display) в формате C(xml) | список | ['...', '...'] |
| stdout | Набор ответов от команд | всегда, кроме ошибок низкого уровня (таких как плагин действия) | список | ['...', '...'] |
| stdout_lines | Значение stdout, разделенное на список | всегда, кроме ошибок низкого уровня (таких как плагин действия) | список | [['...', '...'], ['...'], ['...']] |
Примечания
Примечание
- Для работы этого модуля на управляемом удалённом устройстве необходимо включить системную службу netconf.
- Тестировалось на vSRX JUNOS версии 15.1X49-D15.4, vqfx-10000 JUNOS Версия 15.1X53-D60.4.
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Информация о техническом обслуживании
Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этом knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>
Для получения помощи в разработке модулей, если это необходимо, прочитайте Информация о сообществе и участие, Тестирование 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/junos_command_module.html