<html>
<head>
<style type="text/css">
body,p,td,div,span{
        font-size:13px; font-family:Arial, Helvetica, sans-serif;
};
body p{
        margin:0px;
}
</style>
</head>
<body>

<div>Hi,</div><div><br></div><div>Can someone please assist me with an explanation of how to migrate a UEFI enabled virtual machine from one KVM server to another KVM server, safely.</div><div><br></div><div><b>Note: </b>I believe this not not currently possible because "It is blocked by limitations in QEMU", is this true? </div><div><br></div><div>I have a question about the "/var/lib/libvirt/qemu/nvram/server_VARS.fd" file in relation to migration (live or powered off) from one KVM server and it's storage pool to another KVM server and it's storage pool.  Though I think it may not  matter if the VMs is stored in a shared storage pool or moved from one storage pool to another storage pool.<br></div><div><br></div><div>I don't fully understand UEFI or how KVM manages UEFI virtual machines and in particularly, migration of UEFI virtual machines from one KVM server to another KVM server.</div><div><br></div><div>This diagram is my attempt to visually describe the question.<br></div><div><br></div><div>    (UEFI VM1)    ---migration to --->   (UEFI VM1) </div><div>[ KVM1  & Pool X ]        -->            [  KVM2 & Pool Y ]<br></div><div><br></div><div>and also another migration example using a shared storage pool<br></div><div><br></div><div><div>    (UEFI VM1)   ---migration to ---> (UEFI VM1) </div><div>KVM1                ---------------->               KVM2 <br></div><div>[                  Shared  Storage Pool                    ]<br></div><div><br><br></div></div><div>See: <a href="https://www.lucaswilliams.net/index.php/2020/01/29/manually-migrating-vms-from-one-kvm-host-to-another/">https://www.lucaswilliams.net/index.php/2020/01/29/manually-migrating-vms-from-one-kvm-host-to-another/</a><br></div><div><br></div><div>As I understand it both KVM servers will have their own server_VARS.fd file (e.g. "/var/lib/libvirt/qemu/nvram/server_VARS.fd"), which I believe holds the UEFI details for all of that server's UEFI enabled virtual machines, so if I were to copy the file from one KVM server to another, it would over right the receiving server's UEFI data.  Unless there was a way of updating/merging the information for a VM that is being migrated to the new KVM Server?</div><div><br></div><div>I have read "KVM doesn’t currently support snapshotting UEFI VMs", which I believe could be related to the need of also coping the UEFI information for snapshot (or cloned?) UEFI server?</div><div><a href="https://www.ctrl.blog/entry/review-gnome-boxes.html">https://www.ctrl.blog/entry/review-gnome-boxes.html</a><br></div><div><br></div><div>So my actual question is, how to migrate a enabled virtual machine from one KVM server to another KVM server, safely.<br></div><div><br></div><div>George.</div><div><br></div><div><b>My Research Links</b><br></div>https://ostechnix.com/enable-uefi-support-for-kvm-virtual-machines-in-linux/<div>https://superuser.com/questions/1389103/windows-10-uefi-physical-to-kvm-libvirt-virtual</div><div>https://ogris.de/howtos/windows-uefi-virtio.html</div><div>https://www.linux-kvm.org/downloads/lersek/ovmf-whitepaper-c770f8c.txt</div><div><br></div><div><br>"Re: [virt-tools-list] virt-manager: snapshot uefi vm"<br><br>It is blocked by limitations in QEMU. The savevm command doens't have any<br>way to be told a list of disks to snapshot & this breaks with UEFI as it<br>considers the NVRAM file a disk to snapshot. So savevm needs rewriting in<br>QEMU, and then wiring up in libvirt before it can be done in virt-manager.<br>Unfortunately no one in QEMU seems to care about internal snapshots, only<br>external snapshots, so there's no ETA <img src="views/Extjs3/themes/Group-Office/images/emoticons/normal/sad.gif" alt=":-("></div><div><br></div><div><br></div>
</body></html>