Reasons why Hyper-V is inferior to Vmware

****this post is unpolished, and will be randomly updated*******
I keep seeing traffic saying that Microsoft's Virtualization is free, or at least cheaper than Vmware.  Well, I going to make an attempt at debunking those statements.  Before anyone just dismisses this post on the merit of me simply being a Vmware fanboi; let me say that I was running Microsoft Virtual Server for years on my home lab dual Intel Pentium III server.  Yes that goes way back, even before the name change to Hyper-V.  Currently I am assisting in the administration of a small 2012 Hyper-V server farm.  Also I love the fact that another company is competing seriously with Vmware.  Competition keeps companies progressing in features and keeps costs "down".

Anti-Virus: Because Windows is the hypervisor, it should have Antivirus protection on it.  Their is a financial cost to having one more AV license, plus installing it consumes more ram, processor, and hard drive space, that should be used for VM's.  Vmware's ESXi is a harden appliance with almost no attack surface.  

Backup: Because Windows is the hypervisor, it should be backed up.  This adds the cost of another backup agent, and the cost of space of backing up one more machine.  One could argue, well to do it right the Windows HV host should ONLY be doing HV, and nothing else; therefore if it breaks it is easy to rebuild if necessary.  I fully agree, however, how long does it take to install Windows 2012, activate it, install all the updates, install AV, configure the HV roll?  Four hours?  Six hours?  

ESXi can be installed in under an hour.  ESXi because it is so small, and so quick and easy to install the vast majority of implementations don't bother backing it up the host.  For those that want to there is a command that dumps out the configuration out to a text file that can be imported at a later time.   The ESXi OS is so small that many installs are put on to a 2gb USB thumb drive/SD card.

Memory efficiency:  Because one must install Windows 2012/2008 on the bare metal, it consumes more ram, not to mention hard drive space; space better suited for VMs. The ESXi OS is so small that many installs are put on to a 2gb USB thumb drive/SD card.  The ram footprint is usually less than 1gb.  A 2gb minimum requirement is there to actually install ESXi.  

Hyper-V is simply not as efficient with ram as Vmware.  For instance, I have a client with a brand new install of Server 2012r2 running HV, in this case the host is also a member AD server.  It has 16gb of ram.  It has one Server 2008r2 VM with 10gb of ram assigned to it.  There are to XP VM's, one with 2gb and one with 1gb of ram assigned to them.  So 10 +2 +1 = 13gb of VM's leaving 3gb for the 2012 host, no problem right?  WRONG!  I cannot get both XP VM's to run at the same time, as there isn't enough ram.  Later on I was able to change the start up ram on both XP machines to 1gb, and change the dynamic ram to 512mb as a minimum and a 2gb maximum; this got all three machines to run simostainlsy.  With ESXi one could "over allocate" ram and run more than 16gb of allocated virtual ram.  In fact I often tell customers that they should be over allocating by 20%, but that is another post all to itself.
Vmware has Transparent Page file-where if more than one VM has a file in ram, and it is identical for another VM, only one copy of that file is stored in ram, and pointers assigned to it.  Memory compression-files in ram are actually compressed (kinda like WinZip).  Memory Balloon driver-if the host is running low on ram, it will trick the VM to move files in ram that are seldomly accessed to its swap file (aka Windows Swap file, of the VM).  


No comments:

Post a Comment