junipernetworks.junos.junos_package – Устанавливает пакеты на удалённые устройства, работающие под управлением Junos
Примечание
Этот плагин входит в состав коллекции junipernetworks.junos (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install junipernetworks.junos.
Для использования в книге задач, укажите: junipernetworks.junos.junos_package.
Добавлено в версии 1.0.0: модуля junipernetworks.junos
Описание
- Этот модуль может устанавливать новые и обновлённые пакеты на удалённые устройства, работающие под управлением Junos. Модуль сравнит указанный пакет с установленным на удалённом устройстве и установит указанную версию, если они не совпадают.
Примечание
У этого модуля есть соответствующий плагин действий.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- junos-eznc
- ncclient (>=v0.5.2)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| force boolean |
| Аргумент force инструктирует модуль пропустить проверку версии пакета и установить пакет, указанный в src, на удалённом устройстве. | |
| force_host boolean |
| Аргумент force_host управляет способом добавления программного пакета или пакета на удалённом хосте JUNOS и применим к устройству JUNOS QFX5100. Если значение установлено в True, оно проигнорирует любые предупреждения при добавлении программного пакета или пакета на хост. | |
| issu boolean |
| Аргумент issu — это логический флаг, при установке его в True, он позволяет использовать функцию унифицированного обновления программного обеспечения во время работы (ISSU), которая позволяет обновлять две различные версии Junos OS без прерывания управляющей плоскости и с минимальным прерыванием трафика. | |
| no_copy boolean |
| Аргумент no_copy отвечает за указание удалённому устройству, откуда установить пакет. При включении пакет передаётся на удалённое устройство до его установки. | |
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli или connection: netconf. Дополнительную информацию см. в руководстве Junos OS Platform Options. Объект словаря, содержащий данные подключения. | ||
| host строка | Указывает имя или адрес хоста DNS для подключения к удалённому устройству через указанный транспорт. Значение параметра host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| port целое число | Указывает порт для подключения к удалённому устройству. Значение порта по умолчанию равно общеизвестному порту SSH 22 (для transport=cli) или 830 (для transport=netconf) устройства. | ||
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | Указывает время ожидания в секундах для связи с сетевым устройством для подключения или отправки команд. Если время ожидания истечёт, прежде чем операция будет завершена, модуль выдаст ошибку. | ||
| transport строка |
| Настраивает транспортное соединение для подключения к удалённому устройству. | |
| username строка | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной среды ANSIBLE_NET_USERNAME. | ||
| reboot boolean |
| Для того, чтобы пакет вступил в силу, необходимо перезапустить удалённое устройство. При включении этого аргумента модуль перезагрузит устройство после установки обновлённого пакета. Если этот аргумент выключен или удалённый пакет не требуется изменять, устройство не будет перезапущено. | |
| src путь / обязательно | Аргумент src указывает путь к исходному пакету, который должен быть установлен на удалённом устройстве в случае несоответствия версий. Аргумент src может быть локальным путём или полным путём к файлу пакета для установки. псевдонимы: package | ||
| ssh_config путь | Аргумент ssh_config — путь к файлу конфигурации SSH. Это можно использовать для загрузки информации SSH из файла конфигурации. Если этот параметр не указан, по умолчанию запрашивается ~/.ssh/config. | ||
| ssh_private_key_file путь | Аргумент ssh_private_key_file — путь к файлу закрытого ключа SSH. Это можно использовать, если необходимо предоставить закрытый ключ вместо загрузки ключа в ssh-key-ring/среду. | ||
| validate boolean |
| Аргумент validate отвечает за указание удалённому устройству пропустить проверку совместимости текущей конфигурации устройства с устанавливаемым пакетом. При установке в значение false проверка не выполняется. | |
| version строка | Аргумент version можно использовать для явного указания версии пакета, который должен быть установлен на удалённом устройстве. Если аргумент version не указан, версия извлекается из имени файла src. | ||
Примечания
Примечание
- Этот модуль требует, чтобы служба netconf была включена на управляемом удалённом устройстве.
- Проверено на vSRX JUNOS версии 15.1X49-D15.4, vqfx-10000 JUNOS версии 15.1X53-D60.4.
- Работает только с подключениями
local. - Поскольку этот модуль использует junos-eznc для подключения к устройству junos, параметры конфигурации netconf необходимо передавать с помощью параметров модуля, например,
ssh_config, в отличие от других модулей junos, использующих тип подключенияnetconf. - Дополнительную информацию об использовании CLI и netconf см. в руководстве Junos OS Platform Options
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
- Дополнительную информацию об использовании Ansible для управления устройствами Juniper см. на сайте https://www.ansible.com/ansible-juniper.
Примеры
# the required set of connection arguments have been purposely left off
# the examples for brevity
- name: install local package on remote device
junipernetworks.junos.junos_package:
src: junos-vsrx-12.1X46-D10.2-domestic.tgz
- name: install local package on remote device without rebooting
junipernetworks.junos.junos_package:
src: junos-vsrx-12.1X46-D10.2-domestic.tgz
reboot: no
- name: install local package on remote device with jumpost
junipernetworks.junos.junos_package:
src: junos-vsrx-12.1X46-D10.2-domestic.tgz
ssh_config: /home/user/customsshconfig
Авторы
- Peter Sprygada (@privateip)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/junipernetworks/junos/junos_package_module.html