community.network.cnos_rollback – Восстановление конфигурации текущего или начального состояния с удаленного сервера на устройствах с Lenovo CNOS
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Чтобы использовать его в книге задач, укажите: community.network.cnos_rollback.
Описание
- Этот модуль позволяет работать с конфигурациями коммутаторов. Он предоставляет способ восстановления конфигурации коммутатора с удаленного сервера. Это достигается путем использования конфигурации текущего или начального состояния целевого устройства, которые ранее были резервированы на удаленном сервере с использованием FTP, SFTP, TFTP или SCP. Первым шагом является создание каталога, с которого можно получить доступ к удаленному серверу. Следующим шагом является предоставление полного пути к файлу резервной копии конфигурации. Также необходимо предоставить данные для аутентификации, требуемые удаленным сервером. По умолчанию этот метод перезаписывает файл конфигурации коммутатора новым загруженным файлом. Этот модуль использует SSH для управления конфигурацией сетевых устройств. Результаты операции будут помещены в каталог с именем «results», который должен быть создан пользователем в локальном каталоге, где выполняется книга задач.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| configType строка / обязательно |
| Это относится к типу конфигурации, которая будет использоваться для процесса восстановления. Варианты — текущая или начальная конфигурация. Значения по умолчанию нет, поэтому неправильный ввод приведет к ошибке. |
| deviceType строка / обязательно |
| Указывает тип устройства, на котором выполняется метод. Варианты NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлены начиная с Ansible 2.4. Вариант NE0152T добавлен начиная с 2.8 |
| enablePassword строка | Настраивает пароль, используемый для входа в режим команд глобальной конфигурации на коммутаторе. Если коммутатор не запрашивает этот пароль, параметр игнорируется. В целом значение должно поступать из файла инвентаризации, но его также можно указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. | |
| host строка / обязательно | Эта переменная используется для поиска файла хостов в /etc/ansible/hosts и определения IP-адреса устройства, на которое будет применена шаблон. Обычно в книге задач используется ключевое слово Ansible {{ inventory_hostname }} для абстрагирования группы сетевых элементов, которые нужно настроить. | |
| outputfile строка / обязательно | Указывает путь к файлу, в котором сохраняется вывод каждой команды. Здесь сохраняются каждая команда, указанная в объединенном файле шаблона, и каждый ответ от устройства. Обычно расположением является папка результатов, но вы можете выбрать другое расположение, исходя из прав записи. | |
| password строка / обязательно | Настраивает пароль, используемый для аутентификации подключения к удаленному устройству. Значение параметра password используется для аутентификации сеанса SSH. В целом значение должно поступать из файла инвентаризации, но его также можно указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. | |
| protocol строка / обязательно |
| Это относится к протоколу, используемому сетевым устройством для взаимодействия с удаленным сервером, откуда загружается резервная копия конфигурации. Варианты — FTP, SFTP, TFTP или SCP. Любые другие протоколы приведут к ошибке. Если этот параметр не указан, значение по умолчанию не используется. |
| rcpath строка / обязательно | Указывает полный путь к файлу конфигурации на удаленном сервере. В случае использования относительного пути в качестве значения переменной, необходимо указать корневую папку для пользователя сервера. | |
| rcserverip строка / обязательно | Указывает IP-адрес удаленного сервера, откуда будет загружена резервная копия конфигурации. | |
| serverpassword строка / обязательно | Укажите пароль для сервера, относящегося к используемому протоколу. | |
| serverusername строка / обязательно | Укажите имя пользователя для сервера, относящегося к используемому протоколу. | |
| username строка / обязательно | Настраивает имя пользователя, используемое для аутентификации подключения к удаленному устройству. Значение параметра username используется для аутентификации сеанса SSH. В целом значение должно поступать из файла инвентаризации, но его также можно указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами Lenovo Network см. на сайте https://www.ansible.com/ansible-lenovo.
Примеры
Tasks : The following are examples of using the module cnos_rollback.
These are written in the main.yml file of the tasks directory.
---
- name: Test Rollback of config - Running config
cnos_rolback:
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
outputfile: "./results/test_rollback_{{ inventory_hostname }}_output.txt"
configType: running-config
protocol: "sftp"
serverip: "10.241.106.118"
rcpath: "/root/cnos/G8272-running-config.txt"
serverusername: "root"
serverpassword: "root123"
- name: Test Rollback of config - Startup config
cnos_rolback:
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
outputfile: "./results/test_rollback_{{ inventory_hostname }}_output.txt"
configType: startup-config
protocol: "sftp"
serverip: "10.241.106.118"
rcpath: "/root/cnos/G8272-startup-config.txt"
serverusername: "root"
serverpassword: "root123"
- name: Test Rollback of config - Running config - TFTP
cnos_rolback:
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
outputfile: "./results/test_rollback_{{ inventory_hostname }}_output.txt"
configType: running-config
protocol: "tftp"
serverip: "10.241.106.118"
rcpath: "/anil/G8272-running-config.txt"
serverusername: "root"
serverpassword: "root123"
- name: Test Rollback of config - Startup config - TFTP
cnos_rolback:
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
outputfile: "./results/test_rollback_{{ inventory_hostname }}_output.txt"
configType: startup-config
protocol: "tftp"
serverip: "10.241.106.118"
rcpath: "/anil/G8272-startup-config.txt"
serverusername: "root"
serverpassword: "root123"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| msg строка | всегда | Сообщение об успехе или ошибке Пример: Файл конфигурации передан устройству |
Авторы
- 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/cnos_rollback_module.html