community.vmware.vsphere_copy 模块 – 将文件复制到 VMware 数据存储
注意
此模块是 community.vmware 集合(版本 5.2.0)的一部分。
如果您正在使用 ansible
包,则您可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.vmware
。
要在 playbook 中使用它,请指定:community.vmware.vsphere_copy
。
概要
通过 vCenter REST API 将文件上传到 VMware 数据存储。
参数
参数 |
注释 |
---|---|
vCenter 服务器上保存数据存储的数据中心。 |
|
要将文件推送到的数据存储。 |
|
可选参数 - 为某些上传设置磁盘格式,例如流优化的 VMDK 没有官方文档,但看起来需要为上传到 vSAN 存储的流优化 VMDK 设置 为非 VMDK 文件设置此项可能会导致未定义的行为,并且不受支持。 选择
|
|
vSphere vCenter 或 ESXi 服务器的主机名或 IP 地址。 如果任务中未指定该值,则将改用环境变量 |
|
vSphere vCenter 或 ESXi 服务器的密码。 如果任务中未指定该值,则将改用环境变量 |
|
要推送到数据存储的文件。 |
|
将接收所有 HTTPS 请求并中继它们的 HTTP 代理的端口。 如果任务中未指定该值,则将改用环境变量 |
|
要推送到 vCenter 的文件。 |
|
上传到数据存储的超时时间(以秒为单位)。 默认值: |
|
vSphere vCenter 或 ESXi 服务器的用户名。 如果任务中未指定该值,则将改用环境变量 |
|
当 SSL 证书无效时允许连接。当证书不受信任时,设置为 如果任务中未指定该值,则将改用环境变量 选择
|
备注
注意
此模块应该从可以直接访问 vCenter 或 ESXi 并且具有要传输的文件的系统运行。它可以是正常的远程目标,或者您可以通过使用
transport: local
或使用delegate_to
来更改它。所有模块都需要 API 写入权限,因此在免费的 ESXi 许可证上不受支持。
所有变量和 VMware 对象名称都区分大小写。
示例
- name: Copy file to datastore using delegate_to
community.vmware.vsphere_copy:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
src: /some/local/file
datacenter: DC1 Someplace
datastore: datastore1
path: some/remote/file
delegate_to: localhost
- name: Copy file to datastore when datacenter is inside folder called devel
community.vmware.vsphere_copy:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
src: /some/local/file
datacenter: devel/DC1
datastore: datastore1
path: some/remote/file
delegate_to: localhost
- name: Copy file to datastore using other_system
community.vmware.vsphere_copy:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
src: /other/local/file
datacenter: DC2 Someplace
datastore: datastore2
path: other/remote/file
delegate_to: other_system
- name: Copy file to datastore using other_system
community.vmware.vsphere_copy:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
src: /other/local/streamOptimized.vmdk
datacenter: DC2 Someplace
datastore: datastore2
path: disk_imports/streamOptimized.vmdk
timeout: 360
diskformat: StreamVmdk
delegate_to: other_system