Easier way to recover from 'transaction': Bitmap already exists: virtnbdbackup.0] in cluster setup #136
-
I see the FAQ on this issue, but I already have several VMs in this state and am looking at fixing them. Obviously going forward I will look at using a shared folder as suggested. The VMs in question were live migrated from similar servers U22LTS Stock qemu/libvirt on shared media (Gluster). The migration works fine and we can go back and forth but when our virt backup script ran the newly migrated VMs failed with the above error virtnbdbackup version is 1.42 (stable Ubuntu) the level was set to auto if I shutdown the VM and use qemu-img info THERE IS NO BITMAP listed. If we run the backup on a stopped VM it DOES do a full backup, but if the VM is running we get the bitmap exists issue, even after a previous shutdown or even a undefine/define of the XML to recreate the VM domain. One trick that did seem to work was to use qemu-img to --add a bitmap file, check with qemu-img info to see that it is there and then --remove it. That seems to solve the problem but as is suggested in your notes messing with qemu-img is not recommended. Is there an easier way to clear this problem? Preferably without having to shutdown the migrated VMs. |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 5 replies
-
correction on virtndbbackup version forgot the .9. but is still odd because the PACKAGE identifies itself as 1.9.42 in the deb package listing but 1.9.32 on the Version line https://packages.debian.org/trixie/virtnbdbackup virtnbdbackup -V1.9.32 |
Beta Was this translation helpful? Give feedback.
-
in any case if the virtual machines migrate between systems, you need to use the transient virtual machine https://github.com/abbbi/virtnbdbackup#transient-virtual-machines-checkpoint-persistency IF the virtual machine is OFFLINE, only a type "copy" backup is created, which will not create any bitmap nor will If you store the checkpoints metadata within a folder shared between systems, it at least allows you to create |
Beta Was this translation helpful? Give feedback.
-
note from IRC in #virt channel:
so it seems for current libvirt versions theres no other solution. |
Beta Was this translation helpful? Give feedback.
if you have that issue now just remove the bitmaps from the qcow files using qemu-img while vm is offline.
Its not quite an issue in libvirt, its just that the checkpoints are not shared between libvirt environments during
migration. I dont know wether if this has already been addressed in newer libvirt versions or will. If you migrate
a virtual machine to a different system the checkpoints information is not migrated to the target system. So the qcow
images contain the bitmaps tied to the checkpoint, but libvirt doesnt know about them anymore.
This results in the situation that virtnbdbackup doenst see the checkpoint via libvirt api and attempts to create a new
one. This fails because th…