"ValidationException OUT_OF_CPU_RESOURCES" error when disabling the option "Allow CPU resources to grow beyond reserved value" in an Organization VDC
search cancel

"ValidationException OUT_OF_CPU_RESOURCES" error when disabling the option "Allow CPU resources to grow beyond reserved value" in an Organization VDC

book

Article ID: 322130

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

Symptoms:
  • Disabling the option Allow CPU resources to grow beyond reserved value in an Organization VDC fails with the error:
There are insufficient CPU or memory resources to complete the operation.
- ValidationException OUT_OF_CPU_RESOURCES
 
  • The /opt/vmware/vcloud-director/logs/vcloud-container-debug.log contains entries similar to:
YYYY-MM-DD <time> | ERROR    | task-service-activity-pool-19 | VdcService                     | Error updating VDC | requestId=<TASK_UUID>,request=POST https://vcloud.example.com/cloud/amfsecure,requestTime=1632909789902,remoteAddress=<IP>:<port>,userAgent=Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/2010...,accept=*/* method=vdcService.updateVdc vcd=<VDC_ID>,task=<TASK_UUID> activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:<VDC_UUID>)
com.vmware.vcloud.valc.exception.InvalidConfigException: There are insufficient CPU or memory resources to complete the operation.
        at com.vmware.vcloud.valc.activities.UpdateComputeActivity$FinalPhase.invoke(UpdateComputeActivity.java:316)
        at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:175)
        at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:112)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: com.vmware.vcloud.fabric.compute.ValidationException: ValidationException OUT_OF_CPU_RESOURCES
        at com.vmware.vcloud.fabric.compute.vrp.ReservationPoolVirtualResourcePool.validateUpdateCapacityLimits(ReservationPoolVirtualResourcePool.java:139)
        at com.vmware.vcloud.fabric.compute.vrp.ReservationPoolVirtualResourcePool.updateCapacityInternal(ReservationPoolVirtualResourcePool.java:96)
        at com.vmware.vcloud.fabric.compute.vrp.GenericVirtualResourcePool$1.execute(GenericVirtualResourcePool.java:615)
        at com.vmware.vcloud.fabric.compute.vrp.GenericVirtualResourcePool$1.execute(GenericVirtualResourcePool.java:612)
        at com.vmware.vcloud.fabric.compute.impl.RunnableContextTaskBase$1.run(RunnableContextTaskBase.java:17)
        at com.vmware.vcloud.common.threadpool.ThreadContextExecutor.executeImpl(ThreadContextExecutor.java:59)
        at com.vmware.vcloud.common.threadpool.ThreadContextExecutor.execute(ThreadContextExecutor.java:52)
        at com.vmware.vcloud.fabric.compute.impl.RunnableContextTaskBase.call(RunnableContextTaskBase.java:21)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at com.vmware.vcloud.common.threading.NDCContextAwareThreadPoolExecutor$NDCRunnableFutureAdapter.run(NDCContextAwareThreadPoolExecutor.java:77)
        ... 3 more


Environment

VMware Cloud Director 10.x
VMware Cloud Director for Service Provider 9.x

Cause

This issue occurs when there are insufficient Provider VDC resources to satisfy the configured CPU allocation in the Organization VDC.

Resolution

To resolve this issue you can do one of the following:
  • Increase the parent Provider VDC's resources.
  • Reduce another Organization VDC's reserved CPU allocation capacity.
  • Reduce the problematic Organization VDC's CPU allocation capacity from it's current CPU reservation value to something less than the unreserved CPU resources (total - reservation used).