sros_config – Управление конфигурацией устройства Nokia SR OS
Новое в версии 2.2.
Описание
- Конфигурации Nokia SR OS используют простой синтаксис с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации SR OS детерминированным образом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after - | Упорядоченный набор команд для добавления в конец стека команд, если необходимо внести изменения. Как и в случае с before, это позволяет разработчику playbook добавить набор команд, которые будут выполнены после набора команд. | ||
| backup boolean добавлено в 2.2 |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением любых изменений. Файл резервной копии будет записан в папку backup в корневой директории playbook. Если директория не существует, она будет создана. | |
| before - | Упорядоченный набор команд для добавления в стек команд, если необходимо внести изменения. Это позволяет разработчику playbook выполнить команды конфигурации перед внесением изменений без влияния на то, как набор команд сопоставляется с системой. | ||
| config - добавлено в 2.2 | Аргумент config позволяет разработчику playbook предоставить базовая конфигурация для проверки необходимых изменений конфигурации. Если этот аргумент предоставлен, модуль не загрузит running-config с удаленного узла. | ||
| defaults boolean добавлено в 2.2 |
| Этот аргумент указывает, нужно ли собирать все значения по умолчанию при получении running-config удаленного устройства. При включении модуль получит текущую конфигурацию, выполнив команду show running-config all. псевдонимы: detail | |
| force boolean добавлено в 2.2 |
| Аргумент force инструктирует модуль не учитывать текущую running-config устройства. При установке в true, модуль отправит содержимое src на устройство без предварительной проверки, настроено ли это уже. Обратите внимание, что этот аргумент следует считать устаревшим. Чтобы достичь эквивалентного результата, установите match=none, который идемпотентен. Этот аргумент будет удален в будущих версиях. | |
| lines - | Упорядоченный набор команд, которые должны быть настроены в секции. Команды должны быть такими же, как и в running-config устройства. Убедитесь, что вы учли синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. Аргумент lines поддерживает только текущие строки контекста. См. ПРИМЕРЫ псевдонимы: commands | ||
| match - |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлен на line, команды сравниваются построчно. Если match установлен на strict, строки команд сравниваются с учетом позиции. Если match установлен на exact, строки команд должны быть точным совпадением. Наконец, если match установлен на none, модуль не будет пытаться сравнить исходную конфигурацию с running-конфигурацией на удаленном устройстве. | |
| 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 boolean добавлено в 2.2 |
| Аргумент save инструктирует модуль сохранить running-config в startup-config по завершении работы модуля. Если указан режим проверки, этот аргумент игнорируется. | |
| src - добавлено в 2.2 | Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путем на хосте Ansible или относительным путем от корня playbook или роли. Этот аргумент взаимоисключает 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
sros_config:
lines: configure system rollback rollback-location "cf3:/ansible"
provider: "{{ cli }}"
- name: set system name to {{ inventory_hostname }} using one line
sros_config:
lines:
- configure system name "{{ inventory_hostname }}"
provider: "{{ cli }}"
- name: set system name to {{ inventory_hostname }} using parents
sros_config:
lines:
- 'name "{{ inventory_hostname }}"'
parents:
- configure
- system
provider: "{{ cli }}"
backup: yes
- name: load config from file
sros_config:
src: "{{ inventory_hostname }}.cfg"
provider: "{{ cli }}"
save: yes
- name: invalid use of lines
sros_config:
lines:
- service
- vpls 1000 customer foo 1 create
- description "invalid lines example"
provider: "{{ cli }}"
- name: valid use of lines
sros_config:
lines:
- description "invalid lines example"
parents:
- service
- vpls 1000 customer foo 1 create
provider: "{{ cli }}"
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = yes | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/sros_config.2016-07-16@22:28:34 |
| commands список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['config system name "sros01"'] |
| updates список | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['config system name "sros01"'] |
Статус
- Данный модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.7/modules/sros_config_module.html