Hi,

 

I am interested to find out how libvirt envisions image locking.

i.e., how do we make sure multiple nodes are not trying to access the same storage volume, probably causing image corruption.

 

I know this can be solved by means of a cluster, but it seems excessive (and not possible in all scenarios).

Central administration (ovirt-like) is also problematic, since unless fencing is assumed, it cannot verify the image is no longer being used.

 

If the image/storage volume could be locked (or leased lock), either by the storage/LVM/NFS preventing from a node access to a specific image, or by having libvirt/qemu mutually check the lock before accessing it (very simply, in leased lock we can check every X minutes, and kill the process to make sure it honors the lock).

 

Any thoughts on the subject?

 

Thanks,

   Itamar