Hi, a large customer is asking for storage migration of the disk images of their virtual machines. They don't want to migrate the VM to another host, but only the disk image from one filer to another while the VM keeps running. The natural way to setup something like this would be LVM and use mirroring, but the problem is that this requires to copy the image to a LVM enabled disk first, and this is no option due to time constraints (copying many GB of data takes too long, and in the end I'd like to be able to do the switch from the original image to the LVM backed with the VM kept running). So my idea was to enhance the loop driver to be capable to support a list of backing files instead of only one and use a small prepended file for storing the needed LVM metadata, resulting in the ability to keep the existing disk image. Would such an addition be acceptable? An alternative would be to have an additional layer on top of the current loop driver doing the concatenation of multiple loop devices, but this would require a lot of code duplication. And using a common base driver for the common code would be more code churn than just adding the support to loop.c. Thoughts? Juergen
Attachment:
OpenPGP_0xB0DE9DD628BF132F.asc
Description: application/pgp-keys
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature