VMWare “Vmotion” Server Live Migration Explained
One of the best features in VMWare’s “VMware Infrastructure 3” product is the widely known “Vmotion Technology”. Vmotion technology has been around in earlier versions of VMWare’s ESX product. What exactly is Vmotion? With Vmotion an administrator can live migrate a virtual server (VM) from one physical host server to another physical host server. A Vmotion process takes somewhere between 30 seconds and 1.5 minutes on average. However, there is no interruption in availability of the virtual machine at that time. The end-user using the VM does not notice that the machine is moving to a different physical host. If you would do a persistent ping against the VM you might see a few pings with higher ping times, but that is pretty much it.
There a specific requirements for Vmotion to work. What are these requirements? A receiving VMWare host server that is Vmotion enabled must be connected to the same shared storage and the same network connections as the sending server is. Shared storage would be ideally a place on your SAN that is visible from each VMWare ESX host. The SAN connections need to have the same display name, too. These are assigned in the VirtualCenter* (Vi Client). Each physical server also needs to offer the same physical network connections to be able to participate in a Vmotion process. Example: The source ESX host is connected to the 192.168.10.x network and the 10.10.5.x network. The VM that is going to be “vmotioned” is using the 10.10.5.x network. The receiving physical host must therefore have a connection to the 10.10.5.x network as otherwise the VM would lose network connectivity instantly if moved over. The Vmotion verification process however would discover a mismatch upfront and prevent an admin from moving the machine accordingly.
So far we discovered that the physical hosts need to have access to the same storage area and that they need to have the same network connections available to allow a successful Vmotion. However, there are more items to be considered. Currently (at the time of this writing) Vmotion is not possible between different CPU families. Example: Host A is using Intel processors while Host B is using AMD CPU’s. This is a mismatch and Vmotion would not be possible. This might change down the road, but is not available at the moment. A VMWare admin building a VMWare farm needs to keep this in mind and should plan a farm with equal hardware. You can mix Dell and HP servers as long as the CPUs are in the same core family. It does not matter if Host A has only 16 GB RAM while Host B has 32 GB of RAM. All of the ESX Server hosts need to use a single Virtual Machine File System (VMFS) volume, too. In addition VMotion requires a Gigabit Ethernet network between virtual machines. This network is usually a dedicated management Vlan that all VMWare hosts have access to.
The actual Vmotion process is started in the VI Client Software (formerly known as VirtualCenter). An administrator would select the virtual machine in question, right click onto the machine and select “migrate” from the available options to initiate the Vmotion process. The Vmotion verification process is started as the administrator goes through the wizard style process. If all turns out well, the migration process starts a few moments after the wizard closes (confirmed by the administrator). A taskbar at the bottom shows the process status.
Example Usage of Vmotion
1) Hardware Failure on physical host. A memory stick goes bad on a physical host server. This is causing issues for the VMs residing on this server. An Administrator recognizes the problem and starts the Vmotion process of moving the VM’s off to other host servers in the same VMWare farm. Within 10 minutes all 15 VMs residing on that host server have been moved off (without any interruption to the user). The administrator puts the host server with the bad memory stick into maintenance mode and shuts it down. The administrator replaces the memory stick and powers the server back on (15 minutes). Once the server is back up and running and the administrator has verified that the memory stick was the culprit and not the motherboard, he puts that server out of maintenance mode and moves VMs back to this host server (again no interruption to the end-user).
2) A website on a VM has been mentioned on by several news stations on TV and experiences a sudden surge in traffic. The traffic rises and the physical server is starting to reach the physical limits due to increased memory, CPU, and network bandwidth. The administrator moves either other VMs off the host server to free up more resources or he moves the VM with the “popular” website off to a host with more physical resources available. In both cases Vmotion allows to move the machines without any visible interruption to the end-user.
These 2 examples show how Vmotion can be used in a production environment. Vmotion plays another role in VMWare Infrastructure 3, but that is going to be discussed in a different article.