junipernetworks.junos.junos_package 模块 – 在运行 Junos 的远程设备上安装软件包
注意
此模块是 junipernetworks.junos 集合(版本 9.1.0)的一部分。
如果您使用的是 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install junipernetworks.junos
。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求。
要在 playbook 中使用它,请指定:junipernetworks.junos.junos_package
。
junipernetworks.junos 1.0.0 中的新功能
概要
此模块可以在运行 Junos 的远程设备上安装新的和更新的软件包。该模块会将指定的软件包与远程设备上运行的软件包进行比较,如果存在不匹配,则安装指定的版本
要求
在执行此模块的主机上需要以下要求。
junos-eznc
ncclient (>=v0.5.2)
参数
参数 |
注释 |
---|---|
force 参数指示模块绕过软件包版本检查,并在远程设备上安装 src 中标识的软件包。 选择
|
|
force_host 参数控制在远程 JUNOS 主机上添加软件包或捆绑包的方式,并且适用于 JUNOS QFX5100 设备。如果该值设置为 选择
|
|
当 issu 参数设置为 选择
|
|
no_copy 参数负责指示远程设备从何处安装软件包。启用后,软件包将在安装之前传输到远程设备。 选择
|
|
已弃用 从 Ansible 2.5 开始,我们建议使用 有关详细信息,请参阅 Junos OS 平台选项指南。 <hr> 包含连接详细信息的字典对象。 |
|
指定 DNS 主机名或地址,以便通过指定的传输连接到远程设备。主机的值用作传输的目标地址。 |
|
指定用于验证与远程设备连接的密码。此值用于验证 SSH 会话。如果未在任务中指定该值,则将改为使用环境变量 |
|
指定在建立与远程设备的连接时使用的端口。端口值将默认为众所周知的 SSH 端口 22(对于 |
|
指定用于验证与远程设备连接的 SSH 密钥。此值是用于验证 SSH 会话的密钥的路径。如果未在任务中指定该值,则将改为使用环境变量 |
|
指定与网络设备通信的超时时间(以秒为单位),用于连接或发送命令。如果在操作完成之前超过超时时间,模块将出错。 |
|
配置连接到远程设备时使用的传输连接。 选择
|
|
配置用于验证与远程设备连接的用户名。此值用于验证 SSH 会话。如果未在任务中指定该值,则将改为使用环境变量 |
|
为了使软件包生效,必须重新启动远程设备。启用后,此参数将指示模块在安装更新的软件包后重新启动设备。如果禁用或远程软件包不需要更改,则不会启动设备。 选择
|
|
src 参数指定在版本不匹配的情况下要安装在远程设备上的源软件包的路径。src 参数可以是本地化路径,也可以是要安装的软件包文件的完整路径。 |
|
|
|
|
|
unlink 参数负责指示远程设备在安装后删除安装包。 选择
|
|
validate 参数负责指示远程设备跳过检查当前设备配置与正在安装的软件包的兼容性。设置为 false 时,不执行验证。 选择
|
|
version 参数可以用于显式指定应在远程设备上安装的软件包版本。如果未指定 version 参数,则版本将从 src 文件名中提取。 |
注释
注意
此模块要求在被管理的远程设备上启用 netconf 系统服务。
已针对 vSRX JUNOS 版本 15.1X49-D15.4 和 vqfx-10000 JUNOS 版本 15.1X53-D60.4 进行测试。
仅适用于
local
连接。由于此模块使用 junos-eznc 与 junos 设备建立连接,因此需要使用模块选项传递 netconf 配置参数,例如
ssh_config
,这与其他使用netconf
连接类型的 junos 模块不同。有关使用 CLI 和 netconf 的信息,请参阅 :ref:`Junos OS 平台选项指南 <junos_platform_options>`。
有关使用 Ansible 管理网络设备的更多信息,请参阅 :ref:`Ansible 网络指南 <network_guide>`。
有关使用 Ansible 管理 Juniper 网络设备的更多信息,请参阅 https://ansible.org.cn/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: false
- 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