Migration (virtualization)

In the context of virtualization, where a "guest" simulation of an entire computer is actually merely a software virtual machine (VM) running on a "host" computer under a hypervisor, migration (also known as teleportation) is the process by which a "running" virtual machine is moved from one physical host to another, with little or no disruption in service.
Subjective effects.
Ideally, the process is completely transparent, resulting in no disruption of service (or downtime). In practice, there is always some minor pause in availability, though it may be low enough that only hard real-time systems are affected. Virtualization is far more frequently used with network services and user applications, and these can generally tolerate the brief delays which may be involved. The perceived impact, if any, is similar to a longer-than-usual kernel delay.
Objective effects.
The actual process is heavily dependent on the particular virtualization package in use, but in general, the process is as follows:
Note that in practice, regular maintenance operations are required to "merge down" the snapshot stack into a more manageable number of files, to improve performance and optimize storage (redundant overwrites are merged out).
Relation to failover.
Migration is similar to the failover capability some virtualization suites provide. In true failover, the host may have suddenly completely failed, which precludes the latest state of the VM having been copied to the backup host. However, the backup host has everything except for the very latest changes, and may indeed be able to resume operation from its last known coherent state.
Because the operations are so similar, systems that provide one capability may provide the other.