community.network.sros_config – Управление конфигурацией устройства Nokia SR OS
Примечание
Этот плагин входит в состав коллекции community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: community.network.sros_config.
Обзор
- Конфигурации Nokia SR OS используют простой синтаксис с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации SR OS детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after строка | Упорядоченный набор команд для добавления в конец стека команд, если требуется внести изменения. Аналогично параметру before, это позволяет разработчику книги задач добавить набор команд, которые будут выполняться после заданного набора. | ||
| backup булево |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением любых изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневой директории книги задач. Если папки не существует, она создается. | |
| backup_options словарь | Это объект типа dict, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра считывается только тогда, когда backup установлено в yes; если backup установлено в no, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр указывает путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если каталог не существует, он будет создан, а имя файла будет либо значением filename, либо именем файла по умолчанию, как описано в filename описании параметров. Если путь не указан, в этом случае будет создан каталог backup в текущей рабочей директории, и резервная копия конфигурации будет скопирована в filename внутри каталога backup. | ||
| filename строка | Имя файла, используемого для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before строка | Упорядоченный набор команд, которые необходимо поместить в стек команд, если требуется внести изменение. Это позволяет разработчику книги задач выполнить команды конфигурации до внесения изменений без влияния на то, как набор команд сопоставляется с системой. | ||
| config строка | Аргумент config позволяет разработчику книги задач предоставить базу конфигурации, которая будет использоваться для проверки необходимых изменений конфигурации. Если этот аргумент предоставлен, модуль не загрузит running-config с удаленного узла. | ||
| defaults булево |
| Этот аргумент определяет, нужно ли собирать все значения по умолчанию при получении running-config удаленного устройства. При включении модуль получит текущую конфигурацию, выполнив команду admin display-config detail. псевдонимы: detail | |
| force булево |
| Аргумент force инструктирует модуль не учитывать текущую running-конфигурацию устройства. При установке в true, это заставит модуль перенести содержимое src на устройство без предварительной проверки, настроено ли оно уже. Обратите внимание, что этот аргумент следует считать устаревшим. Для достижения эквивалента, установите match=none, который является идемпотентным. Этот аргумент будет удален в будущей версии. | |
| lines строка | Упорядоченный набор команд, которые должны быть настроены в секции. Команды должны быть точно такими же, как и в running-config устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. Аргумент lines поддерживает только строки текущего контекста. См. ПРИМЕРЫ. псевдонимы: commands | ||
| match строка |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен в line, команды сравниваются по строкам. Если match установлен в none, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удаленном устройстве. | |
| parents строка | Упорядоченный набор родительских элементов, которые однозначно идентифицируют секцию или иерархию, по которой должны проверяться команды. Если аргумент parents опущен, команды проверяются по отношению к набору команд верхнего уровня или глобальных команд. | ||
| provider словарь | Объект типа dict, содержащий данные подключения. | ||
| 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 установлен в line, измененные строки передаются на устройство в режиме конфигурации. Если replace установлен в block, весь блок команд передается на устройство в режиме конфигурации, если какая-либо строка некорректна. | |
| save булево |
| Аргумент save инструктирует модуль сохранить running-config в startup-config по завершении работы модуля. Если указан режим проверки, этот аргумент игнорируется. | |
| src строка | Указывает исходный путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путем на хосте Ansible или относительным путем от корневой директории книги задач или роли. Этот аргумент взаимоисключает с lines, parents. | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами Nokia SR OS см. на https://www.ansible.com/ansible-nokia.
Примеры
# Note: examples below use the following provider dict to handle
# transport and authentication to the node.
---
vars:
cli:
host: "{{ inventory_hostname }}"
username: admin
password: admin
transport: cli
---
- name: Enable rollback location
community.network.sros_config:
lines: configure system rollback rollback-location "cf3:/ansible"
provider: "{{ cli }}"
- name: Set system name to {{ inventory_hostname }} using one line
community.network.sros_config:
lines:
- configure system name "{{ inventory_hostname }}"
provider: "{{ cli }}"
- name: Set system name to {{ inventory_hostname }} using parents
community.network.sros_config:
lines:
- 'name "{{ inventory_hostname }}"'
parents:
- configure
- system
provider: "{{ cli }}"
backup: yes
- name: Load config from file
community.network.sros_config:
src: "{{ inventory_hostname }}.cfg"
provider: "{{ cli }}"
save: yes
- name: Invalid use of lines
community.network.sros_config:
lines:
- service
- vpls 1000 customer foo 1 create
- description "invalid lines example"
provider: "{{ cli }}"
- name: Valid use of lines
community.network.sros_config:
lines:
- description "invalid lines example"
parents:
- service
- vpls 1000 customer foo 1 create
provider: "{{ cli }}"
- name: Configurable backup path
community.network.sros_config:
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | если резервное копирование включено | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/sros_config.2016-07-16@22:28:34 |
| commands список / элементы=строка | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['config system name "sros01"'] |
| updates список / элементы=строка | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['config system name "sros01"'] |
Авторы
- Peter Sprygada (@privateip)
© 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/sros_config_module.html