PVE 9.2.10, LVM thick provisioning, snapshot-as-volume-chain, and cloud-init volumes

Jan 8, 2022
43
7
28
We're running PVE 9.2.10 on a test cluster and are experimenting with the snapshot-as-volume-chain tech preview feature. Our goal is to move away from thin-provisioned volumes while keeping support for snapshots when needed.

One thing we found out is that when using qcow2 for CloudInit volumes, the VM fails to start with the following error:

Code:
failed to stat '/dev/local-blk-vg/vm-102-cloudinit.qcow2'
  Rounding up size to full physical extent 8.00 MiB
TASK ERROR: lvcreate 'local-blk-vg/vm-102-cloudinit.qcow2' error:   Logical Volume "vm-102-cloudinit.qcow2" already exists in volume group "local-blk-vg"

This is our datastore configuration:
1787974004871.png

Has anyone else run into this and/or can reproduce this? Is there a bug filed for this? I didn't have luck finding one.

Also, I'm curious what other people are using to manage local storage? In production we use a combination of Ceph-RBD for most VMs, and also LVM thin provisioning for a separate small number of VMs (where the app handles its own data replication). We're evaluating LVM thick provisioning to avoid silly mistakes like running our pools out of storage.
 
We also had an issue running backups with a qcow2-based CloudInit image

Code:
ERROR: lvcreate 'local-blk-vg/vm-102-cloudinit.qcow2' error:   Logical Volume "vm-102-cloudinit.qcow2" already exists in volume group "local-blk-vg"
INFO: aborting backup job
ERROR: VM 102 not running
VM 102 not running
ERROR: Backup of VM 102 failed - lvcreate 'local-blk-vg/vm-102-cloudinit.qcow2' error:   Logical Volume "vm-102-cloudinit.qcow2" already exists in volume group "local-blk-vg"

As a work-around, moving the CI volume over to a regular block seems to work.

I don't know that we strictly need to have CI images backed by a qcow2 volume. Right now we're just looking for two things 1) a way to avoid over-provisioning local-storage (which this has solved so far) 2) consistency across VMs and images if at all possible.