Nefunguje nested virtualizace ESXi pod KVM - Debian Wheezy

Majales1


Zdravím, Snažím se ( hlavně z důvodů testování) rozchodit nested virtualizaci pod KVM/Qemu. Mám Supermicro server s CPU Intel Xeon E3-1230 V2, OS Debian Wheezy s backports kernelem 3.16 a qemu balíček z backports.

uname -rv
3.16.0-0.bpo.4-amd64 #1 SMP Debian 3.16.7-ckt25-2~bpo70+1 (2016-04-12)

kvm --version
QEMU emulator version 2.1.2 (Debian 1:2.1+dfsg-12+deb8u5a~bpo70+1), Copyright (c) 2003-2008 Fabrice Bellard

libvirtd --version
libvirtd (libvirt) 1.2.9

VT-d je povoleno v Biosu, intel_iommu=on v /etc/default/grub.cfg

dmesg | grep -e DMAR -e IOMMU
[    0.000000] ACPI: DMAR 0x00000000CDECEC38 000078 (v01 INTEL  SNB      00000001 INTL 00000001)
[    0.000000] Intel-IOMMU: enabled
[    0.029242] dmar: IOMMU 0: reg_base_addr fed90000 ver 1:0 cap c9008020660262 ecap f010da
[    0.029316] IOAPIC id 2 under DRHD base  0xfed90000 IOMMU 0
[    0.652518] DMAR: No ATSR found
[    0.652531] IOMMU 0 0xfed90000: using Queued invalidation
[    0.652532] IOMMU: Setting RMRR:
[    0.652539] IOMMU: Setting identity map for device 0000:00:1a.0 [0xcdd3c000 - 0xcdd58fff]
[    0.652556] IOMMU: Setting identity map for device 0000:00:1d.0 [0xcdd3c000 - 0xcdd58fff]
[    0.652564] IOMMU: Prepare 0-16MiB unity mapping for LPC
[    0.652569] IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 0xffffff]
[    0.721558] AMD IOMMUv2 driver by Joerg Roedel..
[    0.721560] AMD IOMMUv2 functionality not available on this system

EPT flag CPU je taky dostupný.

 egrep -wo '^flags|vmx|ept|vpid|npt|tpr_shadow|flexpriority|vnmi|lm|aes' /proc/cpuinfo --color | sort |uniq -c
      8 aes
      8 ept
      8 flags
      8 flexpriority
      8 lm
      8 tpr_shadow
      8 vmx
      8 vnmi
      8 vpid

konfigurace kvm pro nested je taky povolena:

cat /etc/modprobe.d/kvm-intel.conf
options kvm ignore_msrs=1
options kvm-intel nested=y ept=y

v konfiguraci vm mám

..
     <kvm>
       <hidden state='on'/>
     </kvm>
   </features>
   <cpu mode='host-passthrough'>
   </cpu>
  ..
  ..
  ..
       <source bridge='br0'/>
       <target dev='vnet0'/>
       <model type='e1000'/>

ESXi 6 šlo z média ve virtuálu normálně nainstalovat, ale při instalaci to hlásilo:

"HARDWARE_VIRTUALIZATION WARNING: Hardware Virtualization is not a feature of the CPU, or is not enabled in the BIOS"

K ESXi se pak lze připojit pomocí vSphere klienta ovšem při pokusu spustit 64-bit VM to zahlásí tuto chybu.

Failed to start the virtual machine.
This virtual machine is configured for 64-bit guest operating systems. However, 64-bit operation is not possible.
This host supports Intel VT-x, but the Intel VT-x implementation is incompatible with VMware ESX.

Ve VM je pak upravený /etc/vmware/config takto:

..
vhv.allow = "TRUE"
hv.assumeEnabled="TRUE"
vmx.allowNested = "TRUE"

Takže se ptám, je to vina Qemu? A pokud ano, doporučili byste kompilaci vlastního Qemu, a pokud ano, jakého abych nenarazil na nějaký problém kvůli staršímu kernelu?