Sunday, April 17, 2011

VMware's VMotion Technologies


I wanted to write my blog post to expand on the topic of VMware’s VMotion technology.  Being an IT Professional, I have found this technology to be one of the most important advances in availability and redundancy.  To a system administrator, using VMware’s VMotion technology would’ve been thought of as a dream 10 years ago.  Coming from a 24/7 computing environment, getting agreement from users to allow system downtimes has always been a pain.  Whether you need to maintenance a server, like applying firmware or patches, or if you need to swap out to newer hardware, it always used to mean middle of the night or weekend work, which nobody likes if they can avoid.  What VMware’s VMotion technology has brought to the table is the ability to move the workload from one VMware server to another.  That is, if you have a server that is virtualized with VMware, it can actually move from one VMware “host” server to another without ever having a downtime.  I went to a VMware conference where I attended what they call a deep dive session on the subject and wanted to go more into depth on how it actually works.  I won’t go into the high level details about VMware guests and hosts as those topics were covered in the video lessons.
The two types of VMotion VMware has currently available is VMotion where it moves the workload from one server to another allowing you to free up the host server for maintenance, etc.  The other type of VMotion is called “Storage VMotion” that allows the administrator to move the actual data location of where the virtual server is located to another storage device or drive.  This is useful in many of the same ways that regular VMotion is useful in because it allows the administrators to do maintenance on the storage, or move to a different class of storage, etc.
The first technology VMotion technology I will talk about is regular VMotion (not Storage VMotion).  When you ask the system to VMotion a virtual server off of a host or physical server, the key is that the virtual machines, also known as VM’s, are stored on shared storage and shared network space.  This means that every host in your VMware farm can see the same data storage and network.  When a VMotion is performed, the active memory and execution state of the virtual machine is transferred to another host in your VMware farm.  A copy of the data in memory is moved to the host the moving guest will become live on, and then a delta copy of data is done until it reaches a small enough amounts of data where it can halt the virtual machine for literally a few milliseconds and copy the tiny delta left and then bring the system up on the new VMware host.  The user and operating system never notices that it is now on a new piece of physical hardware.  Once you VMotion all of the “guests” off of a VMware server, it is no longer hosting a workload and you can take it down for maintenance, replace it, or do whatever you need to do to the system.  I included a link to YouTube video that will give you some graphical representation of what I am talking about.
Video created by HPC Systems on Youtube.

The second VMotion technology I will talk about is Storage VMotion, and it works in a similar manner to the above concept.  When you need to move the location of the VMware files to new storage, you can use storage VMotion to accomplish this.  It copies the virtual machine files to new storage, and then does a delta copy, and finally when it has such a small amount to copy left it momentarily halts the execution of code and brings the VMware guest up on the new storage.  This is different than regular VMotion because during a regular VMotion, the data stays on the same storage, but just moves to another physical server.  I included another link to a YouTube video that further explains the technology I’ve been discussing.


Video created by Varrow on Youtube.
These technologies have really changed the lives of system administrators as I mentioned above, giving much more flexibility in how we do our work.  Sometimes when using VMware at work, I almost feel like I am cheating because I’m doing things that used to be so difficult and time consuming and VMware has made those same tasks so easy and manageable.
I’ve included some links so you can do some more reading on  the VMotion technologies and other amazing technologies by VMware.  They are really an innovative company and I always look forward to what new technologies they are working on releasing in the future.