3.15. 实例:为虚拟机附加 ISO 镜像

安装虚拟机操作系统时需要一个 CD-ROM 或 DVD ISO 镜像作为操作系统的安装介质。在这里我们使用 Red Hat Enterprise Serverr 6 ISO 镜像作为安装介质。
ISO 镜像需要存在于 iso1 ISO 域中以供虚拟机使用。Red Hat Enterprise Virtualization 提供了一个上传工具来确保 ISO 镜像被上传到正确的目录中,并有正确的用户权限。
当 ISO 被上传后,API 用户就可以请求 ISO 存储域的 files 子集合来查看文件资源:

例 3.17. 在一个 ISO 存储域中查看文件子集合

请求:

GET /api/storagedomains/00f0d9ce-da15-4b9e-9e3e-3c898fa8b6da/files HTTP/1.1
Accept: application/xml

cURL 命令:

# curl -X GET -H "Accept: application/xml" -u [USER:PASS] --cacert [CERT] \
    https://[RHEVM Host]:443/api/storagedomains/00f0d9ce-da15-4b9e-9e3e-3c898fa8b6da/files

API 返回文件子集合的以下表述:
<files>
    <file id="rhel-server-6.0-x86_64-dvd.iso"
      href="/api/storagedomains/00f0d9ce-da15-4b9e-9e3e-3c898fa8b6da/
      files/rhel-server-6.0-x86_64-dvd.iso.iso">
        <name>rhel-server-6.0-x86_64-dvd.iso.iso</name>
        <storage_domain id="00f0d9ce-da15-4b9e-9e3e-3c898fa8b6da"
          href="/api/storagedomains/00f0d9ce-da15-4b9e-9e3e-3c898fa8b6da"/>
    </file>
</files>
API 用户把 rhel-server-6.0-x86_64-dvd.iso 附加到示例中使用的虚拟机。附加一个 ISO 镜像等同于使用管理门户或用户门户中的更换 CD 按钮。

例 3.18. 为虚拟机附加一个 ISO 镜像

请求:

POST /api/vms/6efc0cfa-8495-4a96-93e5-ee490328cf48/cdroms HTTP/1.1
Accept: application/xml
Content-type: application/xml

<cdrom>
  <file id="rhel-server-6.0-x86_64-dvd.iso"/>
</cdrom>

cURL 命令:

# curl -X POST -H "Accept: application/xml" -H "Content-Type: application/xml" \
    -u [USER:PASS] --cacert [CERT] \
    -d "<cdrom><file id='rhel-server-6.0-x86_64-dvd.iso'/></cdrom>" \
    https://[RHEVM Host]:443/api/vms/6efc0cfa-8495-4a96-93e5-ee490328cf48/cdroms