I'm trying to migrate around 40 KVM VMs (containing a few hundred live snapshots mostly used for automated testing on Windows) from a Ubuntu 22 server to a Debian 11 server. The machine type of most of the VMs are pc-i440fx-xenial
and I've tried changing the XMLs to machine type pc-i440fx-5.2
to match an available machine type on Debian but qemu doesn't accept it and gives me this error (I'm starting up the snapshot through virt-manager):
Error running snapshot 'base-dotnet.4.5.2':internal error: qemu unexpectedly closed the monitor: 2023-05-07T17:04:33.188384Z qemu-system-x86_64: Machine type received is 'pc-i440fx-xenial' and local is 'pc-i440fx-5.2' 2023-05-07T17:04:33.188568Z qemu-system-x86_64: Error -22 while loading VM state
This only happens with live snapshots - if I shut them down before migrating then the snapshots are able to run, however, manually shutting each snapshot down and resaving in Ubuntu and starting them back up in Debian and resaving in the original live state would be an huge amount of manual work that I would obviously want to avoid.
One workaround solution might be to add the pc-i440fx-xenial
machine type to the qemu emulator of the Debian server but I'm not sure how to do this or if it's even possible? Maybe I can transfer over the Ubuntu qemu emulator itself to use on the Debian server? Any ideas?