From this article: Virtualization: What is KVM? and other resources, I learned that it is possible to migrate a Live VM from one host to another?

Live migration
KVM supports live migration, which is the ability to move a running VM between physical hosts with no service interruption. The VM remains powered on, network connections remain active, and applications continue to run while the VM is relocated.

Can some one eloborate on how this is made possible?
In general, A running VM is tied to some hardware (real or virtual) like memory, cpus, disks, graphics, network etc. And it's tied to the Host OS (in case of type-2 hypervisors) or Hypervisor/KVM(in case of type-1 hypervisors). On the new host, the VM has to rebind itself with the above said resources/drivers etc - which could indicate a downtime (might be short).
So how is a live migration with zero service disruption made possible.

Thanks for any responses in advance.


For the live migration to be possible there are some prerequisites regarding the host operating systems and their hardware. First, they need to have a shared storage, mounted similarly. They also need to have same OS versions and identical network configurations.

Once these requirements are met, the live migration is about copying the contents of the memory of the guest system from a host to another. This is explained in detail e.g. in the Fedora documentation, Chapter 20. KVM live migration.