Windows Server 2008 R2 provides several improvements to Hyper-V that have been in high demand ever since its initial release. These updates to Microsoft's low-cost virtualization platform include cost-effective high availability as well as enhancements to virtual machine disk management. As a result, if you've been sitting on the sidelines waiting for Microsoft's second move in the virtualization space, R2 is your time to jump.
Live Migration … finally!
The most notable of Hyper-V's improvements is the upgrade from Quick Migration to the zero-downtime Live Migration. Microsoft was incorrect with its assertion that administrators were OK with a few seconds of downtime during virtual machine re-hosting. The original Quick Migration capabilities, while acceptable to some, became a source of ridicule and scorn for many.
Comparing Microsoft's original less-than-a-minute mini-downtimes to its closest competitor's single-ping-packet outages drove many would-be Hyper-V deployers toward other products. As such, Microsoft's primary goal with the next version of Hyper-V was to eliminate that downtime during motioning events.
From a technical perspective, updating Hyper-V's architecture to enable live migration involves substantially more moving parts than its original design. To quote from a recent article of mine on Hyper-V, "At the point when Quick Migration is initiated, a VM is immediately placed in a saved state. The saved state is not a power-down, nor is it the same as a paused state. In the saved state, a VM releases its memory reservation on the host machine and stores the contents of its memory pages to disk. Once this has been completed, the target host can take over ownership of a VM and bring it back into operation. With Quick Migration, putting the VM in a saved state is the most time-consuming aspect of a migration."
This process of saving the state of the virtual machine prior to re-hosting it was the source of Quick Migration's original time delay. To eliminate that delay, Microsoft had to develop a sort of pre-copy mechanism that migrates the majority of the virtual machine over, while still allowing it to operate as a functioning VM.
Prior to initiating this pre-copy mechanism, the equivalent of a snapshot of the VM is taken, providing a basis by which changes are logged during the pre-copy event. Once the initial copy completes, Live Migration pauses the VM, copies over any mid-copy changes, and finally transfers ownership to the new host. Because this pause-and-delta-copy architecture involves dramatically less data transfer, the result is true Live Migration just like other virtualization platforms.
Cluster-awareness with disks
Another mechanism that was necessary for Live Migration involved rethinking how Windows Failover Clustering works with disk resources. Both the original and R2 versions of Hyper-V rely on Windows Failover Clustering as the service for high availability. The result is that virtual machines exist as cluster resources and are failed over as such when problems occur.
In early versions of Windows Failover Clustering, however, Microsoft's architecture did not provide for disk resources that were cluster-aware. As a result, a problem that mandated a failover event required the entire disk resource to fail over. If multiple virtual machines were homed on that disk resource, they would all fail over at once. Because of this limitation, Microsoft's guidelines for highly-available disk resources in the original version of Hyper-V was to limit virtual machines to one per LUN. This created massive administrative headaches, as admins were tasked with keeping virtual machines and LUNs correctly configured at the storage, server and application layers.
In Hyper-V R2, Microsoft announced the availability of Cluster Shared Volumes (CSVs). These cluster-aware volumes are the company's first foray into cluster awareness for disk resources, and although they can be enabled on any generic Windows Failover Cluster, they're currently designed for use specifically with Hyper-V.
CSVs are unique in that they still use the core NTFS file system that Microsoft operating systems have used for years. Natively, this file system doesn't have the locking mechanisms in place for multiple hosts and simultaneous access. With CSVs, an additional layer of management is placed atop the default file system to ensure that all cluster nodes are aware of who owns – and thus manages and modifies – which files and folders. Cluster nodes consult the CSV management layer prior to making changes to files and folders on a CSV, enabling true multiple-server access to a single NTFS volume.
The effect to your environment is that multiple virtual machines can now be homed on a single LUN, dramatically reducing your number of LUNs as well as administrative overhead. The cluster will fail over individual virtual machines as necessary without affecting the entire disk resource.
As you can probably guess, this management layer requires the precise orchestration of ownership information among all the files and folders on the disk as well as between each node in the cluster. The files associated with Hyper-V's virtual machines tend to be small in number and large in size, which dramatically reduces the number of objects to keep track of. For this reason, CSVs are currently supported for Hyper-V clusters only.
Staying cost-free with Hyper-V Server 2008 R2
With the recent release of VMware's vSphere 4.0, the virtualization wars heated up. This update to VMware's virtualization platform brought about an evolutionary jump in features and capabilities. Unfortunately, it brought a major increase in costs along with it, particularly for small- and medium-sized businesses that are just now dipping their toes in the virtual pond.
Along with the release of Windows Server 2008 R2 comes an accompanying release of Hyper-V Server 2008 R2. This functionally similar product -- with a name that's too similar for many IT pros to keep straight -- enables a completely free virtualization platform for Windows shops. For the record – and because many IT pros still don't understand the difference -- Hyper-V is the role you install to a "full" instance of Windows Server 2008. Hyper-V Server is the freeware edition that arrives as a trimmed-down Windows Server Core instance.
You can compare virtual vendors at their low-end price points because Hyper-V Server 2008 R2 now includes high availability and live migration for no extra cost in its already low-cost price point. The result is a shot across the bow toward VMware's pricing for SMB environments.
If you're in a small environment and looking to bring virtualization forces to bear, Hyper-V Server 2008 R2 brings all of the high-availability features in the "regular" product to its affordable freeware package. Like the full instance, the second version of Hyper-V Server can be managed via the Hyper-V Manager and Failover Cluster Manager toolsets, or it can be integrated into a System Center Virtual Machine Manager infrastructure.
While these updates head the list of top new capabilities, Microsoft has added a few extra goodies to the package as well. It calls the first one Dynamic Virtual Machine Storage, which is shorthand for the hot-plug and hot-removal of disks from virtual machines, which enables you to add and remove disks from your VMs without having to power them down.
You'll also find support for the latest edition of hypervisor extensions that are in the processors of today's bleeding edge servers. These new processor extensions for virtualization are generically referred to as Intel EPT and AMD RVI. Both provide a dramatic performance boost over the previous-generation Intel VT and AMD-V extensions but require hardware that supports their new instruction sets. For servers that enjoy such benefits, Microsoft supports their use through what it calls SLAT, or Second Level Address Translation. The net effect is a substantial improvement of raw VM performance when hosted on hardware that supports these extensions, particularly for VMs that run memory-intensive workloads.
CPU Core Parking and the enhanced networking support for jumbo frames are two more features. CPU Core Parking is a power management feature of Windows Server 2008 R2 that enables Hyper-V and other workloads to offload processing to fewer cores when needs are light. Cores that aren't needed are simply shut down, reducing power usage of the server during periods of low use. Jumbo frame is a networking feature that improves performance for certain types of workloads. Its enlarged frame size was previously available for non-virtualized workloads, but support has been added for Hyper-V in this release.
Clearly, there's plenty to be excited about in Hyper-V for Windows Server 2008 R2. Greater levels of administrator-friendly high availability are the big upgrades, while cluster-aware volumes will also improve your life when you're managing virtual machines. Microsoft's recent announcement about its free Hyper-V version makes the whole package that much cheaper to deploy. If you're one of the many who are on the fence when it comes to virtualization, R2 may be the clincher that kick-starts your move.
ABOUT THE AUTHOR
Greg Shields, Microsoft MVP, is a partner at Concentrated Technology. Get more of Greg's Jack-of-all-Trades tips and tricks at www.ConcentratedTech.com.
This was first published in June 2009