Spec-Zone.ru › Ansible 2.4

ios_command - Выполнение команд на удалённых устройствах с Cisco IOS

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

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

Описание

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

Параметры

параметр обязательный значение по умолчанию варианты комментарии
auth_pass
нет нет
Указывает пароль, используемый при необходимости для входа в привилегированный режим на удалённом устройстве. Если authorize ложно, то этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS.
authorize
нет
  • да
  • нет
Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE.
commands
да
Список команд, которые необходимо отправить на удалённое устройство IOS через настроенного поставщика. Результирующий вывод команды возвращается. Если аргумент wait_for предоставлен, модуль не возвращается до тех пор, пока условие не будет выполнено или не истечёт время ожидания.
interval
нет 1
Настраивает интервал в секундах ожидания между повторными попытками выполнения команды. Если команда не удовлетворяет заданным условиям, интервал указывает, сколько времени ждать, прежде чем попытаться выполнить команду снова.
match
(добавлен в 2.2)
нет all
  • any
  • all
Аргумент match используется совместно с аргументом wait_for для задания политики соответствия. Допустимые значения — all или any. Если значение установлено в all, все условия в wait_for должны быть выполнены. Если значение установлено в any, достаточно выполнения только одного из них.
provider
нет
Объект словаря, содержащий данные подключения.
Объект словаря provider
параметр обязательный значение по умолчанию варианты комментарии
username
нет
Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME.
authorize
нет
  • да
  • нет
Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE.
ssh_keyfile
нет
Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE.
auth_pass
нет нет
Указывает пароль, используемый при необходимости для входа в привилегированный режим на удалённом устройстве. Если authorize ложно, то этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS.
host
да
Указывает имя хоста DNS или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта.
timeout
нет 10
Указывает время ожидания в секундах для связи с сетевым устройством для подключения или отправки команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку.
password
нет
Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD.
port
нет 22
Указывает порт для подключения к удалённому устройству.
retries
нет 10
Указывает количество попыток выполнения команды, прежде чем она будет считаться неудачной. Команда выполняется на целевом устройстве при каждой попытке и проверяется на соответствие условиям wait_for.
wait_for
(добавлен в 2.2)
нет
Список условий для проверки по отношению к выводу команды. Задача будет ожидать, пока каждое условие не станет истинным, прежде чем продолжить. Если условие не становится истинным в течение заданного количества попыток, задача завершается с ошибкой. См. примеры.
псевдонимы: waitfor

Примеры

tasks:
  - name: run show version on remote devices
    ios_command:
      commands: show version

  - name: run show version and check to see if output contains IOS
    ios_command:
      commands: show version
      wait_for: result[0] contains IOS

  - name: run multiple commands on remote nodes
    ios_command:
      commands:
        - show version
        - show interfaces

  - name: run multiple commands and evaluate the output
    ios_command:
      commands:
        - show version
        - show interfaces
      wait_for:
        - result[0] contains IOS
        - result[1] contains Loopback0

Возвращаемые значения

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

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

Примечания

Примечание

  • Проверено на IOS 15.6

Статус

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

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

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

Spec-Zone.ru

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