Powering on VM with vGPU deployed via VCF Automation failed: "VM cannot be admitted to the desired resource pool because this VM has at least one device for which the corresponding DirectPath profile doest not have expandable reservation."
search cancel

Powering on VM with vGPU deployed via VCF Automation failed: "VM cannot be admitted to the desired resource pool because this VM has at least one device for which the corresponding DirectPath profile doest not have expandable reservation."

book

Article ID: 412517

calendar_today

Updated On:

Products

VCF Automation

Issue/Introduction

  • Powering on VM with vGPU deployed via VCF Automation failed with following error:

    Insufficient resources. VM cannot be admitted to the desired resource pool because this VM has at least one device for which the corresponding DirectPath profile doest not have expandable reservation.




  • The vpxd.log contains entries similar to the following:

    YYYY-mm-ddTHH:MM:SS.xxxZ error vpxd[1437406] [Originator@6876 sub=Default opID=vmoperator-<opID>] [VpxLRO] -- ERROR task-5061 -- 528a7905-dc10-22bc-27e8-db4018032c7c(5294fb9d-d946-1cb8-209d-3a0c17628fd9) -- vm-4009 -- vim.VirtualMachine.powerOn: :vim.fault.InsufficientResourcesFault
    --> Result:
    --> (vim.fault.InsufficientResourcesFault) {
    -->    faultCause = (vmodl.MethodFault) null,
    -->    faultMessage = (vmodl.LocalizableMessage) [
    -->       (vmodl.LocalizableMessage) {
    -->          key = "com.vmware.vim.resourcePool.error.DppNotExpandable",
    -->          arg = <unset>,
    -->          message = <unset>
    -->       }
    -->    ]
    -->    msg = ""
    --> }
    --> Args:
    -->
    --> Arg host:
    -->


  • A VM using the same GPU created from the vSphere Client can be powered on.

Environment

VCF Automation 9.0

Cause

This issue occurs when the VM class used to create a VM is not reserved.

Steps to Check VM Class Reservation :

  1. Connect to vCenter Server via SSH as the root user.
    If you see the prompt "Command>", type shell to access the bash shell.


  2. Retrieve the supervisor ID by running:

    dcli com vmware vcenter namespacemanagement supervisors summary list


  3. Use the retrieved supervisor ID to check the VM class reservation with this command:

    dcli com vmware vcenter namespacemanagement supervisors zones bindings list --supervisor <supervisor id>
    zones:
    - zone: <zone id>
        marked_for_removal: False
        resource_allocation:
        vm_reservations:  # <--- Check if reservations exist under here

     

Resolution

VM Class reservation is required to power on a VM with vGPU.

Please refer to the following document for instructions on reserving a VM class:

Configure vGPU-Based VM Classes for AI Workloads for VMware Private AI Foundation with NVIDIA