Error "PlacementException NO_FEASIBLE_PLACEMENT_SOLUTION" when migrating a VM to a Cloud Director site
search cancel

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:136)

            at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)

            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)

            at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

            at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

            at java.base/java.lang.Thread.run(Thread.java:829)

    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:136)
            at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
            at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
            at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
            at java.base/java.lang.Thread.run(Thread.java:829)
    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:78)
            at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.computePlacementSolution(PlacementServiceFacadeImpl.java:882)
            at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.computePlacementSolutionForDefaultPlacement(PlacementServiceFacadeImpl.java:986)
            at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.getPlacementState(PlacementServiceFacadeImpl.java:766)
            at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.copyVAppContents(CopyContentsActivity.java:859)
            at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.invoke(CopyContentsActivity.java:339)

            at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:175)
            at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:112)
            ... 5 more
    Caused by: com.vmware.pbm.placement.PlacementException: PlacementException NO_FEASIBLE_PLACEMENT_SOLUTION

    AND

    yy-mm-dd TIME | INFO     | Backend-activity-pool-3223 | 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-r4280-LN-xxxx-xxxx-xxxx-xxx-xxxx,request=POST https://example.vcloud.com/api/admin/extension/vimServer/xxxx-xxxx-xxxx-xxx-xxxx/importVmAsVApp,requestTime=1718201449646,remoteAddress=XX.XX.XX.XX:50288,userAgent=Apache-HttpClient/4.5.14 (Java/17.0.9),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:

To workaround the issue you can use Replication Tracking VMs "RT VMs", introduced in VMware Cloud Director Availability 4.7.1 and  VMware Cloud Director 10.5.1.



Additional Information

For additional information please visit the documentation Replication tracking placement solution