LVM pool support
This adds support for LVM-based volume pools. To do this, I created an interface for volume pools types, and implemented it for both the dir
pool type (qcow2 files) and logical
(lvm).
It is not terribly useful for the entanglement.garden infrastructure, but it is helpful for my personal infrastructure. It will be useful to entanglement if we want to support other pool types (such as Ceph) without stripping out support for our current system.
The apparmor profile that Debian distributes with libvirt prevents libvirt from interacting with the LVM disk. It can be fixed like this:
# access to LVM disks
/dev/dm-* rwk,
What's odd about this is that apparmor presented no issues when creating and using disks with virt-manager. Not really sure what it does differently.
I have tested this on my LVM-based system at home, and on fruit-0.entanglement.garden which has a dir pool type to confirm it does not break anything (it does not)