nxos_install_os — Установка операционной системы, настройка параметров загрузки, таких как образ загрузки и образ инициализации.
Новая версия 2.2.
Обзор
- Установка операционной системы путем настройки параметров загрузки, таких как образ загрузки и образ инициализации.
Параметры
| Параметр | Обязательно | Значение по умолчанию | Допустимые значения | Комментарии |
|---|---|---|---|---|
| auth_pass (добавлен в 2.4.4)
|
Нет | Нет | Указывает пароль для входа в привилегированный режим на удаленном устройстве, если это необходимо. Если authorize равно false, этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. |
|
| authorize (добавлен в 2.4.4)
|
Нет |
|
Инструктирует модуль войти в привилегированный режим на удаленном устройстве перед отправкой каких-либо команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. |
|
| host |
Да | Указывает имя хоста DNS или адрес для подключения к удаленному устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. |
||
| kickstart_image_file |
Нет | Имя файла образа инициализации на флэшке. |
||
| password |
Нет | Указывает пароль для аутентификации подключения к удаленному устройству. Этот аргумент обычно используется для транспортов cli или nxapi. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. |
||
| port |
Нет | 0 (использовать стандартный порт) | Указывает порт для подключения к удаленному устройству. Это значение применимо к cli или nxapi. Значение порта по умолчанию соответствует стандартному порту для указанного транспорта, если не указано в задаче (cli=22, http=80, https=443). |
|
| provider |
Нет | Удобный метод, позволяющий передавать все аргументы nxos в виде объекта словаря. Все ограничения (обязательность, допустимые значения и т. д.) должны быть соблюдены либо отдельными аргументами, либо значениями в этом словаре. |
||
| ssh_keyfile |
Нет | Указывает SSH-ключ для аутентификации подключения к удаленному устройству. Этот аргумент используется только для транспорта cli. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. |
||
| system_image_file |
Да | Имя файла системного (или комбинированного) образа на флэшке. |
||
| timeout (добавлен в 2.3)
|
Нет | 10 | Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут истекает до завершения операции, модуль выдаст ошибку. NX-API может медленно отвечать при длительных командах (sh mac, sh bgp и т. д.). |
|
| transport |
Да | cli | Настраивает транспортное соединение для подключения к удаленному устройству. Аргумент transport поддерживает подключение к устройству через cli (ssh) или nxapi. |
|
| use_ssl |
Нет |
|
Настраивает transport для использования SSL, если значение равно true только когда transport=nxapi, в противном случае это значение игнорируется. |
|
| username |
Нет | Указывает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. |
||
| validate_certs |
Нет |
|
Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых вами сайтах, использующих самозаверенные сертификаты. Если аргумент transport не является nxapi, это значение игнорируется. |
Примеры
- block:
- name: Install OS
nxos_install_os:
system_image_file: nxos.7.0.3.I2.2d.bin
rescue:
- name: Wait for device to perform checks
wait_for:
port: 22
state: stopped
timeout: 300
delay: 60
- name: Wait for device to come back up
wait_for:
port: 22
state: started
timeout: 300
delay: 60
- name: Check installed OS
nxos_command:
commands:
- show version
register: output
- assert:
that:
- output['stdout'][0]['kickstart_ver_str'] == '7.0(3)I4(1)'
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| Имя | Описание | Возвращается | Тип | Пример |
|---|---|---|---|---|
| install_state | Информация о загрузке и установке. |
всегда | словарь | {'sys': 'n5000-uk9.7.2.1.N1.1.bin', 'status': 'Это журнал последней установки.\nПродолжение процесса установки, ожидайте.\nВход будет отключен до завершения установки.\nПроверка состояния супервизора.\nУспешно\nУспешное обновление супервизора без перерывов.\nУстановка выполнена успешно. ', 'kick': 'n5000-uk9-kickstart.7.2.1.N1.1.bin'} |
Примечания
Примечание
- Проверено на NXOSv 7.3.(0)D1(1) на VIRL
- Модуль завершится ошибкой из-за проблем с таймаутом, но установка все равно продолжится. Можно использовать блокировку и восстановление Ansible для обработки такого рода ошибок и проверки фактических результатов модуля. См. ПРИМЕР для получения дополнительной информации об этом. Первая задача в блоке восстановления необходима для того, чтобы убедиться, что устройство завершило все проверки и начало перезагрузку. Вторая задача необходима для ожидания возвращения устройства в рабочее состояние. Последние две задачи используются для проверки успешности процесса установки.
- Не включайте полные пути к файлам, а только имена файлов, хранящихся в верхнем каталоге флэшки.
- Вы должны знать, поддерживает ли ваша платформа использование образа инициализации в качестве параметра. Если он предоставлен, но не поддерживается, могут возникнуть ошибки.
- Этот модуль пытается установить программное обеспечение немедленно, что может привести к перезагрузке.
- В режиме проверки модуль сообщает, установлены ли текущие образы загрузки в желаемые образы.
Статус
Этот модуль помечен как бета-версия, что означает, что гарантированно совместимость с предыдущими версиями не поддерживается.
Информация о техническом обслуживании
Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>.
Для получения помощи в разработке модулей, если вас это интересует, ознакомьтесь со статьей Информация о сообществе и внесение изменений, Тестирование 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/nxos_install_os_module.html