cnos_config – Управление разделами конфигурации Lenovo CNOS
Новая версия с 2.6.
Обзор
- Конфигурации Lenovo CNOS используют простой синтаксис блочного отступа для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации CNOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| admin boolean |
| Входит в режим администрирования конфигурации для внесения изменений в конфигурацию устройства. | |
| after - | Упорядоченный набор команд, которые добавляются в конец стека команд, если необходимо внести изменения. Подобно параметру before, это позволяет разработчику playbook добавлять набор команд, которые будут выполняться после набора команд. | ||
| backup boolean |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config удалённого устройства перед внесением каких-либо изменений. Файл резервной копии записывается в папку backup в корневой директории playbook. Если директория не существует, она создаётся. | |
| before - | Упорядоченный набор команд, которые помещаются в стек команд, если необходимо внести изменения. Это позволяет разработчику playbook выполнить команды конфигурации перед внесением изменений, не влияя на сопоставление набора команд с системой. | ||
| comment - | Значение по умолчанию: "настроено модулем cnos_config" | Разрешает указать описание коммита, которое будет включено при фиксации конфигурации. Если конфигурация не изменяется или не фиксируется, этот аргумент игнорируется. | |
| config - | По умолчанию модуль подключится к удалённому устройству и получит текущую running-config, чтобы использовать её в качестве базы для сравнения с содержимым source. Иногда нежелательно получать текущую running-config для каждой задачи в playbook. Аргумент config позволяет реализатору передать конфигурацию в качестве базовой для сравнения. | ||
| lines - | Упорядоченный набор команд, которые должны быть настроены в секции. Команды должны быть абсолютно идентичными командам, найденным в running-config устройства. Убедитесь, что вы учли синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. псевдонимы: команды | ||
| match - |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сравниваются по строкам. Если match установлен на строгое, строки команд сравниваются с учётом позиции. Если match установлен на точно, строки команд должны быть точным совпадением. Если match установлен на ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства. | |
| parents - | Упорядоченный набор родительских элементов, которые однозначно определяют секцию, с которой следует сравнивать команды. Если аргумент parents опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. | ||
| provider - добавлено в 2.6 | Объект словаря, содержащий детали подключения. | ||
| host - / обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| password - | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| port - | Значение по умолчанию: 22 | Указывает порт для создания подключения к удалённому устройству. | |
| ssh_keyfile - | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout - | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку. | |
| username - | Устанавливает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| replace - |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен на строка, изменённые строки отправляются устройству в режиме конфигурации. Если аргумент replace установлен на блок, весь блок команд отправляется устройству в режиме конфигурации, если какая-либо строка неверна. | |
| src - | Указывает путь к источнику файла, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к файлу источника может быть полным путём на хосте Ansible или относительным путём от корня playbook или роли. Этот аргумент взаимоисключающий с строки, родители. | ||
Примечания
Примечание
- Проверено на CNOS 10.8.1
Примеры
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. [community]
Авторы
- Anil Kumar Muraleedharan (@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.7/modules/cnos_config_module.html