VMware Cloud Community
vmmochi
Contributor
Contributor
Jump to solution

64 bit guest on nested ESXi 5 not supported

I get a error about "Longmode is unsupported" when trying to install windows 2012 server on a guest vm on a nested ESXi 5 instance.

I've tried all the proposed resolutions I could find on the forums.  Does anybody know how to fix this?

On the physical and nested ESXi instances I have confirmed vhv.allow TRUE config,

~ # cat /etc/vmware/config

libdir = "/usr/lib/vmware"

authd.proxy.vim = "vmware-hostd:hostd-vmdb"

authd.proxy.nfc = "vmware-hostd:ha-nfc"

authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl"

authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl"

authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc"

authd.fullpath = "/sbin/authd"

authd.soapServer = "TRUE"

vmauthd.server.alwaysProxy = "TRUE"

vhv.allow = "TRUE"

but HV is still showing not VT capable?

~ # esxcfg-info | grep "HV"

         |----HV Support............................................0

         |----HV Replay Capable.....................................false

         \==+HV Replay Disabled Reasons :

            |----World Command Line.................................grep HV

I booted into the nested ESXi bios which is a PhoenixBios but there is no option for VT setting

In the vCenter GUI I checked "on" the following box,

CPU/MMU Virtualization

Use Intel VT-x/AMD-v for instruction set virtualization and INtel EPT/AMD RVI for MMU  virtualization

CPUID Mask

Expose the NX/XD flag to guest

I also upgraded virtual hardware and the vm says vmx-09

Saved and Rebooted everything

How do I get the 64 bit guest on the nested ESXi to work?

The physical server is a Dell PE310 with Intel Xeon CPUs and I did enable VT in the bios which seemed to work correctly because I installed ESXi on it, plus nested ESXi.

References for posts I've read for proposed solutions,

http://www.vcritical.com/2011/07/vmware-vsphere-can-virtualize-itself/

http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&e...

http://www.vmware.com/files/pdf/software_hardware_tech_x86_virt.pdf

http://pubs.vmware.com/vsphere-4-esx-vcenter/index.jsp?topic=/com.vmware.vsphere.vmadmin.doc_41/vsp_...

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=100817...

http://www.virtuallyghetto.com/2011/07/how-to-enable-support-for-nested-64bit.html

http://www.vi-tips.com/2012/09/enabling-64-bit-vms-on-nested-esxi-51.html

26 Replies
GBCFS
Contributor
Contributor
Jump to solution

No, this is the virtual ESXi host. I haven't made any changes on the physical host.

In case I've misunderstood or misexplained our setup, this is it:

PhysicalHost1 is hosting an Autolab vAPP (vSphere 5 AutoLab) and within which are several guest VMs, 2 of which are virtual/nested ESXi hosts, the remainder are Windows VMs (incl vCenter).

The log and VMX file provided so far are all from one of the nested ESXi hosts.

As it happens, I'll be attending a VMUG today, and will raise this there too

0 Kudos
admin
Immortal
Immortal
Jump to solution

The vmware.log file you just attached looks like it is taken *from* a physical machine, named VRESX05.management.fishserve.co.nz.  This machine has vhv.allow = TRUE in its /etc/vmware/config file, which would normally be enough to permit the use of virtualized VT-x within guests running on this machine.  However, it also has cpuidMask.val.1.ecx = 0x0000a219 in its /etc/vmware/config file, which disables VT-x within any guest running on this machine.

The vmware.log file is *for* "Lab_Host2," which cannot use virtualized VT-x because of the CPUID mask settings in the /etc/vmware/config file on VRESX05.management.fishserve.co.nz.

0 Kudos
GBCFS
Contributor
Contributor
Jump to solution

Understood, the cpuidMask changes required on the config file for the physical host.

Is there any impact on guest VMs running on the physical host after changing the cpuidMask?

0 Kudos
admin
Immortal
Immortal
Jump to solution

Guests that are started after the CPUID mask change may not be able to migrate to another host in the EVC cluster without the CPUID mask change.

It is possible that you may be able to specify the modified CPUID mask in the Lab_Host2.vmx file.  In that case, no other VMs would be affected.

GBCFS
Contributor
Contributor
Jump to solution

Many thanks for your help, good to understand the process and where changes are required.

At this stage, this is a "nice-to-have" functionality, so not keen to make changes to production hosts just yet

0 Kudos
chtuhin
Contributor
Contributor
Jump to solution

Hi,

It is supported. I am running Windows 8.1 SL on my base machine with VMware Workstation 9 and later switched to 10 and then 11 versions respectively. I am running ESXi 5.0, 5.1 and 6.0 in the VMs. Inside these ESXi Hosts, I am running Windows 7 64-bit Ultimate Edition. Now, these are possible only when you put a check mark on "Virtualize Intel VT-x/EPT or AMD-V/RVI" option. This option will work for you only when you have Intel processor with VT-d feature in it apart from VT-x. I am not sure about AMD processors. I am using Intel i7 4th gen processor 4710HQ. And it has worked for me without any problem. I have another machine with Intel Core 2-duo which lacks VT-d feature and hence I am unable to do the same task.

0 Kudos
admin
Immortal
Immortal
Jump to solution

VT-d is not required for virtualized VT-x/EPT.  However, EPT is required.  This feature will not work on a Core 2 Duo, because the Core 2 Duo lacks EPT.

0 Kudos