Spec-Zone.ru › Ansible 2.4

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

Новое в версии 2.1.

  • Описание
  • Параметры
  • Примеры
  • Значения возврата
    • Статус
    • Информация о техническом обслуживании

Описание

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

Параметры

параметр обязательный значение по умолчанию возможные значения комментарии
auth_pass
(добавлено в 2.4.4)
нет нет
Указывает пароль, который нужно использовать для входа в привилегированный режим на удалённом устройстве. Если authorize имеет значение false, то этот аргумент не действует. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS.
authorize
(добавлено в 2.4.4)
нет
  • да
  • нет
Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE.
commands
да
Команды, которые нужно отправить на удалённое устройство NXOS через настроенного поставщика. Результирующий вывод команды возвращается. Если указан аргумент wait_for, модуль не возвращается, пока условие не будет выполнено или не истечёт время ожидания.
Аргумент commands также принимает альтернативную форму, которая позволяет использовать сложные значения для указания команды для выполнения и формата вывода. Это можно сделать для каждой команды. Сложный аргумент поддерживает ключевые слова command и output, где command — команда для выполнения, а output — одно из 'text' или 'json'.
host
да
Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта.
interval
нет 1
Настраивает интервал в секундах для ожидания между повторами команды. Если команда не удовлетворяет указанному условию, интервал указывает, как долго ждать, прежде чем попробовать команду снова.
match
(добавлено в 2.2)
нет all
Аргумент match используется совместно с аргументом wait_for для указания политики сопоставления. Допустимые значения — all или any. Если значение установлено в all, все условные операторы в wait_for должны быть выполнены. Если значение установлено в any, должно быть выполнено только одно из условий.
password
нет
Указывает пароль для аутентификации соединения с удалённым устройством. Это общий аргумент, используемый для транспортов cli или nxapi. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD.
port
нет 0 (использовать общий порт)
Указывает порт, который нужно использовать при построении соединения с удалённым устройством. Это значение относится к транспорту cli или nxapi. Значение порта по умолчанию соответствует общему порту соответствующего транспорта, если он не указан в задаче. (cli=22, http=80, https=443).
provider
нет
Удобный метод, который позволяет передавать все аргументы nxos в виде объекта dict. Все ограничения (обязательность, допустимые значения и т. д.) должны быть выполнены либо отдельными аргументами, либо значениями в этом dict.
retries
нет 10
Указывает количество попыток выполнения команды, прежде чем она будет считаться неудачной. Команда выполняется на целевом устройстве при каждой попытке и оценивается по условным операторам wait_for.
ssh_keyfile
нет
Указывает SSH-ключ для аутентификации соединения с удалённым устройством. Этот аргумент используется только для транспорта cli. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE.
timeout
(добавлено в 2.3)
нет 10
Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут превышен до завершения операции, модуль выдаст ошибку. NX-API может медленно возвращать результаты при выполнении длительных команд (sh mac, sh bgp и т. д.).
transport
да cli
Настраивает транспортное соединение для подключения к удалённому устройству. Аргумент transport поддерживает подключение к устройству через cli (ssh) или nxapi.
use_ssl
нет
  • да
  • нет
Настраивает transport для использования SSL, если установлено в true только в случае, если transport=nxapi, в противном случае это значение игнорируется.
username
нет
Настраивает имя пользователя для аутентификации соединения с удалённым устройством. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME.
validate_certs
нет
  • да
  • нет
Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах, контролируемых лично, с самозаверенными сертификатами. Если аргумент transport не nxapi, это значение игнорируется.
wait_for
(добавлено в 2.2)
нет
Указывает, что нужно оценить из вывода команды и какие условные операторы применить. Этот аргумент заставит задачу ожидать выполнения определённого условия, прежде чем продолжить. Если условие не выполнено до истечения заданного количества попыток, задача завершается ошибкой. См. примеры.
псевдонимы: waitfor

Примеры

# 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

---
- name: run show version on remote devices
  nxos_command:
    commands: show version
    provider: "{{ cli }}"

- name: run show version and check to see if output contains Cisco
  nxos_command:
    commands: show version
    wait_for: result[0] contains Cisco
    provider: "{{ cli }}"

- name: run multiple commands on remote nodes
  nxos_command:
    commands:
      - show version
      - show interfaces
    provider: "{{ cli }}"

- name: run multiple commands and evaluate the output
  nxos_command:
    commands:
      - show version
      - show interfaces
    wait_for:
      - result[0] contains Cisco
      - result[1] contains loopback0
    provider: "{{ cli }}"

- name: run commands and specify the output format
  nxos_command:
    commands:
      - command: show version
        output: json
    provider: "{{ cli }}"

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

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

имя описание возвращаемое тип пример
failed_conditions
Список условий, которые не выполнены
неудача список ['...', '...']
stdout
Набор ответов от команд
всегда, кроме низкоуровневых ошибок (например, ошибок плагина действия) список ['...', '...']
stdout_lines
Значение stdout, разделенное на список
всегда, кроме низкоуровневых ошибок (например, ошибок плагина действия) список [['...', '...'], ['...'], ['...']]

Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратную совместимость.

Информация о техническом обслуживании

Дополнительную информацию о поддержке данного модуля компанией 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/nxos_command_module.html

Spec-Zone.ru

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