VM migration is transferring a virtual machine from one physical hardware field to another. It is an element of managing hardware virtualization systems and is something providers see as they offer virtualization services.
An essential part of migrating a virtual machine is copying the XML configuration of the VM to another host machine. If the migrated VM is not turned off, the migration also transfers the state of the VM memory and all virtualized devices to the destination virtual machine.
For the VM to remain functional on the destination host, images from the VM disk must remain available. Modern services often provide live migration functionality to make it easier to move virtual machines without doing much other administrative work.
In virtual machine migration, system administrators move these virtual pieces between physical servers or other hardware. Multiple virtual machines on ESXi hosts shared storage provide default settings as managing virtual machines through the virtual network.
To facilitate the VM migration process, a new kind of migration is called “live virtual machine migration.” Live migration involves moving these virtual machines without shutting down a client system.
Types of VM migration
- Cold migration – shutdown virtual machine on host 1, restart on host 2;
- Warm migration – suspend virtual machine on host 1, and continue on host 2;
- Live migration – this required configuration setting includes pinning the VM to a host based on the host-specific configuration. Due to pinning settings, the migration option for the high-performance virtual machine type was automatically forced to be disabled as this feature provides the ability to enable the live migration for those high-performance virtual machines.
How VM migration works
An essential part of migrating a virtual machine is copying the XML configuration of the VM to another host machine. If the migrated VM is not turned off, the migration also transfers the state of the VM memory and all virtualized devices to the destination machine.
For the VM to remain functional on the destination host, images from the VM disk must remain available. The migrated VM is default transient to the destination host and remains defined on the source host.
You can migrate an enabled VM using live or non-live migrations. To migrate off a virtual machine, you must use offline migration.
VM migration as a crucial feature
VM migration is a crucial feature of advanced resilient infrastructure capabilities in virtual machines. Allows a virtual machine running on a physical machine to be suspended and transported or accessed by another, where it continues to run from the same state.
Virtual machine migration involves capturing and copying the entire state of the machine promptly, including CPU and memory state, as well as virtual hardware resources such as BIOS, device networks, and MAC addresses.
It includes all disk space, including system and user directories, and the replacement space used to schedule the operating system for virtual memory and migrate a virtual machine.
Limitations for migrating virtual machines
- Migrating VMs from or to a session connection of libvirt is unreliable and therefore not recommended;
- Live storage migration cannot be performed on RHEL 8, but you can migrate storage while the VM is powered down;
- VMs that use certain features and configurations will not work correctly if migrated, or the migration will fail;
- The emulated CPUs on both the source and destination VM must be identical; otherwise, the migration might fail;
- A migration between hosts that use Non-Uniform Memory Access (NUMA) pinning works only if the hosts have a similar topology.
Migrating virtual machines between Oracle VM servers
Migrating a virtual machine is moving a virtual machine from one Oracle VM Server, or server pool, to another. If the virtual machine works during the migration, the applications continue running smoothly, called live migration.
This feature is essential and valuable when an existing Oracle VM server may be down or scheduled to be shut down for maintenance. Live migration can only be achieved within the same pool of servers, so the running virtual machine cannot be moved from its collection of servers.
Live migration does not demand HA to be enabled; it can appear in the server pool simply by selecting a virtual machine configuration file and migrating it, regardless of whether the server pool is grouped or has a HA flag.
Virtual machine migration in cloud computing
Cloud computing delivers computer services all over the World Wide Web – the Internet. Cloud services help individuals and organizations use data managed by third parties or other people in remote locations.
In cloud computing, virtual machine migration is a valuable tool for migrating operating system instances across multiple physical devices. A virtual machine mimics a particular computer system.
Managed migration is performed by migration daemons operating in the source VMs of the source and destination hosts. They are responsible for creating a new VM on the destination machine and coordinating the transmission of live system status over the network.
In contrast to the aforementioned managed migration method above, self-migration places the majority of the implementation within the OS being migrated. In this VM migration, no adaptations are required or the management software running on the source machine.
Yet, the migration process must operate on the destination machine to attend to incoming migration demands, create an appropriate open VM, and obtain the migrated system state.
Virtual machine migration enables load balancing and cluster maintenance, as live migration makes this invisible to users who run virtual machines and can achieve very high uptime.
VM migration techniques serve as the basis for managing computer resources, minimizing the overhead costs of VM performance, achieving energy efficiency, and balancing the load on cloud computing.
Another critical factor in VM migration is updating the network to reflect the VM’s new location in the data center. Virtual machine storage is what is needed to migrate virtual machines from vSphere environment configuration files.
Today, many data center networks are set up to tunnel frames from within the vSwitch or top of rack switch at the network edge since various options for shared, distributed, or replicated storage during the VM migration are available.