Spec-Zone.ru › Ansible 2.11

cisco.nxos.nxos_command – Выполнение произвольной команды на устройствах Cisco NXOS

Примечание

Этот плагин входит в коллекцию cisco.nxos (версия 1.4.0).

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

Для использования в плейбуке укажите: cisco.nxos.nxos_command.

Новое в версии 1.0.0: модуля cisco.nxos

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Описание

  • Отправляет произвольную команду узлу NXOS и возвращает результаты, считанные с устройства. В этом модуле есть аргумент, который заставит модуль ожидать выполнения определенного условия перед возвратом или истечением времени ожидания, если условие не выполнено.

Примечание

Этот модуль имеет соответствующий плагин действий.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
commands
список / элементы=сырые / обязательный
Команды, которые необходимо отправить удаленному устройству NXOS. Результирующий вывод команды возвращается. Если указан аргумент wait_for, модуль не возвращается до тех пор, пока условие не будет выполнено или не истечёт лимит повторных попыток.
Аргумент commands также принимает альтернативную форму, которая позволяет использовать сложные значения, определяющие команду для выполнения и формат возвращаемого вывода. Это можно сделать для каждой команды по отдельности. Сложный аргумент поддерживает ключевые слова command и output, где command — это команда для выполнения, а output — это одно из 'text' или 'json'.
Если команда, отправленная устройству, требует ответа на запрос, можно передать словарь, содержащий команду, ответ и запрос. Общие ответы — 'y' или «\r» (возврат каретки, должен быть в двойных кавычках). См. примеры.
interval
целое число
По умолчанию:
1
Устанавливает интервал в секундах для ожидания между попытками повторного выполнения команды. Если команда не удовлетворяет заданным условиям, интервал определяет, как долго ждать перед повторной попыткой выполнения.
match
строка
    Варианты:
  • any
  • all ←
Аргумент match используется совместно с аргументом wait_for для определения политики соответствия. Допустимые значения — all или any. Если значение установлено на all, все условия в wait_for должны быть выполнены. Если значение установлено на any, должно быть выполнено только одно из условий.
provider
словарь
Устарело
Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli.
Начиная с Ansible 2.6, рекомендуется использовать connection: httpapi для NX-API.
Этот параметр будет удален в релизе после 2022-06-01.
Дополнительная информация приведена в руководстве NXOS Platform Options.
Объект словаря, содержащий данные подключения.
auth_pass
строка
Указывает пароль для использования при входе в привилегированный режим на удаленном устройстве. Если authorize равно false, этот аргумент не имеет значения. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTH_PASS.
authorize
булево
    Варианты:
  • no ←
  • yes
Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE.
host
строка
Указывает имя хоста DNS или адрес для подключения к удаленному устройству через указанный транспорт. Значение параметра host используется в качестве адреса назначения для транспорта.
password
строка
Указывает пароль для аутентификации подключения к удаленному устройству. Этот параметр обычно используется для транспортов cli или nxapi. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD.
port
целое число
Указывает порт для создания подключения к удаленному устройству. Это значение относится к cli или nxapi. Значение порта по умолчанию соответствует обычному порту для соответствующего транспорта, если в задаче не указано другое значение (cli=22, http=80, https=443).
ssh_keyfile
строка
Указывает SSH-ключ для аутентификации подключения к удаленному устройству. Этот параметр используется только для транспорта cli. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE.
timeout
целое число
Устанавливает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истекает до завершения операции, модуль возвращает ошибку. NX-API может медленно возвращать результат при длительных командах (sh mac, sh bgp и т.д.).
transport
строка
    Варианты:
  • cli ←
  • nxapi
Устанавливает транспортное соединение для подключения к удаленному устройству. Параметр transport поддерживает подключение к устройству по протоколам cli (ssh) или nxapi.
use_proxy
булево
    Варианты:
  • no
  • yes ←
Если no, переменные среды http_proxy и https_proxy будут проигнорированы.
use_ssl
булево
    Варианты:
  • no ←
  • yes
Устанавливает использование SSL для transport, если значение равно yes, только когда transport=nxapi, в противном случае это значение игнорируется.
username
строка
Указывает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME.
validate_certs
булево
    Варианты:
  • no ←
  • yes
Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах, контролируемых лично, с самозаверяющимися сертификатами. Если транспорт не равен nxapi, это значение игнорируется.
retries
целое число
По умолчанию:
10
Указывает количество попыток выполнения команды перед её признанием неудачной. Команда выполняется на целевом устройстве при каждой попытке и проверяется на соответствие условиям wait_for.
wait_for
список / элементы=строка
Указывает, что оценивать из вывода команды и какие условия применять. Этот аргумент заставит задачу ожидать выполнения определённого условия перед продолжением. Если условие не выполнится за установленное количество попыток, задача завершится с ошибкой. См. примеры.

псевдонимы: waitfor

Примечания

Примечание

  • Сведения об использовании CLI и NX-API см. в руководстве NXOS Platform Options
  • Дополнительная информация об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
  • Дополнительная информация об использовании Ansible для управления устройствами Cisco приведена на странице интеграции Cisco.

Примеры

- name: run show version on remote devices
  cisco.nxos.nxos_command:
    commands: show version

- name: run show version and check to see if output contains Cisco
  cisco.nxos.nxos_command:
    commands: show version
    wait_for: result[0] contains Cisco

- name: run multiple commands on remote nodes
  cisco.nxos.nxos_command:
    commands:
    - show version
    - show interfaces

- name: run multiple commands and evaluate the output
  cisco.nxos.nxos_command:
    commands:
    - show version
    - show interfaces
    wait_for:
    - result[0] contains Cisco
    - result[1] contains loopback0

- name: run commands and specify the output format
  cisco.nxos.nxos_command:
    commands:
    - command: show version
      output: json

- name: run commands that require answering a prompt
  cisco.nxos.nxos_command:
    commands:
    - configure terminal
    - command: no feature npv
      prompt: Do you want to continue
      answer: y

Значения возврата

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

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

Пример:
['...', '...']
stdout
список / элементы=строка
всегда, за исключением ошибок низкого уровня (таких как плагин действий)
Набор ответов от команд

Пример:
['...', '...']
stdout_lines
список / элементы=строка
всегда, за исключением ошибок низкого уровня (таких как плагин действий)
Значение stdout, разделенное на список

Пример:
[['...', '...'], ['...'], ['...']]


Авторы

  • Питер Спригада (@privateip)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/nxos/nxos_command_module.html

Spec-Zone.ru

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