slxos_config — Управление разделами конфигурации Extreme Networks SLX-OS
Новая версия 2.6.
Обзор
- Конфигурации Extreme SLX-OS используют простой синтаксис файла с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации SLX-OS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| after | По умолчанию: null | Упорядоченный набор команд для добавления в конец стека команд, если требуется изменение. Аналогично before, это позволяет разработчику конфигурации добавить набор команд, которые будут выполнены после заданного набора. |
| backup bool |
| Этот аргумент заставит модуль создать полную резервную копию текущего running-config с удаленного устройства перед внесением каких-либо изменений. Файл резервной копии записывается в папку backup в корневом каталоге файла конфигурации. Если директория не существует, она будет создана. |
| before | По умолчанию: null | Упорядоченный набор команд для добавления в стек команд, если требуется изменение. Это позволяет разработчику конфигурации выполнить команды конфигурации перед добавлением любых изменений, не влияя на способ сопоставления набора команд с системой. |
| defaults bool |
| Этот аргумент указывает, нужно ли собирать все значения по умолчанию при получении текущей конфигурации удаленного устройства. При включении модуль получит текущую конфигурацию, выполнив команду show running-config all. |
| diff_against |
| При использовании аргумента командной строки ansible-playbook --diff модуль может генерировать изменения по отношению к различным источникам.При настройке этого параметра на стартовая, модуль вернёт результат сравнения текущей конфигурации с стартовой конфигурацией. При настройке этого параметра на заданная, модуль вернёт результат сравнения текущей конфигурации с конфигурацией, предоставленной в аргументе intended_config.При настройке этого параметра на текущая, модуль вернёт результат сравнения текущей конфигурации до и после внесения изменений в конфигурацию устройства. |
| diff_ignore_lines | Используйте этот аргумент, чтобы указать одну или несколько строк, которые следует игнорировать во время сравнения. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. | |
| intended_config | intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки конечной текущей конфигурации. Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется только для проверки соответствия текущей конфигурации устройства. При использовании этого аргумента необходимо также изменить значение diff_against и установить его в заданная. | |
| lines | По умолчанию: null | Упорядоченный набор команд, которые должны быть сконфигурированы в секции. Команды должны быть абсолютно такими же, как в текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. псевдонимы: команды |
| match |
| Указывает модулю способ сопоставления набора команд с текущей конфигурацией устройства. Если match задан как строка, команды сопоставляются построчно. Если match задан как строго, строки команд сопоставляются с учётом положения. Если match задан как точно, строки команд должны быть идентичными. Если match задан как нет, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. |
| multiline_delimiter | По умолчанию: "@" | Этот аргумент используется при отправке многострочного элемента конфигурации на устройство SLX-OS. Он определяет символ, используемый в качестве разделителя. Это относится только к действию конфигурации. |
| parents | По умолчанию: null | Упорядоченный набор родителей, которые однозначно идентифицируют секцию или иерархию, по отношению к которым следует проверять команды. Если аргумент parents опущен, команды проверяются по отношению к набору команд верхнего уровня или глобальным командам. |
| replace |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен в строка, изменённые строки отправляются устройству в режиме конфигурации. Если аргумент replace установлен в блок, весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка неверна. |
| running_config | По умолчанию: null | По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию для использования в качестве основы для сравнения с содержимым источника. Иногда нежелательно, чтобы задача получала текущую конфигурацию для каждой задачи в файле конфигурации. Аргумент running_config позволяет разработчику передать конфигурацию для использования в качестве базовой конфигурации для сравнения. псевдонимы: config |
| save_when |
| При внесении изменений в текущую конфигурацию устройства, изменения по умолчанию не копируются в постоянное хранилище. С помощью этого аргумента это можно изменить. Если аргумент установлен в всегда, то текущая конфигурация всегда будет скопирована в стартовую конфигурацию, а флаг изменено всегда будет установлен в True. Если аргумент установлен в изменено, то текущая конфигурация будет скопирована в стартовую только в том случае, если она изменилась с момента последнего сохранения в стартовую конфигурацию. Если аргумент установлен в никогда, текущая конфигурация никогда не будет скопирована в стартовую конфигурацию. Если аргумент установлен в изменено, текущая конфигурация будет скопирована в стартовую только в том случае, если задача внесла изменение. |
| src | По умолчанию: null | Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на контрольном хосте Ansible или относительным путём от корневой директории файла конфигурации или роли. Этот аргумент несовместим с lines, parents. |
Примечания
Примечание
- Тестировалось на SLX-OS 17s.1.02
Примеры
- name: configure top level configuration
slxos_config:
lines: hostname {{ inventory_hostname }}
- name: configure interface settings
slxos_config:
lines:
- description test interface
- ip address 172.31.1.1/24
parents: interface Ethernet 0/1
- name: configure multiple interfaces
slxos_config:
lines:
- lacp timeout long
parents: "{{ item }}"
with_items:
- interface Ethernet 0/1
- interface Ethernet 0/2
- name: load new acl into device
slxos_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
slxos_config:
diff_against: intended
intended_config: "{{ lookup('file', 'master.cfg') }}"
- name: check the startup-config against the running-config
slxos_config:
diff_against: startup
diff_ignore_lines:
- ntp clock .*
- name: save running to startup when modified
slxos_config:
save_when: modified
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = да | Полный путь к файлу резервной копии Пример: /playbooks/ansible/backup/slxos_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, что означает, что он не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как community, что означает, что он поддерживается сообществом Ansible. См. Поддержка и обслуживание модулей для получения дополнительной информации.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Линдси Хилл (@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.6/modules/slxos_config_module.html