Error: "No host is compatible with the virtual machine" when attempting to power on VM after exposing hardware assisted virtualization to the guest OS
search cancel

Error: "No host is compatible with the virtual machine" when attempting to power on VM after exposing hardware assisted virtualization to the guest OS

book

Article ID: 368555

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

  • VM power on operation fails with:

    No host is compatible with the virtual machine

    The target host does not support the virtual machine’s current hardware requirements.Use a cluster with Enhanced vMotion Compatibility (EVC) enabled to create a uniform set of CPU features across the cluster, or use per-VM EVC for a consistent set of CPU features for a virtual machine and allow the virtual machine to be moved to a host capable of supporting that set of CPU features. See KB article 1003212 for cluster EVC information.

    Virtualized hardware Virtualization support is unavailable. This may be because Intel VT-x/ AMD-V is disabled in BIOS.

  • vCenter - /var/log/vmware/vpxd/vpxd.log

    Power on failed: (vim.fault.GenericVmConfigFault) {
       faultCause = (vmodl.MethodFault) null,
       faultMessage = (vmodl.LocalizableMessage) [
          (vmodl.LocalizableMessage) {
             key = "msg.featurecompat.requirement.number.minimumNotMet",
             arg = (vmodl.KeyAnyValue) [
                (vmodl.KeyAnyValue) {
                   key = "1",
                   value = "bad_requirement:hv.capable"
                },
                (vmodl.KeyAnyValue) {
                   key = "2",
                   value = "0"
                },
                (vmodl.KeyAnyValue) {
                   key = "3",
                   value = "1"
                }
             ],
             message = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1."
          },
          (vmodl.LocalizableMessage) {
             key = "msg.moduletable.powerOnFailed",
             arg = (vmodl.KeyAnyValue) [
                (vmodl.KeyAnyValue) {
                   key = "1",
                   value = "FeatureCompatLate"
                }
             ],
             message = "Module 'FeatureCompatLate' power on failed. "
          },
          (vmodl.LocalizableMessage) {
             key = "msg.vmx.poweron.failed",
             arg = <unset>,
             message = "Failed to start the virtual machine."
          }
       ],
       reason = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1."
       msg = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1.

Cause

EVC enabled on the cluster or VM does not contain the Intel VT-x feature set. For more information, refer to Ensuring Virtualization Technology is enabled on your VMware host.

Resolution

  1. Ensure that Intel VT-x is supported by the hardware.

  2. Ensure that Intel VT-x is enabled in BIOS. For more information, refer to Determining if Intel Virtualization Technology or AMD Virtualization is enabled in the BIOS without rebooting the ESXi host.
    • To check via command line:
      1. SSH to the ESXi host
      2. Run the following command:

        esxcfg-info|grep "\----\HV Support"

  3. Ensure the feature set Intel VT-x is available on the VM.
    • To check this directly on the VM or from cluster:
      1. In the vCenter UI, navigate to the VM
      2. Select on Configure tab
      3. Click on VMware EVC
      4. Expand CPU Feature Set

  4. If the feature set Intel VT-x is unavailable in the selected EVC mode, choose a relevant EVC mode that contains the Intel VT-x feature set.

Additional Information