cnos_config — Управление разделами конфигурации Lenovo CNOS
Новая версия 2.6.
Обзор
- Конфигурации Lenovo CNOS используют простой синтаксис блочного отступа для разбиения конфигурации на разделы. Этот модуль предоставляет реализацию для работы с разделами конфигурации CNOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| admin bool |
| Переходит в административный режим конфигурации для внесения изменений в конфигурацию устройства. | |
| after | Упорядоченный набор команд, которые нужно добавить в конец стека команд, если нужно внести изменения. Аналогично параметру before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд. | ||
| backup bool |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением любых изменений. Файл резервной копии записывается в папку backup в корневой директории плейбука. Если папки не существует, она создается. | |
| before | Упорядоченный набор команд, которые необходимо добавить в стек команд, если нужно внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации до внесения любых изменений без влияния на способ сопоставления набора команд с системой. | ||
| comment | Значение по умолчанию: "настроено модулем cnos_config" | Позволяет указать описание изменения, которое будет включено при фиксации конфигурации. Если конфигурация не изменена или не сохранена, этот аргумент игнорируется. | |
| config | По умолчанию модуль подключается к удаленному устройству и получает текущую рабочую конфигурацию для использования в качестве основы для сравнения с содержимым исходного файла. В некоторых случаях нежелательно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Аргумент config позволяет разработчику передать конфигурацию в качестве базовой конфигурации для сравнения. | ||
| lines | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как и в рабочей конфигурации устройства. Убедитесь, что вы учли синтаксис команд конфигурации, поскольку некоторые команды автоматически изменяются парсером конфигурации устройства. псевдонимы: команды | ||
| match |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сравниваются по строкам. Если match установлен на строго, строки команд сравниваются относительно их позиции. Если match установлен на точно, строки команд должны быть точным совпадением. Наконец, если match установлен на нет, модуль не будет пытаться сравнить исходную конфигурацию с рабочей конфигурацией на удаленном устройстве. | |
| parents | Упорядоченный набор родительских элементов, которые однозначно определяют раздел, с которым должны сравниваться команды. Если параметр parents опущен, команды сравниваются с набором команд верхнего уровня или глобальными командами. | ||
| provider (добавлено в 2.6) | Объект словаря, содержащий сведения о подключении. | ||
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удаленному устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| port | Значение по умолчанию: 22 | Указывает порт, используемый при создании соединения с удаленным устройством. | |
| username | Указывает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| timeout | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечет до завершения операции, модуль выдаст ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удаленному устройству. Это путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| replace |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен на строка, измененные строки передаются устройству в режиме конфигурации. Если аргумент replace установлен на блок, весь блок команд передаётся устройству в режиме конфигурации, если какая-либо строка некорректна. | |
| src | Указывает исходный путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путем на хосте Ansible или относительным путем от корня плейбука или роли. Этот аргумент взаимоисключает с lines, parents. | ||
Примечания
Примечание
- Проверено на CNOS 10.8.0.42
Примеры
Tasks: The following are examples of using the module cnos_config.
---
- name: configure top level configuration
cnos_config:
"lines: hostname {{ inventory_hostname }}"
- name: configure interface settings
cnos_config:
lines:
- enable
- ip ospf enable
parents: interface ip 13
- name: load a config from disk and replace the current config
cnos_config:
src: config.cfg
backup: yes
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup равно да | Полный путь к файлу резервной копии Пример: /playbooks/ansible/backup/cnos01.2016-07-16@22:28:34 |
| updates список | только при указании lines. | Набор команд, которые будут отправлены на удаленное устройство Пример: ['...', '...'] |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Анил Кумар Муралеэдхаран (@amuraleedhar)
Подсказка
Если вы заметили какие-либо проблемы в этом документе, вы можете изменить его, чтобы улучшить его.
© 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/cnos_config_module.html