cnos_rollback – Восстановление конфигурации работающего или начального устройства с удалённого сервера на устройствах, работающих под управлением Lenovo CNOS
Описание
- Этот модуль позволяет работать с конфигурациями коммутаторов. Он предоставляет способ восстановления конфигурации коммутатора с удалённого сервера. Это достигается путём использования конфигураций «рабочего» или «начального» состояния целевого устройства, которые были ранее резервными копированы на удалённый сервер с использованием FTP, SFTP, TFTP или SCP. Первым шагом является создание каталога, откуда можно обратиться к удалённому серверу. Следующим шагом является указание полного пути к файлу резервной копии конфигурации. Также необходимо предоставить данные об аутентификации, необходимые удалённому серверу. По умолчанию этот метод перезаписывает файл конфигурации коммутатора новым загруженным файлом. Этот модуль использует SSH для управления конфигурацией сетевого устройства. Результаты операции будут помещены в каталог с именем «results», который должен быть создан пользователем в локальном каталоге, где выполняется плейбук.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| configType - / обязательно |
null | Это относится к типу конфигурации, которая будет использована для процесса восстановления. Варианты — конфигурации «рабочего» или «начального» состояния. Значения по умолчанию нет, поэтому неправильный ввод приведёт к ошибке. |
| deviceType строка / обязательно |
| Это определяет тип устройства, на котором выполняется метод. Выбор NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлен начиная с Ansible 2.4. Выбор NE0152T добавлен начиная с 2.8. |
| enablePassword строка | Настраивает пароль для входа в режим глобальной конфигурации коммутатора. Если коммутатор не требует этого пароля, параметр игнорируется. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. | |
| host строка / обязательно | Эта переменная используется для поиска файла hosts в /etc/ansible/hosts и определения IP-адреса устройства, к которому будет применена шаблон. Обычно в плейбуке используется ключевое слово Ansible {{ inventory_hostname }} для абстрагирования группы сетевых элементов, которые нужно настроить. | |
| outputfile строка / обязательно | Указывает путь к файлу, в котором сохраняется вывод каждого выполненного командного запроса. Здесь сохраняются все команды, указанные в объединённом файле шаблона, и все ответы от устройства. Обычно расположение — папка results, но вы можете выбрать другое место в зависимости от ваших прав записи. | |
| password строка / обязательно | Настраивает пароль, используемый для аутентификации подключения к удалённому устройству. Значение параметра password используется для аутентификации сеанса SSH. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. | |
| protocol - / обязательно |
null | Это относится к протоколу, используемому сетевым устройством для взаимодействия с удалённым сервером, откуда загружается резервная копия конфигурации. Возможны варианты FTP, SFTP, TFTP или SCP. Любые другие протоколы приведут к ошибке. Если этот параметр не указан, значение по умолчанию не используется. |
| rcpath - / обязательно | Значение по умолчанию: null | Указывает полный путь к файлу конфигурации, расположенному на удалённом сервере. В случае использования относительного пути в качестве значения переменной необходимо указать корневую папку для пользователя сервера. |
| rcserverip - / обязательно | Значение по умолчанию: null | Указывает IP-адрес удалённого сервера, откуда будет загружена резервная копия конфигурации. |
| serverpassword - / обязательно | Значение по умолчанию: null | Укажите пароль для сервера, относящегося к используемому протоколу. |
| serverusername - / обязательно | Значение по умолчанию: null | Укажите имя пользователя для сервера, относящегося к используемому протоколу. |
| username строка / обязательно | Настраивает имя пользователя, используемое для аутентификации подключения к удалённому устройству. Значение параметра username используется для аутентификации сеанса SSH. Хотя обычно значение должно поступать из файла инвентаризации, вы также можете указать его как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не используется. |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами Lenovo см. на сайте 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 строка | всегда | Сообщение об успехе или ошибке Пример: Файл конфигурации передан устройству |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.9/modules/cnos_rollback_module.html