cnos_template – Управление конфигурацией коммутатора с помощью шаблонов на устройствах с Lenovo CNOS
Новая версия 2.3.
Описание
- Этот модуль позволяет работать с рабочей конфигурацией коммутатора. Он предоставляет способ выполнения набора команд CNOS на коммутаторе, оценивая текущую рабочую конфигурацию и выполняя команды только в том случае, если соответствующие настройки еще не были сконфигурированы. Источник конфигурации может представлять собой набор команд или шаблон, написанный на языке шаблонизации Jinja2. Этот модуль использует SSH для управления конфигурацией сетевого устройства. Результаты операции будут помещены в директорию с именем «results», которую пользователь должен создать в локальном каталоге, где выполняется playbook.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| commandfile - / обязательно | Значение по умолчанию: null | Указывает путь к файлу команд CNOS, который необходимо применить. Обычно он берется из папки с командами. Как правило, этот файл является результатом применения переменных к файлу шаблона. Поэтому этой команде предшествует модуль шаблонов. Обратите внимание: файл команд должен содержать ключевое слово Ansible {{ inventory_hostname }} в своем имени файла, чтобы убедиться, что файл команд уникален для каждого коммутатора и условия. Если это опущенно, файл команд будет перезаписан во время итерации. Например, commandfile=./commands/clos_leaf_bgp_{{ inventory_hostname }}_commands.txt |
| deviceType строка / обязательно добавлено в 2.3 |
| Указывает тип устройства, на котором выполняется метод. Варианты NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлены с Ansible 2.4. Вариант NE0152T добавлен с 2.8 |
| enablePassword строка добавлено в 2.3 | Настраивает пароль, используемый для входа в режим команд глобальной конфигурации на коммутаторе. Если коммутатор не запрашивает этот пароль, параметр игнорируется. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. | |
| host строка / обязательно добавлено в 2.3 | Эта переменная используется для поиска файла хостов в /etc/ansible/hosts и определения IP-адреса устройства, на котором будет применяться шаблон. Обычно в playbook используется ключевое слово Ansible {{ inventory_hostname }} для абстрагирования группы сетевых элементов, которые необходимо сконфигурировать. | |
| outputfile строка / обязательно добавлено в 2.3 | Указывает путь к файлу, где сохраняется вывод каждого выполнения команды. Здесь сохраняются каждая команда, указанная в объединенном файле шаблона, и каждый ответ от устройства. Обычно расположение находится в папке results, но вы можете выбрать другое расположение в зависимости от прав записи. | |
| password строка / обязательно добавлено в 2.3 | Настраивает пароль, используемый для аутентификации подключения к удаленному устройству. Значение параметра password используется для аутентификации сеанса SSH. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. | |
| username строка / обязательно добавлено в 2.3 | Настраивает имя пользователя, используемое для аутентификации подключения к удаленному устройству. Значение параметра username используется для аутентификации сеанса SSH. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами Lenovo Network см. на сайте https://www.ansible.com/ansible-lenovo.
Примеры
Tasks : The following are examples of using the module cnos_template. These are written in the main.yml file of the tasks directory.
---
- name: Replace Config CLI command template with values
template:
src: demo_template.j2
dest: "./commands/demo_template_{{ inventory_hostname }}_commands.txt"
vlanid1: 13
slot_chassis_number1: "1/2"
portchannel_interface_number1: 100
portchannel_mode1: "active"
- name: Applying CLI commands on Switches
cnos_template:
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
commandfile: "./commands/demo_template_{{ inventory_hostname }}_commands.txt"
outputfile: "./results/demo_template_command_{{ inventory_hostname }}_output.txt"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| msg строка | всегда | Сообщение об успехе или об ошибке Пример: Шаблон применен. |
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом 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/cnos_template_module.html