voss_config – Управление разделами конфигурации Extreme VOSS
Новая в версии 2.8.
Обзор
- Конфигурации Extreme VOSS используют простой текстовый синтаксис. Этот модуль предоставляет реализацию для работы со строками конфигурации EXOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after - | Упорядоченный набор команд, которые нужно добавить в конец стека команд, если требуется внести изменения. Так же, как и с параметром before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд. | ||
| backup boolean |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config удаленного устройства перед внесением каких-либо изменений. Если значение backup_options не задано, резервная копия сохраняется в папке backup в корневом каталоге плейбука или корневом каталоге роли, если плейбук является частью роли Ansible. Если каталог не существует, он создаётся. | |
| backup_options словарь добавлено в 2.8 | Это объект словаря, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра считывается только тогда, когда backup установлено в значение да, если backup установлено в значение нет, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр задаёт путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если каталог не существует, он будет сначала создан, а имя файла — либо значение filename, либо имя файла по умолчанию, как описано в описании опций filename. Если путь не задан, в текущей рабочей директории создаётся каталог backup, и резервная копия конфигурации копируется в filename внутри каталога backup. | ||
| filename - | Имя файла, используемого для хранения резервной копии конфигурации. Если имя файла не задано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before - | Упорядоченный набор команд, которые нужно добавить в стек команд, если требуется внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации перед внесением каких-либо изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| defaults boolean |
| Этот аргумент указывает, нужно ли собирать все значения по умолчанию при получении конфигурации удаленного устройства. При включенном режиме, модуль получит текущую конфигурацию, выполнив команду show running-config verbose. | |
| diff_against - |
| При использовании аргумента командной строки ansible-playbook --diff модуль может генерировать разницу по отношению к различным источникам.Когда этот параметр настроен как стартовая, модуль вернёт разницу между текущей конфигурацией и стартовой конфигурацией. Когда этот параметр настроен как запланированная, модуль вернёт разницу между текущей конфигурацией и конфигурацией, предоставленной в аргументе intended_config. Когда этот параметр настроен как текущая, модуль вернёт разницу между текущей и последующей конфигурацией текущей по отношению к любым внесённым изменениям в конфигурацию устройства. | |
| diff_ignore_lines - | Используйте этот аргумент для указания одной или нескольких строк, которые нужно игнорировать при сравнении. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. | ||
| intended_config - | intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной текущей конфигурации. Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется строго для проверки соответствия текущей конфигурации устройства заданной. При указании этого аргумента задача должна также изменить значение diff_against и установить его в значение запланированная. | ||
| lines - | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как и в конфигурации текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. псевдонимы: команды | ||
| match - |
| Указывает модулю, как выполнять сопоставление набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сопоставляются построчно. Если match установлен на строго, строки команд сопоставляются с учётом позиции. Если match установлен на точно, строки команд должны быть точным совпадением. Наконец, если match установлен на нет, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. | |
| parents - | Родительская строка, которая однозначно идентифицирует раздел, с которым должны сравниваться команды. Если этот аргумент опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. Обратите внимание, что конфигурации VOSS поддерживают только один уровень вложенных команд. | ||
| replace - |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен на строка, изменённые строки отправляются на устройство в режиме конфигурации. Если аргумент replace установлен на блок, весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка неверна. | |
| running_config - | По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию, чтобы использовать её в качестве основы для сравнения с содержимым источника. В некоторых случаях нежелательно запрашивать текущую конфигурацию для каждой задачи в плейбуке. Аргумент running_config позволяет реализатору передать конфигурацию в качестве базовой конфигурации для сравнения. псевдонимы: config | ||
| save_when - |
| При внесении изменений в текущую конфигурацию устройства, изменения не копируются в нелетучую память по умолчанию. Используя этот аргумент, можно изменить это поведение. Если аргумент установлен на всегда, текущая конфигурация всегда сохраняется, и флаг изменено всегда устанавливается в True. Если аргумент установлен на изменено, текущая конфигурация сохраняется только в том случае, если она изменилась с момента последнего сохранения в стартовую конфигурацию. Если аргумент установлен на никогда, текущая конфигурация никогда не сохраняется. Если аргумент установлен на изменилось, текущая конфигурация сохраняется только в том случае, если задача внесла изменения. | |
| src - | Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корня плейбука или роли. Этот аргумент несовместим с аргументами lines и parents. | ||
Примечания
Примечание
- Тестировалось на VOSS 7.0.0
- Сокращённые команды НЕ идемпотентны, см. Вопросы и ответы по сети.
Примеры
- name: configure system name
voss_config:
lines: prompt "{{ inventory_hostname }}"
- name: configure interface settings
voss_config:
lines:
- name "ServerA"
backup: yes
parents: interface GigabitEthernet 1/1
- name: check the running-config against master config
voss_config:
diff_against: intended
intended_config: "{{ lookup('file', 'master.cfg') }}"
- name: check the startup-config against the running-config
voss_config:
diff_against: startup
diff_ignore_lines:
- qos queue-profile .*
- name: save running to startup when modified
voss_config:
save_when: modified
- name: configurable backup path
voss_config:
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Значения возврата
Общие значения возвращаемых данных документированы здесь, ниже приведены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup равно yes | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/vsp200_config.2018-08-21@15:00:21 |
| commands список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['interface GigabitEthernet 1/1', 'name "ServerA"', 'exit'] |
| updates список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['prompt "VSP200"'] |
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Данный модуль поддерживается сообществом Ansible. [community]
Авторы
- Lindsay Hill (@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.9/modules/voss_config_module.html