Hi Nir,
Regarding "3. Engine creates snapshot *via cinder*"...
What are the benefits of creating snapshots via cinder vs via libvirt?
Libvirt and qemu are offering core VM-aware storage and memory snapshot features.
Besides, snapshot-create-as has no VM downtime.
It would be a mistake to implement snapshoting on the ceph layer.
At some point, you would need VM-aware code (eg: the VM memory state) and organically go
back to the libvirt + qemu way.
There seems to be qemu + libvirt support for ceph snapshots (via rbd commands) which
probably offers some (?) VM-awareness, but what are the benefits of not using the good old
core libvirt + qemu snapshot features?
I must be missing something...
2) Not related:
It seems like oVirt shifted focus towards Ceph recently...
I would like to drop Gluster for Ceph if the latter supports SEEK HOLE reading and optimal
sparse files operations. Can someone please confirm if Ceph is supporting SEEK_HOLE? I saw
some related code, but would like to ask for comments before setting up and benchmarking
Ceph sparse image file operations.