Unable to Provision New VMs in vCloud Director. 5.1.x

 

Scenario: I had just created a new Provider Virtual Data Centre (PVDC) from a new ESXi cluster. When I tried to add a VAPP from the catalog I was presented with an error.

Error Message:

 

 

The problem was actually due to the VM Storage profile not being “enabled” on the new cluster.

 

In vCenter go to HOME -> MANAGEMENT -> VM STORAGE PROFILES -> Click the relevant Storage Profile -> ENABLE VM STORAGE PROFILES -> ensure “Enable is selected on the required cluster.

 

com.vmware.ssdc.util.LMException: Error
at com.vmware.ssdc.util.LMException.wrap(LMException.java:129)
at com.vmware.vcloud.spbm.impl.SpbmServiceImpl.submitSpsRequest(SpbmServiceImpl.java:888)
at com.vmware.vcloud.spbm.impl.SpbmServiceImpl.associateVmAndDisksWithStorageProfile(SpbmServiceImpl.java:679)
at com.vmware.vcloud.val.internal.impl.VC20VirtualServer.associateVmAndDisksWithStorageProfile(VC20VirtualServer.java:3631)
at com.vmware.vcloud.val.internal.impl.VC20VirtualServer.clone(VC20VirtualServer.java:2581)
at com.vmware.vcloud.fabric.storage.copy.impl.VmCopyServiceImpl.intraVcCopyVm(VmCopyServiceImpl.java:717)
at com.vmware.vcloud.fabric.storage.copy.impl.VmCopyServiceImpl.copyVm(VmCopyServiceImpl.java:340)
at com.vmware.vcloud.fabric.storage.copy.impl.VmCopyServiceImpl.copyVms(VmCopyServiceImpl.java:283)
at com.vmware.vcloud.fabric.storage.copy.impl.VmCopyServiceImpl.copyVm(VmCopyServiceImpl.java:251)
at com.vmware.vcloud.fabric.storage.storedVm.impl.AbstractCreateStoredVmActivity.copyVmInVc(AbstractCreateStoredVmActivity.java:160)
at com.vmware.vcloud.fabric.storage.storedVm.impl.CreateFromExistingStoredVmActivity$CreateStoredVmInVcPhase.copyVmWithFullClone(CreateFromExistingStoredVmActivity.java:343)
at com.vmware.vcloud.fabric.storage.storedVm.impl.CreateFromExistingStoredVmActivity$CreateStoredVmInVcPhase.invoke(CreateFromExistingStoredVmActivity.java:262)
at com.vmware.vcloud.fabric.foundation.activity.executors.ActivityRunner.run(ActivityRunner.java:123)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)