Error "PlacementException NO_FEASIBLE_PLACEMENT_SOLUTION" when migrating a VM to a Cloud Director site
book
Article ID: 371534
calendar_today
Updated On:
Products
VMware Cloud Director
Issue/Introduction
VM migration from Cloud to Cloud is failing with the below error in VMware Cloud Director (VCD):
[xxxx-xxxx-xxxx-xxxx]Uncaught Exception during Activity execution.The operation failed because no suitable resource was found. Out of 1 candidate hubs:
1 hubs eliminated because: No access to network "NETWORK_NAME". Rejected hubs: resgroup-moref
at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:xxx)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:xxx)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:xxx)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:xxxx)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:xxx)
at java.base/java.lang.Thread.run(Thread.java:xxx)
Caused by: com.vmware.pbm.placement.PlacementException: PlacementException NO_FEASIBLE_PLACEMENT_SOLUTION
From VCD logs at /opt/vmware/vcloud-director/logs/vcloud-container-debug.log you see entry similar to the below:
The operation failed because no suitable resource was found. Out of 1 candidate hubs:
1 hubs eliminated because: No access to network "NETWORK-NAME". Rejected hubs: resgroup-moref
at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:xxx)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:xxx)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:xxx)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:xxxx)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:xxx)
at java.base/java.lang.Thread.run(Thread.java:xxx)
Caused by: com.vmware.vcloud.api.presentation.service.InternalServerErrorException: The operation failed because no suitable resource was found. Out of 1 candidate hubs:
1 hubs eliminated because: No access to network "NETWORK-NAME". Rejected hubs: resgroup-moref
at com.vmware.vcloud.placement.PlacementExceptionHandler.convertPlacementException(PlacementExceptionHandler.java:xx)
at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.computePlacementSolution(PlacementServiceFacadeImpl.java:xxx)
at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.computePlacementSolutionForDefaultPlacement(PlacementServiceFacadeImpl.java:xxx)
at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.getPlacementState(PlacementServiceFacadeImpl.java:xxx)
at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.copyVAppContents(CopyContentsActivity.java:xxx)
at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.invoke(CopyContentsActivity.java:xxx)
at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:xxx)
at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:xxx)
... 5 more
Caused by: com.vmware.pbm.placement.PlacementException: PlacementException NO_FEASIBLE_PLACEMENT_SOLUTION
AND
yy-mm-dd TIME | INFO | Backend-activity-pool-xxxx | NetworkHubFinder | Switches [[vcId=xxxx-xxxx-xxxx-xxx-xxxx, moref=dvs-MOREF], [vcId=xxxx-xxxx-xxxx-xxx-xxxx, moref=dvs-MOREF]] are not available on hub moref://xxxx-xxxx-xxxx-xxx-xxxx/ResourcePool#resgroup-MOREF, available switches [[vcId=xxxx-xxxx-xxxx-xxx-xxxx, moref=dvs-MOREF]] | requestId=UI-xxxx-xxxx-xxxx-xxx-xxxx-xxxxx-xx-xxxx-xxxx-xxxx-xxx-xxxx,request=POST https://example.vcloud.com/api/admin/extension/vimServer/xxxx-xxxx-xxxx-xxx-xxxx/importVmAsVApp,requestTime=xxxxxxxxxxxxx,remoteAddress=xx.xx.xx.xx:50288,userAgent=Apache-HttpClient/4.5.14 (Java/xx.x.x),accept=application/*+xml;version 36.1 vcd=xxxx-xxxx-xxxx-xxx-xxxx,task=xxxx-xxxx-xxxx-xxx-xxxx activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:xxxx-xxxx-xxxx-xxx-xxxx) activity=(com.vmware.vcloud.vdc.impl.ImportSingletonVAppActivity,urn:uuid:xxxx-xxxx-xxxx-xxx-xxxx) activity=(com.vmware.vcloud.vdc.impl.CopyContentsActivity,urn:uuid:xxxx-xxxx-xxxx-xxx-xxxx)
The destination ESXi cluster does not have access to the DVS mentioned in the logs as per configuration.
Environment
VMware Cloud Director 10.4.x VMware Cloud Director Availability 4.x
Cause
During the VM import step of the migration VCD is trying to check if the destination ESXi cluster has access to DVS. The cluster do not have access to the mentioned DVS in the logs as per configuration.
Resolution
Workaround:
Use Replication Tracking VMs "RT VMs", introduced in VMware Cloud Director Availability 4.7.1 and VMware Cloud Director 10.5.1.