Spec-Zone.ru › Ansible 2.4

sros_config - Управление конфигурацией устройства Nokia SR OS

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

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

Обзор

  • Конфигурации Nokia SR OS используют простой синтаксис с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации SR OS детерминированным способом.

Параметры

параметр обязательно значение по умолчанию выбор комментарии
after
нет
Упорядоченный набор команд для добавления в конец стека команд, если необходимо внести изменения. Подобно параметру before, это позволяет разработчику playbook добавить набор команд, которые будут выполнены после набора команд.
backup
(добавлен в 2.2)
нет
  • да
  • нет
Этот аргумент заставит модуль создать полную резервную копию текущей running-config удалённого устройства перед внесением любых изменений. Файл резервной копии записывается в папку backup в корневом каталоге playbook. Если папка не существует, она будет создана.
before
нет
Упорядоченный набор команд для добавления в стек команд, если необходимо внести изменения. Это позволяет разработчику playbook выполнить команды конфигурации до добавления любых изменений без влияния на сопоставление набора команд с системой.
config
(добавлен в 2.2)
нет
Аргумент config позволяет разработчику playbook предоставить базовая конфигурация, которая будет использоваться для проверки необходимых изменений конфигурации. Если этот аргумент указан, модуль не загрузит текущую конфигурацию удалённого узла.
defaults
(добавлен в 2.2)
нет
  • да
  • нет
Этот аргумент определяет, нужно ли собирать все значения по умолчанию при получении текущей конфигурации удалённого устройства. При включении модуль получит текущую конфигурацию, выполнив команду show running-config all.
псевдонимы: detail
force
(добавлен в 2.2)
нет
  • true
  • false
Аргумент force инструктирует модуль не учитывать текущую конфигурацию устройства. При установке в true, модуль загрузит содержимое src на устройство, не проверяя, уже ли оно настроено.
Обратите внимание, этот аргумент следует считать устаревшим. Для достижения эквивалентного результата используйте match=none, который является идемпотентным. Этот аргумент будет удалён в будущих версиях.
lines
нет
Упорядоченный набор команд, которые должны быть настроены в секции. Команды должны быть идентичны командам, найденным в текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. Аргумент lines поддерживает только текущие строки контекста. Смотрите ПРИМЕРЫ.
псевдонимы: commands
match
нет строка
  • строка
  • строго
  • точно
  • ничего
Указывает модулю способ сопоставления набора команд с текущей конфигурацией устройства. Если match установлено на строка, команды сопоставляются построчно. Если match установлено на строго, строки команд сопоставляются с учётом позиции. Если match установлено на точно, строки команд должны быть точным совпадением. И, наконец, если match установлено на ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства.
parents
нет
Упорядоченный набор родительских элементов, которые однозначно идентифицируют секцию, по которой должны проверяться команды. Если аргумент parents опущен, команды проверяются по набору команд верхнего уровня или глобальных команд.
provider
нет
Объект dict, содержащий детали подключения.
Объект словаря provider
параметр обязательно значение по умолчанию выбор комментарии
username
нет
Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_USERNAME.
host
да
Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта.
ssh_keyfile
нет
Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_SSH_KEYFILE.
timeout
нет 10
Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут превышен до завершения операции, модуль вернёт ошибку.
password
нет
Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_PASSWORD.
port
нет 22
Указывает порт, используемый при установлении соединения с удалённым устройством.
replace
нет строка
  • строка
  • блок
Указывает модулю способ выполнения конфигурации на устройстве. Если replace установлено на строка, изменённые строки отправляются устройству в режиме конфигурации. Если replace установлено на блок, весь блок команд отправляется устройству в режиме конфигурации, если какая-либо строка не верна.
save
(добавлен в 2.2)
нет
  • да
  • нет
Аргумент save инструктирует модуль сохранить текущую конфигурацию в конфигурацию по умолчанию по завершении работы модуля. Если указан режим проверки, этот аргумент игнорируется.
src
(добавлен в 2.2)
нет
Указывает путь к исходному файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корня playbook или роли. Этот аргумент взаимоисключает lines.

Примеры

# 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: enable rollback location
  sros_config:
    lines: configure system rollback rollback-location "cf3:/ansible"
    provider: "{{ cli }}"

- name: set system name to {{ inventory_hostname }} using one line
  sros_config:
    lines:
        - configure system name "{{ inventory_hostname }}"
    provider: "{{ cli }}"

- name: set system name to {{ inventory_hostname }} using parents
  sros_config:
    lines:
        - 'name "{{ inventory_hostname }}"'
    parents:
        - configure
        - system
    provider: "{{ cli }}"
    backup: yes

- name: load config from file
  sros_config:
      src: "{{ inventory_hostname }}.cfg"
      provider: "{{ cli }}"
      save: yes

- name: invalid use of lines
  sros_config:
    lines:
      - service
      -     vpls 1000 customer foo 1 create
      -         description "invalid lines example"
    provider: "{{ cli }}"

- name: valid use of lines
  sros_config:
    lines:
      - description "invalid lines example"
    parents:
      - service
      - vpls 1000 customer foo 1 create
    provider: "{{ cli }}"

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

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

имя описание возвращается тип пример
backup_path
Полный путь к файлу резервной копии
при backup = да строка /playbooks/ansible/backup/sros_config.2016-07-16@22:28:34
commands
Набор команд, которые будут отправлены на удалённое устройство
всегда список ['config system name "sros01"']
updates
Набор команд, которые будут отправлены на удалённое устройство
всегда список ['config system name "sros01"']

Статус

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

Для получения помощи в разработке модулей, если вам это интересно, прочитайте Информация о сообществе и участие, Тестирование 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/sros_config_module.html

Spec-Zone.ru

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