Red Hat Bugzilla – Bug 750801
[RFE] specifying the entire image chain as a qemu drive (blockdev-add) (qemu)
Last modified: 2017-01-19 03:00:51 EST
Description of problem:
I would like to be able to tell qemu the exact chain of images and let it override the information written within the image metadata
The arg should be something on the line of:
The exact formatting is unimportant as long as separators can be escaped and image format can also be specified.
This will allow users that have the base image in multiple location specify the base image on-the-fly without changing the image metadata.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
Why not use qemu-img to change the meta data?
Orit, maybe we'll need it for iscsi+block live migration anyway
This is another instance of these "we need -blockdev" features. Reassigning to Markus. If there is no RFE for it yet, we can take this one, otherwise this should probably be closed as a duplicate.
Changing the MD is costly and requires write privileged to all the files in the chain.
Also on long chains we might want to have different chains on different hosts (Locally cached templates). This will mean changing the Metadata while a VM is running. And will mean exclusively locking the template because the same VM might want to be used by another VM on another host.
The point is we have to assume base images never change. This changing the metadata before each VM run breaks this assumption.
(In reply to comment #2)
> Why not use qemu-img to change the meta data?
> Orit, maybe we'll need it for iscsi+block live migration anyway
Dor,We don't need to modify the meta data in iscsi+block live migration.
I think this is a fair RFE. It needs to be pursued upstream. No ETA, yet.
I would just like to clarify that the qemu-img tool also needs a way to have the entire chain passed to it.
Basic support is already in 7.0, however even upstream there are a few parts
* Support for network protocol drivers in blockdev-add
* Modifying backing file options doesn't work for all options yet (e.g. cache)
We're relatively close to implementing these, so I'll leave this BZ for 7.1
for the moment, while keeping cond-nack upstream.
Also missing upstream: blockdev-del. Tracked for 7.1 as bug 1086193.
Making progress upstream, but the full implementation won't make it for 7.1.
blockdev-add/del is still experimental upstream. We don't expect it to be declared stable (API wise) on time for RHEL-7.3, so deferring it to 7.4.