Libvirt QEMU/KVM VM migration/upgrading

Wenn man VMs (und deren Definitionsdatei) von einem älteren KVM System umzieht oder den Hypervisor upgraded sollte man nicht vergessen im XML-file den Maschinentyp zu checken. Ansonsten kann es nach Live-Migrationen zu unerwarteten Effekten kommen. Bei mir hing z.B. bei einigen Systemen die Real-Time-Clock – was oft einen Totalabsturz zur folge hat. Der Bug ist hier beschrieben.

Für eine aktuelle QEMU-KVM Version sieht dies so aus (entscheidend ist das „pc-1.0“):

<!-- /etc/libvirt/qemu/vm-01.xml -->
<type arch='x86_64' machine='pc-1.0'>hvm</type>

Damit man nicht händisch sämtliche XML Dateien anpassen muss, liefert Libvirt ein praktisches, aber wohl eher unbekanntes Script mit:

libvirt-migrate-qemu-machinetype -a

Damit werden direkt alle VMs auf die jeweils aktuelle Einstellung angepasst. Sehr schön. Damit die Einstellung greift muss man die VMs allerdings neu starten (soweit ich weiß).