sros_command - Выполнение команд на удалённых устройствах с SR OS Nokia
Новая версия с 2.2.
Описание
- Отправляет произвольные команды узлу SR OS и возвращает результаты, считанные с устройства. Этот модуль включает аргумент, который заставит модуль ожидать определённого условия перед возвратом или выбросит ошибку по таймауту, если условие не будет выполнено.
- Этот модуль не поддерживает выполнение команд в режиме конфигурации. Для конфигурации устройств SR OS используйте sros_config.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| commands обязательно | Список команд для отправки на удалённое устройство SR OS через настроенный поставщик. Возвращается результат выполнения команды. Если указан аргумент wait_for, модуль не возвращает значение, пока условие не будет выполнено или не истечёт количество попыток. | ||
| interval | По умолчанию: 1 | Устанавливает интервал в секундах ожидания между повторными попытками выполнения команды. Если команда не удовлетворяет указанным условиям, интервал определяет время ожидания перед повторной попыткой. | |
| match |
| Аргумент match используется совместно с аргументом wait_for для указания политики соответствия. Допустимые значения — all или any. Если значение установлено на all, должны выполняться все условия в wait_for. Если значение установлено на any, должно выполняться хотя бы одно условие. | |
| provider | Объект типа dict, содержащий данные подключения. | ||
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному протоколу. Значение host используется как адрес назначения для протокола. | ||
| port | По умолчанию: 22 | Указывает порт, используемый при создании соединения с удалённым устройством. | |
| username | Устанавливает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| timeout | По умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут истечёт до завершения операции, модуль вернёт ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| retries | По умолчанию: 10 | Указывает количество попыток выполнения команды перед её признанием неудачной. Команда выполняется на целевом устройстве при каждой попытке и оценивается по условиям wait_for. | |
| wait_for | Список условий, которые должны быть проверены на основе вывода команды. Задача будет ожидать выполнения каждого условия, прежде чем переходить к следующему. Если условие не выполняется в течение заданного числа попыток, задача завершается ошибкой. См. примеры. псевдонимы: waitfor | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами Nokia SR OS см. на странице https://www.ansible.com/ansible-nokia.
Примеры
# Note: examples below use the following provider dict to handle
# transport and authentication to the node.
---
vars:
cli:
host: "{{ inventory_hostname }}"
username: admin
password: admin
transport: cli
---
tasks:
- name: run show version on remote devices
sros_command:
commands: show version
provider: "{{ cli }}"
- name: run show version and check to see if output contains sros
sros_command:
commands: show version
wait_for: result[0] contains sros
provider: "{{ cli }}"
- name: run multiple commands on remote nodes
sros_command:
commands:
- show version
- show port detail
provider: "{{ cli }}"
- name: run multiple commands and evaluate the output
sros_command:
commands:
- show version
- show port detail
wait_for:
- result[0] contains TiMOS-B-14.0.R4
provider: "{{ cli }}"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| failed_conditions список | ошибка | Список условий, которые не были выполнены Пример: ['...', '...'] |
| stdout список | всегда, кроме ошибок низкого уровня (например, плагина действия) | Набор ответов от команд Пример: ['...', '...'] |
| stdout_lines список | всегда, кроме ошибок низкого уровня (например, плагина действия) | Значение stdout, разделенное на список Пример: [['...', '...'], ['...'], ['...']] |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- Пётр Спрыгада (@privateip)
Подсказка
Если вы обнаружите проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/sros_command_module.html