Hi, While implementing the buildvolfrom method in libvirt for RBD I'm stuck at some point.
$ virsh vol-clone --pool myrbdpool image1 image2 This would clone image1 to a new RBD image called 'image2'. The code I've written now does: 1. Create a snapshot called image1@libvirt-<epochtimestamp> 2. Protect the snapshot 3. Clone the snapshot to 'image1' wido@wido-desktop:~/repos/libvirt$ ./tools/virsh vol-clone --pool rbdpool image1 image2 Vol image2 cloned from image1 wido@wido-desktop:~/repos/libvirt$ root@alpha:~# rbd -p libvirt info image2 rbd image 'image2': size 10240 MB in 2560 objects order 22 (4096 kB objects) block_name_prefix: rbd_data.1976451ead36b format: 2 features: layering, striping flags: parent: libvirt/image1@libvirt-1450724650 overlap: 10240 MB stripe unit: 4096 kB stripe count: 1 root@alpha:~# But this could potentially lead to a lot of snapshots with children on 'image1'. image1 itself will probably never change, but I'm wondering about the negative performance impact this might have on a OSD. I'd rather not hardcode a snapshot name like 'libvirt-parent-snapshot' into libvirt. There is however no way to pass something like a snapshot name in libvirt when cloning. Any bright suggestions? Or is it fine to create so many snapshots? -- Wido den Hollander 42on B.V. Ceph trainer and consultant Phone: +31 (0)20 700 9902 Skype: contact42on -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html