vmware.vmware.folder_template_from_vm 模块 – 从现有虚拟机在本地 VCenter 文件夹中创建模板
注意
此模块是 vmware.vmware 集合(版本 1.7.1)的一部分。
如果您使用的是 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install vmware.vmware
。您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:vmware.vmware.folder_template_from_vm
。
概要
此模块从现有虚拟机在本地 VCenter 文件夹中创建模板。该文件夹必须已存在。虚拟机必须已关闭电源,否则不会更改。如果模板已存在且所需状态为“present”,则不会执行任何操作。
要求
在执行此模块的主机上需要以下要求。
pyvmomi
参数
参数 |
注释 |
---|---|
连接到 vCenter 时要使用的集群。 |
|
要在其中操作的数据中心的名称 |
|
要用作模板存储的数据存储的名称。 |
|
vSphere vCenter 服务器的主机名或 IP 地址。 如果在任务中未指定该值,则将改为使用环境变量 |
|
vSphere vCenter 服务器的密码。 如果在任务中未指定该值,则将改为使用环境变量 |
|
将接收所有 HTTPS 请求并转发它们的 HTTP 代理的端口。 如果在任务中未指定该值,则将改为使用环境变量 |
|
放置模板的资源池。 |
|
模板应该是存在还是不存在 选项
|
|
应该放置新模板的文件夹的名称 应该是完整的文件夹路径,带有或不带有“datacenter/vm/”前缀 例如“数据中心名称/vm/路径/到/文件夹”或“路径/到/文件夹” |
|
要赋予新模板的名称。 |
|
vSphere vCenter 服务器的用户名。 如果在任务中未指定该值,则将改为使用环境变量 |
|
在 SSL 证书无效时允许连接。当证书不受信任时设置为 如果在任务中未指定该值,则将改为使用环境变量 选项
|
|
用于创建模板的虚拟机的 MOID vm_name、vm_moid、vm_uuid 中必须提供一个 当状态为“absent”时,此参数将被忽略 |
|
用于创建模板的虚拟机的名称 vm_name、vm_moid、vm_uuid 中必须提供一个 当状态为“absent”时,此参数将被忽略 |
|
如果使用 vm_name 并且多个虚拟机具有相同的名称,请指定应选择哪个虚拟机 选项
|
|
如果为 true,则按实例 UUID 而不是 BIOS UUID 进行搜索。 BIOS UUID 可能不是唯一的,并可能导致错误。 选项
|
|
用于创建模板的虚拟机的 UUID vm_name、vm_moid、vm_uuid 中必须提供一个 当状态为“absent”时,此参数将被忽略 |
|
如果为 true,模块将等待模板创建完成后再退出。 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
check_mode 的支持。 |
注意事项
注意
所有模块都需要 API 写入权限,因此在免费的 ESXi 许可上不支持。
示例
- name: Create A New Template Using VM UUID
vmware.vmware.folder_template:
hostname: "https://vcenter"
username: "username"
password: "password"
datacenter: "my-datacenter"
vm_uuid: "11111111-11111111-11111111"
template_folder: "my-datacenter/vm/netsted/folder/path/templates"
template_name: "my_template"
- name: Create A New Template Using VM Name
vmware.vmware.folder_template_from_vm:
hostname: "https://vcenter"
username: "username"
password: "password"
datacenter: "my-datacenter"
vm_name: "my_vm"
vm_name_match: "first"
template_name: "my_template"
template_folder: "nested/folder/path/templates"
- name: Destroy A Template In A Folder
vmware.vmware.folder_template_from_vm:
hostname: "https://vcenter"
username: "username"
password: "password"
datacenter: "my-datacenter"
vm_name: "foo"
state: "absent"
template_name: "my_template"
template_folder: "nested/folder/path/templates"