exos_config – Управление разделами конфигурации Extreme Networks EXOS
Новое в версии 2.7.
Описание
- Конфигурации Extreme EXOS используют простой синтаксис текстового файла. Этот модуль предоставляет реализацию для работы с строками конфигурации EXOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after - | Упорядоченный набор команд для добавления в конец стека команд, если требуется изменение. Как и с параметром before, это позволяет разработчику конфигурации добавить набор команд, которые будут выполнены после набора команд. | ||
| backup boolean |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config удалённого устройства перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии будет записан в папку backup в корневой директории книги задач. Если директория не существует, она будет создана. | |
| backup_options словарь добавлено в 2.8 | Это объект словаря, содержащий настраиваемые параметры, связанные с путем к файлу резервной копии. Значение этого параметра считывается только когда backup установлено в yes, если backup установлено в no, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если каталог не существует, он будет сначала создан, и имя файла будет либо значением filename, либо именем файла по умолчанию, как описано в описании параметров filename. Если значение пути не указано, в этом случае будет создан каталог backup в текущей рабочей директории, и резервная копия конфигурации будет скопирована в filename внутри каталога backup. | ||
| filename - | Имя файла, используемого для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before - | Упорядоченный набор команд, которые будут добавлены в стек команд, если требуется изменение. Это позволяет разработчику книги задач выполнить команды конфигурации до внесения каких-либо изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| defaults boolean |
| Этот аргумент указывает, нужно ли собирать все значения по умолчанию при получении рабочей конфигурации удалённого устройства. При включении модуль получит текущую конфигурацию, выполнив команду show running-config all. | |
| diff_against - |
| Используя аргумент командной строки ansible-playbook --diff, модуль может генерировать разницы по отношению к различным источникам.Если этот параметр установлен как startup, модуль вернёт разницу между рабочей конфигурацией и конфигурацией по умолчанию. Если этот параметр установлен как intended, модуль вернёт разницу между рабочей конфигурацией и конфигурацией, предоставленной в аргументе intended_config.Если этот параметр установлен как running, модуль вернёт разницу между текущей рабочей конфигурацией до и после любых внесённых изменений в конфигурацию устройства. | |
| diff_ignore_lines - | Используйте этот аргумент для указания одной или нескольких строк, которые должны быть проигнорированы при сравнении. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. | ||
| intended_config - | Параметр intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной рабочей конфигурации. Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется только для проверки соответствия текущей конфигурации устройства предоставленной. При указании этого аргумента в задаче также необходимо изменить значение diff_against, установив его в значение intended. | ||
| lines - | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как в рабочей конфигурации устройства. Убедитесь, что вы учли синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. псевдонимы: команды | ||
| match - |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен в line, команды сравниваются построчно. Если match установлен в strict, строки команд сравниваются относительно положения. Если match установлен в exact, строки команд должны быть идентичны. Наконец, если match установлен в none, модуль не будет пытаться сравнить исходную конфигурацию с рабочей конфигурацией на удалённом устройстве. | |
| replace - |
| Указывает модулю способ выполнения конфигурации на устройстве. Если параметр replace установлен в line, изменённые строки отправляются устройству в режиме конфигурации. Если параметр replace установлен в block, весь блок команд отправляется устройству в режиме конфигурации, если какая-либо строка неверна. | |
| running_config - | По умолчанию модуль подключается к удалённому устройству и извлекает текущую рабочую конфигурацию для использования в качестве основы для сравнения с содержимым источника. Иногда нет необходимости получать текущую рабочую конфигурацию для каждой задачи в книге задач. Аргумент running_config позволяет разработчику передать конфигурацию, используемую в качестве базовой конфигурации для сравнения. псевдонимы: config | ||
| save_when - |
| При внесении изменений в рабочую конфигурацию устройства, изменения по умолчанию не копируются в энергонезависимую память. Использование этого аргумента изменит это поведение. Если аргумент установлен в всегда, то рабочая конфигурация всегда будет скопирована в конфигурацию по умолчанию, и флаг изменено всегда будет установлен в True. Если аргумент установлен в изменено, то рабочая конфигурация будет скопирована в конфигурацию по умолчанию только если она изменилась с момента последней сохранения в конфигурацию по умолчанию. Если аргумент установлен в никогда, рабочая конфигурация никогда не будет скопирована в конфигурацию по умолчанию. Если аргумент установлен в изменено, рабочая конфигурация будет скопирована в конфигурацию по умолчанию только если задача внесла изменения. | |
| src - | Указывает путь к исходному файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корневой директории книги задач или роли. Этот аргумент несовместим с аргументом lines. | ||
Примечания
Примечание
- Тестировалось на EXOS версии 22.6.0b19
Примеры
- name: configure SNMP system name
exos_config:
lines: configure snmp sysName "{{ inventory_hostname }}"
- name: configure interface settings
exos_config:
lines:
- configure ports 2 description-string "Master Uplink"
backup: yes
- name: check the running-config against master config
exos_config:
diff_against: intended
intended_config: "{{ lookup('file', 'master.cfg') }}"
- name: check the startup-config against the running-config
exos_config:
diff_against: startup
diff_ignore_lines:
- ntp clock .*
- name: save running to startup when modified
exos_config:
save_when: modified
- name: configurable backup path
exos_config:
lines:
- configure ports 2 description-string "Master Uplink"
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = да | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/x870_config.2018-08-08@15:00:21 |
| commands список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['create vlan "foo"', 'configure snmp sysName "x620-red"'] |
| updates список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['switch-attributes hostname foo', 'router ospf', 'area 0'] |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Lance Richardson (@hlrichardson)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/exos_config_module.html