nxos_install_os – Настройка параметров загрузки, таких как образ загрузки, образ kickstart и ISSU
Новая версия 2.2.
Обзор
- Установка операционной системы путём настройки параметров загрузки, таких как образ загрузки и образ kickstart, а также необязательно выбор установки с использованием ISSU (In Server Software Upgrade).
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| issu - добавлен в 2.5 |
| Обновление с использованием In Service Software Upgrade (ISSU). (Поддерживается на платформах N5k, N7k, N9k) Выбор «обязательно» или «да» означает, что обновления будут продолжены только если коммутатор поддерживает ISSU. Выбор «желательно» означает, что обновления будут использовать ISSU, если возможно, но откажутся к прерывистому обновлению, если необходимо. Выбор «нет» означает, что ISSU не использовать. Принудительное прерывистое обновление. | |
| kickstart_image_file - | Имя файла образа kickstart на флэш-памяти. (Не требуется на всех платформах Nexus) | ||
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуем использовать connection: network_cli. Этот параметр необходим только если вы используете NX-API. Для получения дополнительной информации см. руководство NXOS Platform Options. Объект словаря, содержащий данные подключения. | ||
| auth_pass строка добавлен в 2.5.3 | Указывает пароль, который необходимо использовать, если требуется вход в привилегированный режим на удалённом устройстве. Если authorize ложно, этот аргумент ничего не делает. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize булево добавлен в 2.5.3 |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| host строка / обязательно | Указывает имя DNS-хоста или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Это общий аргумент, используемый для транспортов cli или nxapi. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | По умолчанию: "0 (использовать общий порт)" | Указывает порт для подключения к удалённому устройству. Это значение относится к транспорту cli или nxapi. Значение порта будет по умолчанию соответствовать общему порту транспорта, если в задаче не указано другое. (cli=22, http=80, https=443). | |
| ssh_keyfile строка | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспорта cli. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число добавлен в 2.3 | По умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль вернёт ошибку. NX-API может медленно возвращать результаты при выполнении длительных команд (sh mac, sh bgp и т. д.). | |
| transport строка / обязательно |
| Настраивает транспортное соединение для подключения к удалённому устройству. Аргумент transport поддерживает подключение к устройству по cli (ssh) или nxapi. | |
| use_proxy булево добавлен в 2.5 |
| Если no, переменные окружения http_proxy и https_proxy будут игнорироваться. | |
| use_ssl булево |
| Настраивает transport на использование SSL, если установлено значение yes, только когда transport=nxapi, в противном случае это значение игнорируется. | |
| username строка | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| validate_certs булево |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах, контролируемых лично, использующих самозаверяющие сертификаты. Если аргумент transport не nxapi, это значение игнорируется. | |
| system_image_file - / обязательно | Имя файла системного (или объединённого) образа на флэш-памяти. | ||
Примечания
Примечание
- Проверено на следующих платформах и изображениях - N9k 7.0(3)I4(6), 7.0(3)I5(3), 7.0(3)I6(1), 7.0(3)I7(1), 7.0(3)F2(2), 7.0(3)F3(2) - N3k 6.0(2)A8(6), 6.0(2)A8(8), 7.0(3)I6(1), 7.0(3)I7(1) - N7k 7.3(0)D1(1), 8.0(1), 8.1(1), 8.2(1)
- Для этого модуля необходимо установить таймеры ANSIBLE_PERSISTENT_CONNECT_TIMEOUT и ANSIBLE_PERSISTENT_COMMAND_TIMEOUT на 600 секунд или больше. Модуль завершит работу, если таймеры не установлены должным образом.
- При использовании подключения local, ANSIBLE_PERSISTENT_CONNECT_TIMEOUT и ANSIBLE_PERSISTENT_COMMAND_TIMEOUT могут быть установлены только с помощью переменных среды или файла ansible.cfg.
- Не включайте полные пути к файлам, укажите только имя файла(ов), хранящегося в корневом каталоге флэш-памяти.
- Этот модуль пытается установить программное обеспечение немедленно, что может привести к перезагрузке.
- В режиме проверки модуль покажет, требуется ли обновление и будет ли обновление прерывистым или нет (ISSU).
- Для получения информации об использовании CLI и NX-API см. руководство NXOS Platform Options.
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide.
- Для получения дополнительной информации об использовании Ansible для управления устройствами Cisco см. страницу интеграции Cisco Cisco integration page.
Примеры
- name: Install OS on N9k
check_mode: no
nxos_install_os:
system_image_file: nxos.7.0.3.I6.1.bin
issu: desired
- name: Wait for device to come back up with new image
wait_for:
port: 22
state: started
timeout: 500
delay: 60
host: "{{ inventory_hostname }}"
- name: Check installed OS for newly installed version
nxos_command:
commands: ['show version | json']
provider: "{{ connection }}"
register: output
- assert:
that:
- output['stdout'][0]['kickstart_ver_str'] == '7.0(3)I6(1)'
Возвращаемые значения
Общие возвращаемые значения описаны в разделе здесь, ниже приведены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| install_state словарь | всегда | Информация о загрузке и установке. Пример: {'install_state': ['Проверка совместимости выполнена:', 'Модуль загрузочный Влияние Установка Тип Причина', '------ -------- -------------- ------------ ------', ' 1 да нет перевода ', 'Изображения будут обновлены в соответствии со следующей таблицей:', 'Модуль Изображение Текущая версия(приоритет:альтернатива) Новая версия Требуется обновление', '------ ---------- ---------------------------------------- -------------------- ------------', ' 1 nxos 7.0(3)I6(1) 7.0(3)I7(1) да', ' 1 bios v4.4.0(07/12/2017) v4.4.0(07/12/2017) нет']} |
Статус
- Данный модуль не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается командой Ansible по работе с сетями. [сеть]
Поддержка Red Hat
Дополнительную информацию о поддержке данного модуля Red Hat можно найти в этой статье базы знаний Red Hat.
Авторы
- Jason Edelman (@jedelman8)
- Gabriele Gerbibo (@GGabriele)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/nxos_install_os_module.html