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 设备时,必须启用 feature scp-server。
当将文件拉取(file_pull 为 True)到 NXOS 设备时,不需要 feature 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 设备。 返回: 成功 示例: |