"msg": "internal error: qemu unexpectedly closed the monitor: 2020-09-11T12:51:05.508705Z qemu-system-x86_64: -drive file=/dev/lvm_pool/ns3,format=raw,if=none,id=drive-virtio-disk0: Could not open '/dev/lvm_pool/ns3': Permission denied"
As it's now a block volume, the tasks Ensure the VM volumes exist will be skipped (due to when condition)
So needed to update volumes.yml condition (line 30)
from : when: item.type | default(libvirt_volume_default_type) == 'volume'
to : when: item.type | default(libvirt_volume_default_type) == 'volume' or ( item.type | default(libvirt_volume_default_type) == 'block' and item.pool is defined )
Maybe, it's will also good to update the README to have a lvm example .
I've failed to use this roles with lvm (at least on debian 10)
Error
if data to created VM is :
The role is crashing with this error
Debugging
virsh dumpxml <nodename>
give me :virsh edit <node>
<disk type='volume' device='disk'>
with<disk type='block' device='disk'>
<source pool='lvm_pool' volume='ns3'/>
with<source dev='/dev/lvm_pool/ns3'/>
It's now can boot
Change need
To permit these two line change (done on
virsh edit
) via ansible and your role :Need to add this in the template
vm.xml.j2
:Need to change type from
volume
toblock
, so my variable will be :As it's now a
block
volume, the tasksEnsure the VM volumes exist
will be skipped (due to when condition) So needed to updatevolumes.yml
condition (line 30)from :
when: item.type | default(libvirt_volume_default_type) == 'volume'
to :when: item.type | default(libvirt_volume_default_type) == 'volume' or ( item.type | default(libvirt_volume_default_type) == 'block' and item.pool is defined )