Spec-Zone.ru › Ansible 2.8

netconf_rpc – Выполнение операций с устройствами сети, поддерживающими NETCONF

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

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Обзор

  • NETCONF — это протокол управления сетью, разработанный и стандартизированный IETF. Он описан в RFC 6241.
  • Этот модуль позволяет пользователю выполнять запросы NETCONF RPC, определенные стандартами IETF RFC, а также собственные запросы.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • ncclient (>=v0.5.2)
  • jxmlease

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
content
-
Этот аргумент указывает необязательное содержимое запроса (все атрибуты RPC). Значение content может быть предоставлено как строка в формате XML или как словарь.
display
-
    Варианты:
  • json
  • pretty
  • xml
Схема кодирования для сериализации выходных данных с устройства. Параметр json сериализует выходные данные как данные JSON. Если значение параметра json, требуется, чтобы на контрольном узле был установлен jxmlease. Параметр pretty похож на полученный XML-ответ, но использует удобочитаемый формат (пробелы, новые строки). Значение параметра xml аналогично полученному XML-ответу, но удаляет все XML-пространства имен.
rpc
-
Этот аргумент указывает запрос (имя операции), который необходимо выполнить на удаленном устройстве с поддержкой NETCONF.
xmlns
-
Для операций NETCONF, не определенных в rfc6241, обычно необходимо установить соответствующее XML-пространство имен. В случае, если параметр request еще не предоставлен в формате XML, пространство имен можно определить с помощью параметра xmlns.

Примечания

Примечание

  • Для этого модуля требуется, чтобы служба NETCONF была включена на удаленном управляемом устройстве.
  • Этот модуль поддерживает использование connection=netconf
  • Для выполнения запросов get-config, get или edit-config рекомендуется использовать модули Ansible netconf_get и netconf_config.
  • Этот модуль поддерживается на ansible_network_os сетевых платформах. Подробную информацию см. в разделе Параметры сетевых платформ.

Примеры

- name: lock candidate
  netconf_rpc:
    rpc: lock
    content:
      target:
        candidate:

- name: unlock candidate
  netconf_rpc:
    rpc: unlock
    xmlns: "urn:ietf:params:xml:ns:netconf:base:1.0"
    content: "{'target': {'candidate': None}}"

- name: discard changes
  netconf_rpc:
    rpc: discard-changes

- name: get-schema
  netconf_rpc:
    rpc: get-schema
    xmlns: urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring
    content:
      identifier: ietf-netconf
      version: "2011-06-01"

- name: copy running to startup
  netconf_rpc:
    rpc: copy-config
    content:
      source:
        running:
      target:
        startup:

- name: get schema list with JSON output
  netconf_rpc:
    rpc: get
    content: |
      <filter>
        <netconf-state xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring">
          <schemas/>
        </netconf-state>
      </filter>
    display: json

- name: get schema using XML request
  netconf_rpc:
    rpc: "get-schema"
    xmlns: "urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring"
    content: |
      <identifier>ietf-netconf-monitoring</identifier>
      <version>2010-10-04</version>
    display: json

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

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

Ключ Возвращенное значение Описание
output
сложный
если формат отображения выбран как JSON, он возвращается как тип dict, если формат отображения xml или pretty, он возвращается как строка, за исключением ошибок низкого уровня (например, плагин действия).
В зависимости от значения параметра display, возвращается либо набор преобразованного XML в формат JSON (тип dict) из ответа RPC, либо красивый XML-строковый ответ (удобный для чтения), либо ответ с удаленными из XML-строки именами пространств.

formatted_output
-

stdout
строка
всегда, за исключением ошибок низкого уровня (например, плагин действия)
Необработанная XML-строка, содержащая данные конфигурации или состояния, полученные из базовой библиотеки ncclient.

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

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


Статус

  • Этот модуль не гарантирует обратную совместимость интерфейса. [предварительная версия]
  • Этот модуль поддерживается командой Ansible Network. [сетевой]

Поддержка Red Hat

Дополнительную информацию о поддержке Red Hat этого модуля можно найти в этой статье базы знаний Red Hat: Статья базы знаний Red Hat.

Авторы

  • Ganesh Nalawade (@ganeshrn)
  • Sven Wisotzky (@wisotzky)

Подсказка

Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/netconf_rpc_module.html

Spec-Zone.ru

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