cnos_rollback - Откат конфигурации работающего или начального устройства с удаленного сервера на устройствах с Lenovo CNOS
Новая версия 2.3.
Описание
- Этот модуль позволяет работать с конфигурациями коммутаторов. Он предоставляет способ отката конфигураций коммутатора с удаленного сервера. Это достигается путем использования начальной или рабочей конфигурации целевого устройства, которые были ранее резервными копиями на удаленном сервере с использованием FTP, SFTP, TFTP или SCP. Первым шагом является создание каталога, из которого можно обратиться к удаленному серверу. Следующим шагом является предоставление полного пути к файлу резервной копии конфигурации. Также должны быть предоставлены учетные данные для аутентификации, необходимые удаленному серверу. По умолчанию этот метод перезаписывает файл конфигурации коммутатора новым загруженным файлом. Этот модуль использует SSH для управления конфигурацией сетевого устройства. Результаты операции будут помещены в каталог с именем «results», который должен быть создан пользователем в локальном каталоге, где выполняется playbook. Для получения дополнительной информации об этом модуле от Lenovo и его настройке для ваших вариантов использования, пожалуйста, посетите http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_rollback.html
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| configType обязательно |
Нет | Это относится к типу конфигурации, которая будет использоваться для процесса отката. Варианты — текущая или начальная конфигурация. Значение по умолчанию отсутствует, поэтому неправильный ввод приведёт к ошибке. |
| deviceType обязательно (добавлено в 2.3) |
Нет | Это указывает тип устройства, на котором выполняется метод. Варианты NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлены с версии 2.4 |
| enablePassword (добавлено в 2.3) | Значение по умолчанию: Нет | Настраивает пароль, используемый для входа в режим команд глобальной конфигурации на коммутаторе. Если коммутатор не запрашивает этот пароль, параметр игнорируется. В целом, значение должно поступать из файла инвентаризации, но вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
| host обязательно (добавлено в 2.3) | Значение по умолчанию: Нет | Эта переменная используется для поиска файла хостов в /etc/ansible/hosts и определения IP-адреса устройства, на которое будет применена шаблон. Обычно в плейбуке используется Ansible-ключевое слово {{ inventory_hostname }} как абстракция группы сетевых элементов, которые нужно настроить. |
| outputfile обязательно (добавлено в 2.3) | Значение по умолчанию: Нет | Указывает путь к файлу, где сохраняется вывод каждого выполненного команды. Здесь сохраняются каждая команда, указанная в объединённом файле шаблона, и каждый ответ от устройства. Обычно расположение находится в папке результатов, но вы можете выбрать другое место в зависимости от прав записи. |
| password обязательно (добавлено в 2.3) | Значение по умолчанию: Нет | Настраивает пароль, используемый для аутентификации подключения к удалённому устройству. Значение параметра password используется для аутентификации сессии SSH. В целом, значение должно поступать из файла инвентаризации, но вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
| protocol обязательно |
Нет | Это относится к протоколу, используемому сетевым устройством для взаимодействия с удалённым сервером, откуда загружается резервная конфигурация. Варианты — FTP, SFTP, TFTP или SCP. Любые другие протоколы приведут к ошибке. Если этот параметр не указан, значение по умолчанию не используется. |
| rcpath обязательно | Значение по умолчанию: Нет | Указывает полный путь к файлу конфигурации на удалённом сервере. В случае использования относительного пути в качестве значения переменной необходимо указать корневую папку для пользователя сервера. |
| rcserverip обязательно | Значение по умолчанию: Нет | Указывает IP-адрес удалённого сервера, откуда будет загружена резервная конфигурация. |
| serverpassword обязательно | Значение по умолчанию: Нет | Укажите пароль для сервера, относящегося к используемому протоколу. |
| serverusername обязательно | Значение по умолчанию: Нет | Укажите имя пользователя для сервера, относящегося к используемому протоколу. |
| Имя пользователя обязательно (добавлено в 2.3) | Значение по умолчанию: Нет | Настраивает имя пользователя, используемое для аутентификации подключения к удалённому устройству. Значение параметра имени пользователя используется для аутентификации сессии 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:
host: "{{ inventory_hostname }}"
username: "{{ hostvars[inventory_hostname]['ansible_ssh_user'] }}"
password: "{{ hostvars[inventory_hostname]['ansible_ssh_pass'] }}"
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
enablePassword: "{{ hostvars[inventory_hostname]['enablePassword'] }}"
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:
host: "{{ inventory_hostname }}"
username: "{{ hostvars[inventory_hostname]['ansible_ssh_user'] }}"
password: "{{ hostvars[inventory_hostname]['ansible_ssh_pass'] }}"
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
enablePassword: "{{ hostvars[inventory_hostname]['enablePassword'] }}"
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:
host: "{{ inventory_hostname }}"
username: "{{ hostvars[inventory_hostname]['ansible_ssh_user'] }}"
password: "{{ hostvars[inventory_hostname]['ansible_ssh_pass'] }}"
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
enablePassword: "{{ hostvars[inventory_hostname]['enablePassword'] }}"
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:
host: "{{ inventory_hostname }}"
username: "{{ hostvars[inventory_hostname]['ansible_ssh_user'] }}"
password: "{{ hostvars[inventory_hostname]['ansible_ssh_pass'] }}"
deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
enablePassword: "{{ hostvars[inventory_hostname]['enablePassword'] }}"
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"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| сообщение строка | всегда | Сообщение об успехе или ошибке Пример: Файл конфигурации передан устройству |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.
Автор
- 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.5/modules/cnos_rollback_module.html