[libvirt-users] libvirt, lvm thin provisioning

Michael Mol
Fri, 22 Nov 2013 20:46:20 -0000

I know that lvm supports thin provisioning, and I think I have a pretty
good grasp on how that works. Does libvirt support lvm thin
provisioning and thin snapshots?

I know that in order to set up lvm thin provisioning by hand, I have to
create a thin-provisioning pool within the volume group, and then
thin-provisioned logical volumes and thin-provisioned snapshots can be
created within that thin-provision pool.

I also know that it's possible to have more than one thin-provisioning
pool within the same volume group, which tells me that in order to
properly set up any lvm-aware application to use thin-provisioning, I
may need to inform it which thin-provisioning pool it should base LVs
and snapshots from.

When I look at the example here:

http://libvirt.org/storage.html#StorageBackendLogical

I don't see anything particular which tells me it supports building off
a thin-provisioning pool if I specify such by name.

Checking here:

http://libvirt.org/formatstorage.html#StoragePool

I again don't see anything specific about logical thick vs thin
provisioning. I would expect to see *something*, as there are
performance consequences when making such choices, so I'm again not
sure libvirt recognizes a difference.

So is this something that libvirt can do? And is there good
documentation somewhere on the subject?