I found a colleague that recently experienced the following message in VMware vSphere (ESXi) when trying to start a 64-bit VM (Windows 2008 R2) running on their HP Proliant ML110 G5: “This virtual machine is configured for 64-bit guest operating systems”, “However, 64-bit operation is not possible.”, “Longmode is disabled for this virtual machine.”. This is an error that can often crop up especially when dealing with nested VMs or when deploying new ESXi hosts. The typical reason for this message is typically:
- The additional virtualization related extensions on the CPU haven’t been enabled in the BIOS. These extensions in the BIOS aren’t always turned on by default, although they are in most modern servers. If the CPU(s) in your server does have the virtualization extensions though you suspect they are simply just not enabled, reboot the server, enter the BIOS, enable the extensions (the location in the BIOS will generally differ between server brands), save the BIOS settings and then reboot the server. For Intel based processors there are the Intel VT-x virtualization extensions and for AMD processors, AMD-V. For more in depth information on these virtualization related CPU extensions.
- The CPU(s) in your server don’t have the virtualization extensions available on the CPU, although almost all modern CPUs these days come with them.
- If you are trying to run nested VMs (ie: running a VM inside another VM) then you will likely need to configure a couple of extra parameters. An example of a nested VM is running a W2K8 R2 VM on a virtualized ESXi 5 host or perhaps on VMware Workstation or Fusion). Luckily setting these parameters is quite straight forward and there is a very useful VMware article here that takes you through how and what to set.