The world of virtualization has been divided in two when it comes to picking a virtualization platform (come on, who cares about Xen, KVM, or other similar also-rans?). Do you go with the legacy incumbent, ESXi/vSphere, or do you go with the designed for modern computing, Hyper-V/System Center?
In case you haven't noticed, yes, I am biased towards the Microsoft stack. I am a Microsoft Most Valuable Professional with the Hyper-V expertise. I promote and sell Microsoft licensing. I write about Microsoft products. But (and it's a big but) I started off happily working with the VMware stack (Workstation and ESX/vCenter), and I've angered more than a few Microsoft "blue badges," aka full-time employees, with my criticisms in the past (for an example, see my post "What Went Wrong At Microsoft"). Back in 2008 I started a project and I had my choice of virtualization stacks to build a business on. I evaluated the two big contenders, being quite critical of Hyper-V during the beta period, but eventually I reasoned that Microsoft had the best path going forward. Management agreed with me, and I haven't look back since. So in this op-ed I want to give you my top 5 reasons to consider Windows Server 2012 R2 Hyper-V.
Hyper-V vs. VMware vSphere: Making the Right Comparison
Note that when comparing the two companies, it's important to compare apples with apples. That means you either compare the fully featured Hyper-V Server 2012 R2 with the cripple-ware ESXi Free (Hyper-V wins in every possible way). Or you compare Windows Server and System Center with vSphere Enterprise Plus with vOperations Management Suite Enterprise Plus (and Microsoft has so much more to offer here, too).
Do not fall into the trap of comparing different packages, such as comparing WS2012 R2 Datacenter Hyper-V with vSphere Enterprise Plus. Both companies package their products differently, so features reside in different places. For example, VMware's DRS (virtual machine load balancing) resides in vCenter, whereas Microsoft's Dynamic Optimization resides in System Center Virtual Machine Manager. To tilt the cart the other way, Microsoft includes all of their features – including Cluster Aware Updating (automatic patching) – in even the free edition of Hyper-V, whereas VMware has a plethora of decreasingly crippled packages of vSphere as you move up the pricing ladder.
Beware of the FUD
I know that the comments on this article may be… let's say, colorful and intense. I also know that there will be a lot of fear, uncertainty and doubt, or "FUD." Some of it will be innocent. Much of it will be out of ignorance and anger. There are those who are invested in the VMware business who don't want to realize that their competitor is growing market share at four times the rate of their favored product. Maybe those people fear their jobs are at risk? Maybe they don't want to re-skill? Maybe they work for a VMware reseller and are addicted to the rebate that they get for even trying to sell VMware software?
Personally speaking, I don't care what virtualization stack you choose to deploy. You might argue that I'm in the business of selling Microsoft server licenses. This is true – but in the end, if you license your Windows virtual machines correctly, you're buying the same Windows Server licenses that you would use if you were buying vSphere or using Hyper-V.
And with that out of the way, let's get down to the business of money.
1. Hyper-V Is Free
You can't beat a free lunch, never mind when it comes with a free dinner, supper, and breakfast. Imagine that you are going to deploy a 5-node virtualization cluster. Each node will have 2 x 6-core processors. There will be at least 20 virtual machines running on each node at any one time. Ninety percent of those virtual machines will run Windows Server. The rest will run the CentOS Linux distribution. You have to price up the solution to run either Hyper-V or vSphere, with live migration which is also known as vMotion.
The hardware will probably be the same, so let's rule that out and stick with the software. The correct way to license each host to run many Windows Server virtual machines is actually to license each host with Windows Server Datacenter edition. Each Datacenter license cost $6,155 under Open NL licensing. That's the most expensive kind of volume license you can get, and it's also the one you see listed publicly. Datacenter edition gives you the following:
- The rights to license a server with up to two processors to run Windows Server.
- Licensing for an unlimited (yes, no limits) number of Windows Server virtual machines on that licensed host. Note, if those virtual machines move to another host then that host needs licensing too, even if the move lasts just one second.
- Oh, and you have the right to enable the fully featured Hyper-V on the host.
Let's say a host has 20 virtual machines. That will cost $6,155. If that host runs vESXi free, the Windows Server licensing cost for the 20 virtual machines will be $6,155. If the host runs vSphere Enterprise Plus, the Windows Server licensing cost will be $6,155. If the host runs Hyper-V, the Windows Server licensing cost will be $6,155. We have five hosts, so the total Windows Server cost will be $30,775. It is basically up to you if you want to install Windows Server Datacenter on the host and enable Hyper-V. You can just record that you've assigned the license to a host, and install vSphere… at an additional cost.
For those who balk at the cost of the Datacenter license, to license each virtual machine with the Standard edition (which could cause legal issues with vMotion or live migration) would cost $882 per virtual machine, or $88,200 for at least 100 virtual machines.
What is the cost of vSphere? We'll need to go with the cripple-ware Standard edition to get the cheapest license with vMotion. That will cost $1,940.25 and it is per processor. We have five hosts with two processors each, so that is 10 processors, costing $19,402.50 for vSphere. Add in the Windows Server licensing costs and the total for a vSphere implementation would be $50,177.50.
A Hyper-V implementation would have been just the cost of the Data Center licensing. That's $30,775, a whopping 38 percent cheaper than the VMware-based alternative. And you'd get all of the features of Hyper-V without any constraints, unlike those imposed by VMware on each edition.
This is where someone cries about Linux. Yes, Hyper-V supports Linux. The Linux Integration Services (like VMware tools) are built into most of the Linux distributions that are using in hosting or private enterprise, making them Hyper-V ready and supported out of the box. You do not have to buy Windows Server to run Hyper-V if all of your virtual machines will be Linux based. You can download the fully-featured and free Hyper-V Server 2012 R2. I can't say that ESXi Free is fully featured; it's probably best to call it barely-featured, considering the 32 GB RAM per host limitation that is applied by this cripple-ware doesn't offer vMotion, HA, and other such features considered essential in enterprise virtualization.
Hyper-V = free. VMware = pay lots more.
2. Scalability
I laugh when I hear "vFanboys" cry that Hyper-V isn't scalable for enterprise workloads. This is the perfect example of ignorance or blind loyalty.
You might remember an American company that used to feature the owner saying "I like it so much that I bought the company." Microsoft uses Hyper-V. Sure, Microsoft has some 95,000 employees, so you can imagine that they run a lot of hosts internally. But that is nothing when you consider that Microsoft Azure is based on Hyper-V. The Xbox game, Titanfall, ran on 100,000 Azure virtual machines, or, 100,000 Hyper-V virtual machines in Microsoft Azure. When someone deploys a cloud service in Azure, it's running on Hyper-V.
Let's look at scalability numbers. The following table, from a Microsoft whitepaper called "Competitive Advantages of Windows Server 2012 R2 Hyper-V over VMware vSphere 5.5," shows how a WS2012 R2 host compares with vSphere 5.5. Note that Microsoft didn't bother increasing these "Top Gear" numbers since WS2012 because they had reached theoretical limits that customers were no longer interested in. Microsoft jumped way beyond VMware with the release of WS2012, and maintain much of that lead with WS2012 R2 despite VMware playing catch-up for their last two releases.
Comparing WS 2012 R2 Hyper-V and VMware vSphere virtualiztion scalability
Nice numbers for the hosts, but I'm more interested in getting big workloads operating as virtual machines. How does Hyper-V compare there? VMware matched Hyper-V with the ability to have 64 virtual processors and 1 TB RAM in a single virtual machine, assuming that you pay up for the Enterprise Plus edition at $6,815.25 per proc, or an additional $68,152.50 beyond the cost of the same Hyper-V installation.
3. Storage and Networking
Storage is a bedrock of virtualization. Bad storage leads to a bad virtualization implementation. Microsoft made huge investments in block-based (legacy) storage and software-defined storage in the years leading up to and following the release of WS2012.
Historically a cluster from either platform has required a SAN. Microsoft added alternatives in WS202 and developed them in WS2012 R2. SMB 3.0 is an alternative storage networking protocol that EMC (the owner of VMware) has declared publicly to be "the future of storage." When combined with Storage Spaces we can build scalable transparent storage in the form of a Scale-Out File Server. So not only can we reduce the cost of licensing with Hyper-V, but we can also reduce the cost of the physical storage with a flexible software-defined storage system. Meanwhile, VMware has released the interesting, but not production supported, vSAN.
In terms of storage performance, the Microsoft VHDX supports native 4K disks. The VMware VMDK does not, and therefore relies on a very inefficient RMW process.
In other storage areas, Hyper-V has ODX where vSphere Enterprise Plus has VAAI. VHDX grows up to 64 TB, where VMDK was recently expanded up to 62 TB. Both platforms have hot storage resizing, but vSphere is limited to expansion only.
A great service is pretty pointless if you cannot get to it. One of the big headline features of Hyper-V is Network Virtualization, also known as Software-Defined Networking (SDN). I'll give this to VMware: They know how to get the media to think that they're the first to do something. Lots of reporters believe that VMware NSX is the first network virtualization solution on the market. Microsoft was there a long time before VMware announced NSX. SDN was a reality in Microsoft Azure and was launched in WS2012 with System Center 2012 SP1 management. WS2012 R2 added virtual NVGRE gateway functionality to make NVGRE-based SDN a reality for businesses. This isn't just some marketing feature – SDN makes it possible for hosting companies to enable self-service network provisioning. It allows huge scalability of up to 16 million virtual subnets versus 4096 VLANs. And SDN increases flexibility, such as overlapping IP subnets or provider IP-agnostic cloud services.
Pure-software networking is not enough. Hardware in a host can offer functionality increases in performance and service scalability. Dynamic Virtual Machine Queue (DVMQ) provides more efficient and scalable processing of packets into the virtual switch from the physical network. Both platforms offer this hardware enhancement. For those for whom security is important, Hyper-V can offload the encryption and decryption of IPsec to a NIC; VMware cannot do this. Single-Root IO Virtualization (SR-IOV) enables selected virtual machines to connect directly to a host's physical for reduced latency and improved performance. Both platforms offer SR-IOV functionality, but only Hyper-V supports live migration of SR-IOV enabled virtual machines. Note that only Hyper-V offers a "no features that prevent live migration" policy. Microsoft also built on DVMQ to enable Virtual Receive-Side Scaling (vRSS). This feature enables huge throughput into network-intensive virtual machines. VMware also offers this feature but only with VMXNet3.
4. It's All About the Service, Dummy!
We IT pros focus on machines, switches, routers, pretty flashing lights, and all that jazz. The business does not give a monkey's about any of that. Your MD cares that the website is selling product to the customer. Sales cares that the CRM and order services are online. Accounts cares that the credit control service is running. Purchasing wants email and web services running. Our job in IT is to make services operational, available, and responsive. No one cares about virtual machines, but they do value services.
Microsoft has been building service-centric infrastructure for over a decade. System Center is all about deploying services (Virtual Machine Manager or SCVMM), monitoring services (Operations Manager or SCOM), automating services (Orchestrator or SCORCH), enabling self-service (Service Manager or SCSM), or the mother of all service systems, enabling the cloud (Windows Azure Pack or WAP).
VMware has a history of developing a great virtual machine virtualization platform. That's their expertise. They've developed and acquired a collection of point solutions over the years to build their own suite of products. Quite honestly, this collection befuddles me. I can never remember what product does what and how; there are just so many vProducts. The cost isn't pretty either. You can buy VMware's Operations Management Suite Enterprise Plus (for all features) on a per host processor basis for $4,245.00. That will total $42,450 to manage five dual processor hosts.
System Center is an all-inclusive suite that is licensed in the same fashion as Windows Server. Five copies of the Server Management License Datacenter edition for five dual processor hosts and unlimited virtual machines on those hosts will cost 5 x $3,607, or $18,035. So you get all eight components of System Center plus free add-ons like WAP (to build a cloud), Global Service Manager (global monitoring of web sites), and System Center Advisor (integrated cloud-based best practice analyser). And you get all of those tightly integrated suite components for less than half of the cost of the VMware management suite.
Note: When it comes to pricing, both companies offer different bundling options and discounts. I'm comparing list prices. I am also not comparing vCenter to System Center because vCenter has no way to compare with the Microsoft stack. I am sticking to comparing apples with apples.
5. Built from the Cloud Up
I hate to steal a line from Microsoft marketing, but this tagline for Windows Server 2012 and System Center 2012 SP1 perfectly describes what Microsoft has been doing. Microsoft built a cloud OS, a single consistent platform based on Hyper-V that runs in:
- Private cloud: managed by System Center
Public cloud: hosting companies that present their cloud to the customers via Service Provider Foundation (SPF, a REST API) and a WAP portal
Microsoft Azure: a hugely scalable cloud based on Hyper-V
Services can be deployed, managed, and automated using one System Center installation across the entire hybrid cloud. No virtualization or cloud company other than Microsoft can say that they have a consistent offering for private and public cloud, as well as hybrid cloud through the entire stack from fabric through to self-service.
The cloud OS, spanning private, public, and hybrid clouds.[source: Microsoft]
Right now the cloud OS gives you the flexibility to choose the right location to run the tiers of your services, as well as a path forward that you know is built for the future – instead how things were done in the past.