cnos_image — Выполнение обновления/загрузки прошивки с удалённого сервера на устройствах с Lenovo CNOS
Новая версия с 2.3.
Описание
- Этот модуль позволяет работать с изображениями прошивки коммутаторов. Он предоставляет способ загрузки изображения прошивки на сетевое устройство с удалённого сервера с использованием протоколов FTP, SFTP, TFTP или SCP. Первым шагом является создание каталога, с которого можно получить доступ к удалённому серверу. Следующим шагом является указание полного пути к файлу изображения. Также необходимо указать данные аутентификации, требуемые удалённым сервером. По умолчанию этот метод делает загруженное изображение прошивки активным, которое будет использоваться коммутатором при следующем перезапуске. Этот модуль использует SSH для управления конфигурацией сетевых устройств. Результаты операции будут помещены в каталог с именем «results», который должен быть создан пользователем в локальном каталоге, где выполняется исполняемый файл. Для получения дополнительной информации об этом модуле от Lenovo и настройки его использования для ваших задач, посетите http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_image.html
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| deviceType обязательно (добавлен в 2.3) |
Нет | Указывает тип устройства, на котором выполняется метод. Варианты NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлены с версии 2.4 |
| enablePassword (добавлен в 2.3) | Значение по умолчанию: Нет | Настраивает пароль, используемый для входа в режим глобальной конфигурации коммутатора. Если коммутатор не запрашивает этот пароль, параметр игнорируется. В целом, значение должно поступать из файла инвентаризации, но его можно также указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
| host обязательно (добавлен в 2.3) | Значение по умолчанию: Нет | Эта переменная используется для поиска файла хостов в /etc/ansible/hosts и определения IP-адреса устройства, к которому будет применена конфигурация. Обычно в Ansible-скрипте используется ключевое слово {{ inventory_hostname }} в качестве абстракции группы сетевых элементов, которые необходимо настроить. |
| imgpath обязательно | Значение по умолчанию: Нет | Указывает полный путь к изображению на удалённом сервере. Если используется относительный путь в качестве значения переменной, необходимо указать корневой каталог для пользователя сервера. |
| imgtype обязательно |
Нет | Указывает тип изображения прошивки для загрузки |
| outputfile обязательно (добавлен в 2.3) | Значение по умолчанию: Нет | Указывает путь к файлу, в который сохраняется вывод каждого выполнения команды. Здесь сохраняются как команды, указанные в объединённом файле шаблона, так и ответы от устройства. Обычно используется каталог results, но вы можете выбрать другое местоположение в зависимости от прав записи. |
| password обязательно (добавлен в 2.3) | Значение по умолчанию: Нет | Настраивает пароль, используемый для аутентификации подключения к удалённому устройству. Значение параметра password используется для аутентификации сессии SSH. В целом, значение должно поступать из файла инвентаризации, но его можно также указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
| protocol обязательно |
Нет | Определяет протокол, используемый сетевым устройством для взаимодействия с удалённым сервером, с которого загружается изображение прошивки. Доступны FTP, SFTP, TFTP или SCP. Любой другой протокол приведёт к ошибке. Если этот параметр не указан, значение по умолчанию не будет использоваться. |
| serverip обязательно | Значение по умолчанию: Нет | Указывает IP-адрес удалённого сервера, с которого будет загружено изображение программного обеспечения. |
| serverpassword | Значение по умолчанию: Нет | Укажите пароль для сервера, относящегося к используемому протоколу. |
| serverusername обязательно | Значение по умолчанию: Нет | Укажите имя пользователя для сервера, относящегося к используемому протоколу. |
| username обязательно (добавлен в 2.3) | Значение по умолчанию: Нет | Настраивает имя пользователя, используемое для аутентификации подключения к удалённому устройству. Значение параметра username используется для аутентификации сессии SSH. В целом, значение должно поступать из файла инвентаризации, но его можно также указать как переменную. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться. |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами Lenovo см. на https://www.ansible.com/ansible-lenovo.
Примеры
Tasks : The following are examples of using the module cnos_image. These are written in the main.yml file of the tasks directory.
---
- name: Test Image transfer
cnos_image:
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_image_{{ inventory_hostname }}_output.txt"
protocol: "sftp"
serverip: "10.241.106.118"
imgpath: "/root/cnos_images/G8272-10.1.0.112.img"
imgtype: "os"
serverusername: "root"
serverpassword: "root123"
- name: Test Image tftp
cnos_image:
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_image_{{ inventory_hostname }}_output.txt"
protocol: "tftp"
serverip: "10.241.106.118"
imgpath: "/anil/G8272-10.2.0.34.img"
imgtype: "os"
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.5/modules/cnos_image_module.html