Spec-Zone.ru › Ansible 2.8

nos_config – Управление разделами конфигурации Extreme Networks NOS

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

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

Описание

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
after
-
Упорядоченный набор команд, которые будут добавлены в конец стека команд, если требуется внести изменения. Так же, как и с параметром before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд.
backup
boolean
    Варианты:
  • нет ←
  • да
Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением каких-либо изменений. Если значение backup_options не указано, то резервная копия записывается в папку backup в корневой директории плейбука. Если папка не существует, она создается.
backup_options
dictionary
добавлено в 2.8
Это объект типа dict, содержащий настраиваемые параметры, относящиеся к пути к резервной копии файла. Значение этого параметра считывается только тогда, когда backup установлено в да. Если backup установлено в нет, этот параметр будет проигнорирован.
dir_path
path
Этот параметр предоставляет путь, заканчивающийся именем директории, в которой будет храниться резервная конфигурация. Если директория не существует, она будет создана. Имя файла либо совпадает со значением filename, либо используется имя по умолчанию, как описано в описании параметров filename. Если значение пути не указано, то будет создана папка backup в текущей рабочей директории, и резервная конфигурация будет скопирована в filename внутри папки backup.
filename
-
Имя файла, используемого для хранения резервной копии конфигурации. Если имя файла не указано, оно генерируется на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время>.
before
-
Упорядоченный набор команд, которые будут добавлены в начало стека команд, если требуется внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации перед внесением изменений, не влияя на то, как набор команд сопоставляется с системой.
diff_against
-
    Варианты:
  • текущая
  • запланированная
При использовании аргумента командной строки ansible-playbook --diff модуль может генерировать различия с различными источниками.
Когда этот параметр настроен как запланированная, модуль вернёт разницу между текущей конфигурацией и конфигурацией, предоставленной в аргументе intended_config.
Когда этот параметр настроен как текущая, модуль вернёт разницу между текущей конфигурацией до и после любых изменений, внесённых в конфигурацию устройства.
diff_ignore_lines
-
Используйте этот аргумент, чтобы указать одну или несколько строк, которые должны быть пропущены при сравнении. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк.
intended_config
-
Параметр intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной конфигурации против текущей. Этот аргумент не будет изменять какие-либо настройки на удаленном устройстве и строго используется для проверки соответствия конфигурации текущего устройства заданной конфигурации. При указании этого аргумента необходимо также изменить значение diff_against и установить его в запланированная.
lines
-
Упорядоченный набор команд, которые должны быть настроены в секции. Команды должны быть абсолютно такими же, как и в текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства.

псевдонимы: команды
match
-
    Варианты:
  • строка ←
  • строго
  • точно
  • ничего
Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен в строка, команды сравниваются построчно. Если match установлен в строго, строки команд сравниваются относительно позиции. Если match установлен в точно, строки команд должны точно совпадать. Наконец, если match установлен в ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства.
multiline_delimiter
-
По умолчанию:
"@"
Этот аргумент используется при отправке многострочного элемента конфигурации на устройство NOS. Он определяет символ, используемый в качестве разделителя. Это относится только к действию конфигурации.
parents
-
Упорядоченный набор родительских элементов, которые однозначно идентифицируют секцию или иерархию, с которой должны быть проверены команды. Если аргумент parents опущен, команды проверяются с учётом набора команд верхнего уровня или глобальных команд.
replace
-
    Варианты:
  • строка ←
  • блок
Указывает модулю способ выполнения конфигурации на устройстве. Если параметр replace установлен в строка, то изменённые строки отправляются на устройство в режиме конфигурации. Если параметр replace установлен в блок, то весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка неверна.
running_config
-
По умолчанию модуль подключается к удалённому устройству и извлекает текущую рабочую конфигурацию для использования в качестве основы для сравнения с содержимым источника. В некоторых случаях нежелательно, чтобы задача получала текущую рабочую конфигурацию для каждой задачи в плейбуке. Параметр running_config позволяет разработчику передать конфигурацию для использования в качестве базовой конфигурации для сравнения.

псевдонимы: конфигурация
src
-
Указывает путь к источнику файла, содержащего конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корня плейбука или роли. Этот аргумент взаимоисключает аргументы lines и parents.

Примечания

Примечание

  • Проверено на NOS 7.2.0

Примеры

- name: configure top level configuration
  nos_config:
    lines: logging raslog console INFO

- name: configure interface settings
  nos_config:
    lines:
      - description test interface
      - ip address 172.31.1.1/24
    parents:
      - interface TenGigabitEthernet 104/0/1

- name: configure multiple interfaces
  nos_config:
    lines:
      - lacp timeout long
    parents: "{{ item }}"
  with_items:
    - interface TenGigabitEthernet 104/0/1
    - interface TenGigabitEthernet 104/0/2

- name: load new acl into device
  nos_config:
    lines:
      - seq 10 permit ip host 1.1.1.1 any log
      - seq 20 permit ip host 2.2.2.2 any log
      - seq 30 permit ip host 3.3.3.3 any log
      - seq 40 permit ip host 4.4.4.4 any log
      - seq 50 permit ip host 5.5.5.5 any log
    parents: ip access-list extended test
    before: no ip access-list extended test
    match: exact

- name: check the running-config against master config
  nos_config:
    diff_against: intended
    intended_config: "{{ lookup('file', 'master.cfg') }}"

- name: configurable backup path
  nos_config:
    lines: logging raslog console INFO
    backup: yes
    backup_options:
      filename: backup.cfg
      dir_path: /home/user

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

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

Ключ Возвращаемое значение Описание
backup_path
строка
при backup = да
Полный путь к резервному файлу

Пример:
/playbooks/ansible/backup/nos_config.2018-02-12@18:26:34
commands
список
всегда
Набор команд, которые будут отправлены на удалённое устройство

Пример:
['switch-attributes hostname foo', 'router ospf', 'area 0']
updates
список
всегда
Набор команд, которые будут отправлены на удалённое устройство

Пример:
['switch-attributes hostname foo', 'router ospf', 'area 0']


Статус

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

Авторы

  • Линдси Хилл (@LindsayHill)

Подсказка

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

© 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/nos_config_module.html

Spec-Zone.ru

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