0

是否有可能使用 libvirt API 从一个基本映像创建 2 个(或更多)不同的覆盖?

FedoraBase.img <-- FedoraGuest1.qcow2
                \
                  <-- FedoraGuest2.qcow2

所以 FedoraBase 是 Guest1 和 Guest2 叠加层的支持映像...

使用 qemu-img 工具,您可以像这样创建它:

qemu-img create -b /export/vmimages/FedoraBase.img -f qcow2 \ 
       /export/vmimages/FedoraGuest1.qcow2

qemu-img create -b /export/vmimages/FedoraBase.img -f qcow2 \ 
       /export/vmimages/FedoraGuest2.qcow2

但我找不到任何 libvirt API 做同样的事情。

4

1 回答 1

0

此任务需要您使用 libvirt 存储池 API - 特别是 qcow2 映像可以使用 virStorageVolCreateXML() API 创建。此 API 接受描述所需配置的XML 文档,并让您能够指定支持文件。这应该可以实现您描述的分层。

于 2016-12-22T00:01:12.740 回答