enos_config – Управление разделами конфигурации Lenovo ENOS
Новая версия с 2.5.
Обзор
- Конфигурации Lenovo ENOS используют простой синтаксис вложенных блоков для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с разделами конфигурации ENOS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| admin boolean |
| Входит в режим администрирования для внесения изменений в конфигурацию устройства. | |
| after - | Упорядоченный набор команд для добавления в конец стека команд, если необходимо внести изменения. Аналогично параметру before, это позволяет разработчику плейбука добавить набор команд для выполнения после набора команд. | ||
| auth_pass - | Указывает пароль для входа в привилегированный режим на удалённом устройстве, если это требуется. Если authorize ложно, то этот аргумент ничего не делает. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean |
| Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| backup boolean |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удалённого устройства перед внесением каких-либо изменений. Если значение backup_options не указано, резервная копия записывается в папку backup в корневом каталоге плейбука. Если директория не существует, она создаётся. | |
| backup_options словарь добавлен в 2.8 | Это объект типа dict, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра считывается только когда backup установлено в да, если backup установлено в нет, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр задаёт путь, заканчивающийся именем директории, в которой будет храниться конфигурационный файл резервной копии. Если директория не существует, она будет создана, а имя файла — это значение filename или имя файла по умолчанию, как описано в filename. Если путь не указан, будет создана директория backup в текущем рабочем каталоге, и конфигурация резервной копии будет скопирована в filename внутри директории backup. | ||
| filename - | Имя файла, используемого для хранения конфигурации резервной копии. Если имя файла не задано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время>. | ||
| before - | Упорядоченный набор команд для добавления в стек команд, если необходимо внести изменения. Это позволяет разработчику плейбука выполнить конфигурационные команды перед внесением любых изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| comment - | По умолчанию: "настроен enos_config" | Позволяет указать описание коммита для включения при коммировании конфигурации. Если конфигурация не изменена или не сохранена, этот аргумент игнорируется. | |
| config - | Модуль по умолчанию подключается к удалённому устройству и получает текущую рабочую конфигурацию, чтобы использовать её в качестве основы для сравнения с содержимым источника. Иногда нежелательно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Параметр config позволяет разработчику передать конфигурацию для использования в качестве базовой конфигурации для сравнения. | ||
| lines - | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как в рабочей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. псевдонимы: команды | ||
| match - |
| Указывает модулю способ сопоставления набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сопоставляются построчно. Если match установлен на строго, строки команд сопоставляются с учётом позиции. Если match установлен на точно, строки команд должны быть точным совпадением. Наконец, если match установлен на нет, модуль не будет пытаться сравнить исходную конфигурацию с рабочей конфигурацией на удалённом устройстве. | |
| parents - | Упорядоченный набор родительских элементов, однозначно определяющих раздел, с которым должны сравниваться команды. Если аргумент parents опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. | ||
| provider словарь | Объект типа dict, содержащий сведения о подключении. | ||
| auth_pass строка | Указывает пароль для входа в привилегированный режим на удалённом устройстве, если это требуется. Если authorize ложно, то этот аргумент ничего не делает. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean |
| Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| 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 или роли. Этот аргумент взаимоисключающий с lines, parents. | ||
Примечания
Примечание
- Проверено на ENOS 8.4.1
Примеры
- name: configure top level configuration
enos_config:
"lines: hostname {{ inventory_hostname }}"
- name: configure interface settings
enos_config:
lines:
- enable
- ip ospf enable
parents: interface ip 13
- name: load a config from disk and replace the current config
enos_config:
src: config.cfg
backup: yes
- name: configurable backup path
enos_config:
src: config.cfg
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = yes | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/enos01.2016-07-16@22:28:34 |
| updates список | Только при указании lines. | Набор команд, которые будут переданы на удаленное устройство Пример: ['...', '...'] |
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.8/modules/enos_config_module.html