** Management of qcow2 images ** qcow2 format is useful for OS master images, because it supports snapshots. That permits quick VM deployment. Also it could solve write performance problems with shared storages (NFS, Lustre) by using local or faster storage for snapshot files. However, there is problem with management of master images. If we want to update master image, we create the new one and use move command to replace the old one. If shared storage keeps opened files until all processes using them terminates, then VM runs without problem. Problems start if VM is shutdown and recreated with the same snapshot qcow2 image, because snapshot qcow2 file keeps backing reference only on file pathname and then image becomes corrupted (snapshot starts using the new backing file). Proposed solution is to use symlinks. In order to do that, we keep all versions of master images and symlink the approved version of master image. The only changes in procedure are to do resolving of this symlink before creation of VM, but not on restart. However, this solution has one obstacle. If we need to delete old version of images, we need to ensure that there aren’t any snapshot which references them. Example: debian6_1.qcow2 debian6_2.qcow2 debian6.qcow2 -> debian6_2.qcow2 We create VM using debian6.qcow2 after we resolve it to debian6_2.qcow2: SRC_PATH=debian6.qcow2 [ -L $SRC_PATH ] && SRC_PATH=`readlink -f $SRC_PATH` qemu-img create -b $SRC_PATH -f qcow2 $DST_PATH $SIZE In OpenNebula we register master image with SOURCE=debian6.qcow2 and include changes into tm/qcow2/clone file with lines as above. For future if we want to manage qcow2 images only through OpenNebula, we need some kind of symlink image, that references another image.