Nesting hypervisors

Original sources:
http://communities.vmware.com/docs/DOC-8970
http://www.vcritical.com/2011/07/vmware-vsphere-can-virtualize-itself/
http://www.veeam.com/blog/nesting-hyper-v-with-vmware-workstation-8-and-esxi-5.html

The above sources contain much of the same material, but I created this as an aggregation.  The following software versions were involved in testing:

  • ESX 5.0 – build 504890
  • XenServer 5.6 SP2
  • XenServer 6.0
  • Windows 2008 R2 with Hyper-V enabled
This was tested on my home lab, which uses the following hardware:
  • AMD 6128 (includes AMD-V and AMD-RVI support)
  • 64GB RAM
  • SuperMicro H8SGL-F motherboard

One of the more obscure but sought after features in the new ESX version 5 is support for hardware virtualization (Intel-VT/AMD-V) pass through.  This allows for nested hypervisors, albeit without any official support.  That being said it’s a great tool to allow people with a limited number of hardware machines to setup demo labs or to experiment with features that would otherwise require a large number of hardware components.  At a minimum you need a chip(s) that support VT/V, but your performance will be significantly better if your CPU also supports second level address translation (Intel-EPT/AMD-RVI).

In past versions of ESX, you could host nested hypervisor instances.  Those instances needed to be comfortable with only software emulation (which axes KVM, Hyper-V, XenServer, and pretty much any other Xen derivative) and 32 bit nested guest OS’.  These restrictions highly limited the viability of the feature if you had to interact with the modern 64 bit Windows Server world of 2008 (not required but normal) or 2008 R2 (required), or if you wanted to experiment with something other than ESX.

Continue reading