cisco.nxos.nxos_file_copy 模块 – 将文件复制到远程 NXOS 设备。
注意
此模块是 cisco.nxos 集合(版本 9.2.1)的一部分。
如果您正在使用 ansible
包,您可能已经安装了这个集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install cisco.nxos
。您需要更多要求才能使用此模块,请参阅要求了解详情。
要在 playbook 中使用它,请指定:cisco.nxos.nxos_file_copy
。
cisco.nxos 1.0.0 中的新增功能
概要
此模块支持两种不同的工作流程,用于将文件复制到 NXOS 设备上的闪存(或启动闪存)。文件可以(1)从 Ansible 控制器推送到设备,或(2)从远程 SCP 文件服务器拉取到设备。文件复制是从 NXOS 设备启动到远程 SCP 服务器的。此模块仅支持使用连接
network_cli
或Cli
传输以及连接local
。
要求
执行此模块的主机需要满足以下要求。
paramiko 或 libssh(当 file_pull 为 False 时需要)
scp(当 file_pull 为 False 时需要)
参数
参数 |
注释 |
---|---|
已弃用 此选项已被弃用,将在 2024-06-01 之后的版本中删除。 为了保持向后兼容性,在删除之前,此选项将继续覆盖 ansible_port 的值。 <hr> 用于文件传输的 SSH 服务器端口。 仅当 file_pull 为 默认值: |
|
当 (False) 文件从 Ansible 控制器复制到 NXOS 设备。 当 (True) 文件从远程 SCP 服务器复制到 NXOS 设备。在此模式下,文件复制是从 NXOS 设备启动的。 如果文件已存在于设备上,它将被覆盖,因此操作不是幂等的。 选项
|
|
当 file_pull 为 True 时,此选项用于压缩 nxos 镜像文件。此选项只能与 nxos 镜像文件一起使用。 当 (file_pull 为 False) 时,不使用此选项。 选项
|
|
当 file_pull 为 True 时,当 nxos 正在运行的镜像支持 use-kstack 选项时,可以使用此选项来加速文件复制。 当 (file_pull 为 False) 时,不使用此选项。 选项
|
|
当 file_pull 为 True 时,可以使用此选项定义将文件从远程复制到 NXOS 设备的传输协议。 当 (file_pull 为 False) 时,不使用此选项。 选项
|
|
已弃用 此选项已被弃用,将在 2024-06-01 之后的版本中删除。 为了保持向后兼容性,在删除之前,此选项将继续覆盖 ansible_command_timeout 的值。 <hr> 当传输大文件或网络速度较慢时,使用此参数设置超时时间(以秒为单位)。 当 (file_pull 为 False) 时,不使用此选项。 默认值: |
|
nxos 设备上的远程文件系统。如果省略,支持 file_system 参数的设备将使用其默认值。 默认值: |
|
当 (file_pull 为 False) 时,这是 Ansible 控制器上本地文件的路径。本地目录必须存在。 当 (file_pull 为 True) 时,这是 NXOS 设备上的目标文件名。 |
|
当 (file_pull 为 True) 文件从远程 SCP 服务器复制到 NXOS 设备,并写入 NXOS 设备上的此目录。如果该目录不存在,则将在 file_system 下创建。这是一个可选参数。 当 (file_pull 为 False) 时,不使用此选项。 |
|
当 (file_pull 为 False) 时,这是 NXOS 设备上的远程文件路径。如果省略,将使用本地文件名。远程目录必须存在。 当 (file_pull 为 True) 时,这是要复制到 NXOS 设备的远程 SCP 服务器上文件的完整路径。 |
|
当 file_pull 为 True 时,远程 scp 服务器地址。如果 file_pull 为 True,则此参数是必需的。 当 (file_pull 为 False) 时,不使用此选项。 |
|
当 file_pull 为 True 时,远程 scp 服务器密码。如果 file_pull 为 True,则此参数是必需的。 当 (file_pull 为 False) 时,不使用此选项。 |
|
当 file_pull 为 True 时,远程 scp 服务器用户名。如果 file_pull 为 True,则此参数是必需的。 当 (file_pull 为 False) 时,不使用此选项。 |
|
用于拉取文件的 VRF。当未定义 vrf 管理时很有用。 此选项不适用于 MDS 交换机。 默认值: |
备注
注意
已针对 NXOS 7.0(3)I2(5), 7.0(3)I4(6), 7.0(3)I5(3), 7.0(3)I6(1), 7.0(3)I7(3), 6.0(2)A8(8), 7.0(3)F3(4), 7.3(0)D1(1), 8.3(0), 9.2, 9.3 进行测试。
对 Cisco MDS 的支持有限
当将文件推送 (file_pull 为 False) 到 NXOS 设备时,必须启用功能 scp-server。
当将文件拉取 (file_pull 为 True) 到 NXOS 设备时,不需要功能 scp-server。
当将文件拉取 (file_pull 为 True) 到 NXOS 设备时,如果文件已存在,则不会进行传输。
检查模式会告诉您是否会复制该文件。
有关使用 CLI 和 NX-API 的信息,请参阅 :ref:`NXOS 平台选项指南 <nxos_platform_options>`
有关使用 Ansible 管理网络设备的更多信息,请参阅 :ref:`Ansible 网络指南 <network_guide>`
有关使用 Ansible 管理 Cisco 设备的更多信息,请参阅 `Cisco 集成页面 <https://ansible.org.cn/integrations/networks/cisco>`_。
示例
# File copy from ansible controller to nxos device
- name: copy from server to device
cisco.nxos.nxos_file_copy:
local_file: ./test_file.txt
remote_file: test_file.txt
# Initiate file copy from the nxos device to transfer file from an SCP server back to the nxos device
- name: initiate file copy from device
cisco.nxos.nxos_file_copy:
file_pull: true
local_file: xyz
local_file_directory: dir1/dir2/dir3
remote_file: /mydir/abc
remote_scp_server: 192.168.0.1
remote_scp_server_user: myUser
remote_scp_server_password: myPassword
vrf: management
# Initiate file copy from the nxos device to transfer file from a ftp server back to the nxos device.
# remote_scp_server_user and remote_scp_server_password are used to login to the FTP server.
- name: initiate file copy from device
cisco.nxos.nxos_file_copy:
file_pull: true
file_pull_protocol: ftp
local_file: xyz
remote_file: /mydir/abc
remote_scp_server: 192.168.0.1
remote_scp_server_user: myUser
remote_scp_server_password: myPassword
vrf: management
返回值
通用返回值在此处记录 此处,以下是此模块独有的字段
键 |
描述 |
---|---|
指示文件是否被复制。 返回: 成功 示例: |
|
本地文件的路径。 返回: 成功 示例: |
|
远程文件的路径。 返回: 成功 示例: |
|
当 file_pull 为 True 时,scp 服务器的名称。 返回: 成功 示例: |
|
是否将文件传输到 nxos 设备。 返回: 成功 示例: |