community.network.enos_config – Управление разделами конфигурации Lenovo ENOS
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в плейбуке укажите: community.network.enos_config.
Описание
- Конфигурации Lenovo ENOS используют простой синтаксис с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации ENOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| admin boolean |
| Переходит в режим администрирования для внесения изменений в конфигурацию устройства. | |
| after string | Упорядоченный набор команд, которые будут добавлены в конец стека команд, если требуется внести изменения. Аналогично параметру before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд. | ||
| auth_pass string | Указывает пароль, который необходимо использовать для входа в привилегированный режим на удалённом устройстве. Если authorize равен false, то этот аргумент не имеет эффекта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| backup boolean |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удалённого устройства перед внесением любых изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневой директории плейбука. Если директория не существует, она создаётся. | |
| backup_options dictionary | Это объект типа dict, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра читается только когда backup установлено в да, если backup установлено в нет, этот параметр будет проигнорирован. | ||
| dir_path path | Этот параметр предоставляет путь, заканчивающийся именем директории, в которой будет храниться файл конфигурации резервной копии. Если директория не существует, она будет создана. Имя файла — это либо значение filename, либо имя файла по умолчанию, как описано в описании опций filename. Если путь не указан, в текущей рабочей директории будет создана директория backup, и конфигурация резервной копии будет скопирована в filename внутри директории backup. | ||
| filename string | Имя файла, которое будет использоваться для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before string | Упорядоченный набор команд, которые будут добавлены в стек команд, если необходимо внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации перед внесением изменений, не влияя на способ сопоставления набора команд с системой. | ||
| comment string | Значение по умолчанию: "настроено enos_config" | Разрешает указать описание коммита, которое будет включено при сохранении конфигурации. Если конфигурация не изменена или не сохранена, этот аргумент игнорируется. | |
| config string | По умолчанию модуль подключается к удалённому устройству и получает текущую рабочую конфигурацию для сравнения с содержимым источника. Иногда не нужно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Аргумент config позволяет разработчику указать конфигурацию для использования в качестве базовой. | ||
| lines string | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как в текущей рабочей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. алиасы: команды | ||
| match string |
| Инструктирует модуль о способе сравнения набора команд с текущей конфигурацией устройства. Если match установлено в строка, команды сравниваются построчно. Если match установлено в строго, строки команд сравниваются относительно позиции. Если match установлено в точно, строки команд должны быть идентичны. Если match установлено в ничего, модуль не будет пытаться сравнивать исходную конфигурацию с текущей конфигурацией удалённого устройства. | |
| parents string | Упорядоченный набор родительских элементов, которые однозначно идентифицируют раздел, с которым должны быть проверены команды. Если аргумент parents опущен, команды проверяются по отношению к набору команд верхнего уровня или глобальных команд. | ||
| provider dictionary | Объект типа dict, содержащий данные подключения. | ||
| auth_pass string | Указывает пароль, который необходимо использовать для входа в привилегированный режим на удалённом устройстве. Если authorize равен false, то этот аргумент не имеет эффекта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| host string / required | Указывает имя DNS-хоста или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| password string | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port integer | Значение по умолчанию: 22 | Указывает порт для подключения к удалённому устройству. | |
| ssh_keyfile path | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout integer | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку. | |
| username string | Указывает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| replace string |
| Инструктирует модуль о том, как выполнить конфигурацию на устройстве. Если аргумент replace установлен в строка, изменённые строки отправляются устройству в режиме конфигурации. Если аргумент replace установлен в блок, весь блок команд отправляется устройству в режиме конфигурации, если какая-либо строка неверна. | |
| src string | Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корневой директории плейбука или роли. Этот аргумент взаимоисключающий с lines, parents. | ||
Примечания
Примечание
- Проверено на ENOS 8.4.1
Примеры
- name: Configure top level configuration
community.network.enos_config:
"lines: hostname {{ inventory_hostname }}"
- name: Configure interface settings
community.network.enos_config:
lines:
- enable
- ip ospf enable
parents: interface ip 13
- name: Load a config from disk and replace the current config
community.network.enos_config:
src: config.cfg
backup: yes
- name: Configurable backup path
community.network.enos_config:
src: config.cfg
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path string | при backup = да | Полный путь к файлу резервной копии Пример: /playbooks/ansible/backup/enos01.2016-07-16@22:28:34 |
| updates list / elements=string | Только при указании lines. | Набор команд, которые будут отправлены на удалённое устройство Пример: ['...', '...'] |
Авторы
- 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.10/collections/community/network/enos_config_module.html