If hypervisor is commodity, why is VMware still on top?
Microsoft and open-source rivals lose it in the labs
The hypervisor is a commodity. VMware's ESXi, Microsoft's Hyper-V and the open-source community's Xen and KVM are all right and proper tools for virtualising workloads. Does that mean we should all stampede away from expensive proprietary hypervisors and dine on the open-source freebies? This being IT, the answer is "it depends".
Each of these hypervisors is a bad fit for certain niches and marketing wonks at VMware are never happy when I proclaim the hypervisor a commodity, but for your everyday workload it's true. So if this is the case, why aren't KVM or Xen more popular? For that matter, why is Hyper-V – which is a perfectly capable and credible hypervisor – lagging so far behind ESXi?
There are technical answers to these questions, as well as economic, political and cultural ones. They all interact and they all play a part. Perhaps the most important answer to bear in mind is that – quite simply – first impressions matter.
Very few of us go back and continually revisit our assessments of technologies, products and services we find did not meet our needs. We did an assessment in the past, why revisit the decision? Especially if what we have to hand works.
The short answer to that question is: "Because it can save you a lot of money." Something that – oddly enough – doesn't actually matter to all that many people in the purchasing decision-making chain. Still, just for fun, let's give cross-comparing today's virtualisation technologies a go.
Being the de facto industry standard, it's really hard not to use VMware's ESXi as a standard candle by which to judge all competitors. It's also worth noting that VMware almost always wins out on quick tests because it excels at test-lab implementations, something Hyper-V in particular is very bad at.
The key to VMware's test-lab success is that it is excellent at being a self-contained environment. A full vSphere implementation with all the management tools, virtually every feature and so forth requires little more than a pair of servers, some storage and the vCenter Server Appliance.
No domain controller is required. You don't need to set up "libraries" or other complicated fooferah in order to use an ISO image or inject a virtual machine (VM) template. The standard management tools allow you to create a VM, connect to its console, easily feed it an ISO from anywhere the system you're using can find one and go. Easy, peasy.
How about Hyper-V without System Center and as part of the GUI install of Windows Server? Is this easy? It's quite deceptive, as a matter of fact, because as soon as you're trying to use Hyper-V Server (or as part of Windows Core) it's a right pain to get going. VMware can be set up by a lobotomised monkey wigging out on bad crack, but Hyper-V server requires having the Mystical Book Of Commands to not only feed it set-up information it's supposed to have, but to work around WONTFIX bugs.
Similarly, trying to use System Center imposes a huge web of limitations and dependencies. The stupidest of them all is that console access to a VM using the Hyper-V manager in Server 2012 will let you mount an ISO to a VM and go, whereas with System Center it will only mount ISOs that are part of the System Center library.
The library, of course, can't just be any SMB or NFS share, but has to be owned by a domain-connected server that has met all the voodoo requirements. So you need a domain controller, a library server, a System Center server (or multiple, if you want to use more than SCVMM and have System Center actually work,) as well as the Hyper-V servers themselves.
Once it works, Microsoft's virtualised Rube Golbergian mindfrak works reasonably well, but it's not easy to test-lab and it's not easy to integrate into existing environments. Especially heterogeneous environments, or ones where you want the virtual servers to live out in the DMZ.
On the flip side, if you're a script junkie you can make entire data centres of Hyper-V servers dance with PowerShell. In theory, you can do this to ESXi (via PowerCLI) as well, but Microsoft's implementation has generally been more robust and the community around it that little bit broader and more active.
VMware GUI-based management tools, however, absolutely wreck Microsoft's, especially when dealing with large deployments.
This situation has led to the elevation of 5Nine to cult-like status among SMBs. It has a feature set rivalling System Center Virtual Machine Manager, but is generally cheaper. Mostly, however, it is beloved both because there is a free edition for home labs and because it provides a Hyper-V management interface not birthed in an unholy Lovecraftian dark rite has even earned it production use in some midmarket companies.