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-адреса устройства, к которому будет применена конфигурация. Обычно в playbook используется ключевое слово Ansible {{ inventory_hostname }} как абстракция группы сетевых элементов, которые необходимо настроить. | ||
| outputfile (добавлено в 2.3)
| да | Это указывает путь к файлу, в котором сохраняется вывод каждого выполнения команды. Здесь сохраняются каждая команда, указанная в объединённом файле шаблона, и каждый ответ от устройства. Обычно это папка results, но вы можете выбрать другое местоположение в зависимости от прав записи. | ||
| password (добавлено в 2.3)
| да | Настраивает пароль, используемый для аутентификации подключения к удалённому устройству. Значение параметра password используется для аутентификации сеанса SSH. Как правило, значение должно поступать из файла инвентаризации, но вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. | ||
| protocol | да |
| Это относится к протоколу, используемому сетевым устройством для взаимодействия с удалённым сервером, откуда загружается резервная копия конфигурации. Допустимые варианты — FTP, SFTP, TFTP или SCP. Любые другие протоколы приведут к ошибке. Если этот параметр не указан, значение по умолчанию не используется. | |
| rcpath | да | Это указывает полный путь к файлу конфигурации, расположенному на удалённом сервере. В случае использования относительного пути в качестве значения переменной необходимо указать корневую папку для пользователя сервера. | ||
| rcserverip | да | Это указывает IP-адрес удалённого сервера, откуда будет загружена резервная копия конфигурации. | ||
| serverpassword | да | Укажите пароль для сервера, относящегося к используемому протоколу. | ||
| serverusername | да | Укажите имя пользователя для сервера, относящегося к используемому протоколу. | ||
| username (добавлено в 2.3)
| да | Настраивает имя пользователя, используемое для аутентификации подключения к удалённому устройству. Значение параметра username используется для аутентификации сеанса SSH. Как правило, значение должно поступать из файла инвентаризации, но вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
Примеры
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]['username'] }}"
password: "{{ hostvars[inventory_hostname]['password'] }}"
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]['username'] }}"
password: "{{ hostvars[inventory_hostname]['password'] }}"
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]['username'] }}"
password: "{{ hostvars[inventory_hostname]['password'] }}"
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]['username'] }}"
password: "{{ hostvars[inventory_hostname]['password'] }}"
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"
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| msg | Сообщение об успехе или об ошибке | всегда | строка | Файл конфигурации передан устройству |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.
Для получения помощи в разработке модулей, если вы так решите, пожалуйста, прочитайте Информация о сообществе и участие в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/cnos_rollback_module.html