6.244. 模板
此服务管理系统中可用的虚拟机模板。
| 名称 | 概述 |
|---|---|
|
| 创建新模板. |
|
| 返回虚拟机模板列表。 |
6.244.1. 添加 POST 复制链接链接已复制到粘贴板!
创建新模板.
这需要 name 和 vm 元素。若要识别虚拟机,可使用 vm.id 或 vm.name 属性。例如,要使用标识符 123 从虚拟机创建模板,请发送类似如下的请求:
POST /ovirt-engine/api/templates
这样的请求正文:
<template>
<name>mytemplate</name>
<vm id="123"/>
</template>
从版本 4.3 开始,为了从快照创建虚拟机模板,发送如下请求正文:
<template>
<name>mytemplate</name>
<vm id="123">
<snapshots>
<snapshot id="456"/>
</snapshots>
</vm>
</template>
可以自定义模板的磁盘,使其部分特征与原始虚拟机的磁盘不同。为此,可使用 vm.disk_attachments 属性,指定原始虚拟机的磁盘标识符和您要更改的特征。例如,如果原始虚拟机有一个标识符 456 的磁盘,并且对该磁盘要将格式更改为 mydisk,将其格式改为 Copy On Write 并将其 稀疏,发送一个请求正文,如下所示:
<template>
<name>mytemplate</name>
<vm id="123">
<disk_attachments>
<disk_attachment>
<disk id="456">
<name>mydisk</name>
<format>cow</format>
<sparse>true</sparse>
</disk>
</disk_attachment>
</disk_attachments>
</vm>
</template>
模板可以创建为现有模板的子版本。这需要新模板 的名称和 vm 属性,以及新模板版本的 base_template 和 version_name 属性。base_template 和 version_name 属性必须在 template 部分括起的 version 部分中 指定。使用 id 或 name 属性识别虚拟机。
<template>
<name>mytemplate</name>
<vm id="123"/>
<version>
<base_template id="456"/>
<version_name>mytemplate_001</version_name>
</version>
</template>
模板的目标存储域可以通过以下两种方式之一来自定义:
全局,在请求级别.请求必须列出要在存储域上创建所需的磁盘附件。如果没有列出磁盘附加,将忽略全局存储域参数。
<template> <name>mytemplate</name> <storage_domain id="123"/> <vm id="456"> <disk_attachments> <disk_attachment> <disk id="789"> <format>cow</format> <sparse>true</sparse> </disk> </disk_attachment> </disk_attachments> </vm> </template>按每个磁盘附加.为每个磁盘附加指定所需的存储域。指定全局存储定义将根据磁盘附加规格覆盖存储域。
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <format>cow</format> <sparse>true</sparse> <storage_domains> <storage_domain id="789"/> </storage_domains> </disk> </disk_attachment> </disk_attachments> </vm> </template>
| 名称 | 类型 | 方向 | 概述 |
|---|---|---|---|
|
| in | 指定虚拟机的权限是否应复制到模板。 | |
|
| in | 密封模板。 | |
|
| in/Out | 有关模板或模板版本的信息。 |
6.244.1.1. clone_permissions 复制链接链接已复制到粘贴板!
指定虚拟机的权限是否应复制到模板。
如果提供了此可选参数,并且其值为 true,则虚拟机的权限(只有直接虚拟机的权限,而不是继承的参数)将复制到创建的模板。例如,要从 myvm 虚拟机创建模板复制其权限,请发送如下请求:
POST /ovirt-engine/api/templates?clone_permissions=true
这样的请求正文:
<template>
<name>mytemplate<name>
<vm>
<name>myvm<name>
</vm>
</template>
6.244.1.2. seal 复制链接链接已复制到粘贴板!
密封模板。
如果提供了此可选参数,并且其值为 true,则模板将在创建后密封。
封装会从文件系统中删除所有特定于主机的配置:SSH 密钥、UDEV 规则、MAC 地址、系统 ID、主机名等,从而更加轻松地使用模板来创建多个虚拟机,无需人工干预。
目前,仅支持 Linux 操作系统的密封。