Evaluating the major VM management solutions
Confirming what most people already know, an IDC study from October 2008 showed that VMware was the clear leader in the enterprise virtualization marketplace, with 78 percent of the market. However, since the release of Windows Server 2008, Microsoft has been making a strong push in the enterprise virtualization market with Hyper-V.
Last year, I compared VMware’s ESX Server 3.5 and Windows Server 2008 Hyper-V. I concluded that while Hyper-V was a strong challenger to ESX Server and definitely a cost-effective solution, ESX Server was a more mature product that offered several management advantages and held a slight performance lead over Hyper-V. (See “Virtualization Shootout, Part 1” and “Virtualization Shootout, Part 2.")
Several VMware proponents were quick to point out that ESX Server supports VMotion, while Hyper-V at that time had only Quick Migration. That contention was true, but the original comparison was between the virtualization platforms themselves—not the management frameworks provided by each vendor. VMotion is not a feature of ESX Server: It’s a part of VMware’s virtualization management platform and was beyond the scope of our original comparison. This article is a follow-up to the original ESX versus Hyper-V comparison.
However, this time I focus on the virtualization management platforms offered by VMware and Microsoft. A lot has changed in a year: VMware has totally revamped its virtualization management line and rebranded it as vSphere. Likewise, Microsoft has updated Server 2008, Hyper-V, and System Center Virtual Machine Manager (VMM) 2008 with new R2 releases.
At first I decided to compare VMM to vSphere, but it soon became apparent that the scope of these two products isn’t equal. VMware’s vSphere is a complete management platform. (See the sidebar "VMware vSphere Components" for a list of its components.)
The closest comparison isn’t to VMM but rather to Microsoft System Center Enterprise Management Suite (for a list of its components, see the sidebar "Microsoft System Center Enterprise Suite Components"). So instead, I compared how VMware’s vSphere and Microsoft System Center Enterprise Management Suite match up when addressing some of the important issues faced by IT administrators.
Infrastructure Management: VMM vs. vSphere Client
First, I compared management interfaces. Microsoft’s offering for VM management is VMM, which provides a completely different management experience than the Spartan interface offered by Microsoft’s Hyper-V Manager. VMware offers the vSphere Client.
The VMM administrative console, which Figure 1 shows, lets you manage virtual machines (VMs) from multiple hosts—including ESX Server—for mixed virtualization management. VMM is cluster aware, in that it automatically adds all nodes in a cluster and can perform cluster configuration for high availability and live migration for you.
It also enables you to manage other virtual assets including creating and storing templates, ISO images, sysprep answer files, and different standard hardware configurations. In addition to managing VMs, the VMM console can also perform physical to virtual (P2V) migration and virtual to virtual (V2V) migration for VMware VMs.
One of the best features in VMM 2008 R2 is its integration with Windows PowerShell, so almost all of the actions can be easily scripted into PowerShell commands. However, one problem I ran into while managing VMs with both Hyper-V Manager and VMM was that I occasionally wound up with orphaned VM entries in the VMM console.
VMM requires access to a Microsoft SQL Server system on the back end to store its information. VMM2 2008 R2 does require Windows Server 2008 R2 x64 and it can use SQL Server 2005 SP3 and SQL Server 2008.
VMware’s management interface, vSphere Client, provides a broader management scope, unlike the VMM administrative console, which focuses on VMs. VMware vSphere Client includes the ability to manage host and VM performance data as well as user and role management. You can see the vSphere Client in Figure 2.
The vSphere Client enables you to perform the full range of VM management functions. When you’re running the vSphere Client with a vCenter Environment, the menu options in the vSphere Client are populated with more advanced options, including the ability to clone VMs and perform VMotion transfers between hosts. (More information about VMotion is presented later in this article.)
Overall, I preferred the vSphere Client to the VMM console. I found it easier to use and more efficient with important performance information close at hand. I had little need to go to other tools. However, some important features such as Datastore management were hard to find, being buried under the Summary tab.
Planned Downtime: Live Migration vs. VMotion
Without a doubt, VMotion was the feature that most readers commented on in my previous comparison review. VMotion is a ground-breaking technology that enables VMs to be moved between ESX Server hosts with no downtime and no interruption of end-user services.
VMotion does require compatible CPUs on the ESX Server hosts. In other words, both hosts must use processors from the same manufacturer, and they must be part of the same processor family.
VMotion isn’t part of vSphere Standard edition, but it’s in vSphere Advanced, Enterprise, and Enterprise Plus editions. VMotion also requires vCenter Server.
The original release of Server 2008 and Hyper-V didn’t include capabilities equivalent to VMotion. The first release of Hyper-V did have a feature called Quick Migration, which wasn’t really all that quick. Quick Migration essentially saves a VM’s state, then moves all of the VM files to a different storage location and restores the VM state.
The release of Server 2008 R2 introduced the new Live Migration feature for Hyper-V. Comparable to VMotion, Live Migration enables VMs to be moved between Hyper-V hosts with no downtime and no interruption of end-user services.
Live Migration is enabled by a new Server 2008 technology called Clustered Shared Volumes (CSV). Live Migration requires Windows Server 2008 R2, and the Hyper-V hosts must also be a part of Windows Failover Cluster. The advent of Live Migration has given Microsoft feature-parity with VMware in the area of planned downtime.
However, Live Migration isn’t identical to VMotion. The maturity of the VMware platform shows: ESX Server can perform multiple concurrent VMotions while Hyper-V is limited to one Live Migration at a time.
Unplanned Downtime: Windows Failover Clustering vs. HA/FT
Addressing unplanned downtime is the other half of the high availability question. For a Microsoft implementation, a virtual IT infrastructure uses Windows Failover Clustering to address the issue of unplanned downtime. Failover Clustering allows up to 16 servers to work together to provide redundant hardware services. (Though not available in Server 2008 Standard edition, it’s supported in the Server 2008 Enterprise and Datacenter Editions.)
Windows Failover Clustering also requires an isCSI or Fibre Channel SAN for shared storage.
Failover Clustering can be used at both the virtualization host and guest levels. At the host level, Failover Clustering provides protection from the potential single point of failure of the Hyper-V server. If a Hyper-V server that’s part of a Windows Failover Cluster fails, then all of the VMs running on that server will be restarted on another node.
Similarly, VMs themselves can act as nodes in a failover cluster and the different nodes can be running on multiple Hyper-V hosts. With Failover Clustering, the failover process is completely automatic, with minimal downtime as services are restarted on alternate nodes. The actual amount of downtime depends on the services themselves and the capabilities of the hardware platform.
VMware vSphere has two options for addressing unplanned downtime: High Availability and Fault Tolerance.
High Availability is in all the editions of vSphere. It supports up to 32 node clusters on the vSphere Enterprise Plus edition and up to 16 nodes on the other editions. Like Failover Clustering, High Availability provides protection at both the server level and VM level.
Also like Failover Clustering, VMware High Availability incurs some downtime as VMs are restarted on backup servers. High Availability is able to take advantage of DRS to optimize the placement of VMs to be restarted. More information about DRS is presented in the next section.
Fault Tolerance is a new feature in vSphere 4. Unlike High Availability, Fault Tolerance works only between two systems, but it provides protection from system failure with no downtime.
Fault Tolerance uses a VMware technology called vLockStep. The vLockStep technology keeps the virtual processors of two VMs in synch at the instruction level. If one VM fails, the other VM steps in instantly as it’s running at the exact same processor instruction and has an exact copy of the RAM that’s in the primary VM. Fault Tolerance is limited to two VMs, and each VM is limited to a single virtual processor.
Dynamic Infrastructure: VMM PRO vs. Distributed Resource Scheduler
Dynamically changing your system configurations to meet changing workload requirements is another feature that IT administrators are concerned about.
Microsoft’s virtualization management platform addresses dynamic IT management via the VMMs Performance Resource Optimization (PRO) feature. VMMS PRO works in combination with Ops Mgr and can automatically initiate Live Migration in response to host or VM CPU or memory utilization levels.
VMware addresses the issue of dynamic management with its Distributed Resource Scheduler (DRS) feature. Similar to VMM PRO, DRS can automatically invoke VMotion to move VMs between ESX Server hosts based on resource utilization. However, DRS uses more advanced features such as a global scheduler and Resource Pools to provide a finer level of control over how and when VMs are moved. DRS can be coupled with Distributed Power Management (DPM) to automatically shut down servers when the workload decreases, then later dynamically power up again to meet increased user demand.
Storage: Quick Storage Migration vs. Storage VMotion
Storage management is another important concern of IT administrators.
Server 2008 R2 includes a new Quick Storage Migration feature. As was the case with Quick Migration, Quick Storage Migration is a feature that’s not quite up to the standards set by the competition.
Quick Storage Migration enables you to rapidly move VMs to different storage locations. With Quick Migration, there's some downtime as the VM’s state is saved, then restored when it's in the new location. It's primarily designed to enable you to take advantage of Server 2008’s ability to run multiple VMs per LUN. (Previous versions of Hyper-V required one VM per LUN, which was difficult to manage.)
Quick Storage Migration lets you quickly consolidate your VMs together on a larger shared LUN.
VMware’s Storage VMotion provides the same type of ability to move VMs to different storage locations. However, Storage VMotion is a generation ahead of Quick Storage Migration. Like its namesake VMotion, Storage VMotion enables you to move VMs between different storage locations with no downtime.
Performing a storage VMotion takes roughly the same amount of time as performing a cold migration of a VM’s files to a new LUN.
Backup: DPM vs. VMware Consolidated Backup
Backup is another important consideration in the management of your virtual infrastructure. You can achieve a very basic level of backup for your VMs by using Windows Server Backup on the Hyper-V host. However, Windows Server Backup is extremely limited as it's a volume-oriented backup.
System Center Data Protection Manager (DPM) 2007 provides a much more capable backup platform. DPM can provide host-based backup for Hyper-V VMs as well as other Microsoft server platforms such as SQL Server, SharePoint, and Exchange. DPM is also able to perform DPM to DPM replication for offsite protection.
For backup tasks, VMware’s vSphere provides VMware Consolidated Backup. VCB provides both full and incremental backup of VM files. It can also run on another server by proxy, which allows it to reduce the load required on the host while the backup operation is performed. VCB enables you to recover whole VMs as well as individual folders and files from inside a Windows VM. VCB isn't integrated with any Windows Server applications.
System Center Features Not Found in vSphere
Because of its holistic view of the different IT resources in the enterprise, System Center Enterprise Management Suite has many features that vSphere doesn't have. Some of them include the following:
• Management of all physical systems—Ops Mgr is able to monitor the health of both physical and virtual servers. vSphere manages only the components of a virtual infrastructure. vSphere can monitor the performance of ESX Server hosts.
• Heterogeneous VM Management—VMM supports management of both Microsoft’s Hyper-V hosts and VMware ESX Server's hosts, if VMware’s vCenter Server is present.
• Deep management of applications including SQL Server, Exchange, and SharePoint—In addition to hardware and OS monitoring, Ops Mgr is also able to manage Microsoft server applications including SQL Server, Exchange and SharePoint. vSphere doesn’t provide application management.
• Application level backup and restore—DPM can back up and restore Microsoft servers such as SQL Server and Exchange. VCB backs up at the VM level and can restore individual files, but it's not application aware.
• Software inventory, deployment, and management—Configuration Manager’s ability to inventory hardware and software and to deploy OSs, applications, and updates has no equivalent in vSphere.
vSphere Features Not Found in System Center
vSphere maturity shows in the types of virtualization management features that aren’t found in Microsoft’s System Center suite. Some of the main features that have no counterpart in System Center include these:
• Broad support for popular Linux distributions—vSphere’s ESX Server fully supports all of the popular Linux distributions. While other distributions can run on Hyper-V in legacy mode, Microsoft supports only SUSE on Hyper-V using the higher performance VMBus architecture.
• Multiple VMotions—vSphere can per¬form multiple concurrent VMotions. Hyper-V is limited to one Live Migration at a time.
• Support for multiple virtual CPUs on Linux—ESX Server supports up to four-way virtual CPUs for Linux. Hyper-V supports only a single virtual processor for Linux VMs.
• NIC teaming—Thanks to its direct control over the drivers, ESX Server supports NIC teaming on all types of NICs. Hyper-V doesn’t directly support NIC teaming but can take advantage of it if it's provided by specific network adapter drivers.
• Memory Over-Commitment—ESX Server also support the ability to make the memory requirements of the running VMs exceed the physical memory in the host. This lets you potentially run more VMs per host, but there's a performance hit for using this feature.
• Distributed Network Switch—Enables you to create and share network configuration between multiple servers.
• Distributed Power Management—Another advanced virtualization feature, Distributed Power Management (DPM), enables vSphere to optimize power consumption by using VMotion to move VMs off lightly loaded hosts, then power those hosts off.
No comparison of platforms is complete without looking at how much it costs to deploy each platform. Table 1 compares the basic licensing costs to deploy 10 physical servers with each server running 10 VMs apiece. This comparison is created with the assumption that you're deploying 10 dual-core servers. I didn’t include server costs, as the hardware required for each platform is essentially the same.
In Table 1, you can see that the costs for Server 2008 Datacenter edition are the same for both platforms. The Datacenter edition is the best Server 2008 choice because it permits an unlimited number of virtual Windows instances with no additional licensing costs. Likewise, the virtualization software itself is included with each platform.
The biggest difference is in the management suite. vSphere is licensed by CPU socket and is a bit more expensive. Plus, the required vCenter Server must be purchased separately. VMware vSphere is the more expensive virtualization management platform.
However, it also offers many virtualization features that aren’t in the Microsoft platform. I have seen alternative licensing comparisons that show better advantages for the VMware platform. But most of these are based on running more VMs per server. That isn’t necessarily a given.
Hyper-V supports workloads comparable to those ESX Server supports, certainly up to the 10 active VMs per host server on which this comparison is based. That said, the new 64-bit version of ESX Server 4.0 clearly provides better performance than previous version. In a coming issue of Windows IT Pro magazine we’ll revisit the performance comparison of the new ESX Server 4.0 and Hyper-V R2.
A Generation Ahead vs. A Cheaper, Broader Reach
VMware’s vSphere is a generation ahead of Microsoft’s System Center as far as virtualization management is concerned, but the Microsoft platform is less expensive and has a broader reach over what it's designed to manage. Although each virtualization management platform has certain advantages, there's also a different guiding philosophy behind each platform.
Microsoft’s System Center Enterprise Management Suite is designed to provide seamless management for both physical and virtual servers.
In contrast, VMware’s vSphere is designed to enable IT to build an internal cloud where all resources are virtualized, and it provides dynamic management of the virtual infrastructure.
Although I looked at the different platforms as alternatives, you can certainly combine these platforms, and many companies do.