VM migration in VMware Cloud Director fails with "Internal Server Error - Expected completed future, but received future which is still in progress"
search cancel

VM migration in VMware Cloud Director fails with "Internal Server Error - Expected completed future, but received future which is still in progress"

book

Article ID: 450636

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

When migrating virtual machines in VMware Cloud Director the task fails. In the UI of VMware Cloud Director the error is:

Internal Server Error - Expected completed future, but received future which is still in progress

In the vcloud-container-debug.log the full error is:
com.vmware.ssdc.util.LMException: Internal Server Error
at com.vmware.ssdc.util.LMException.wrap(LMException.java:135)
at com.vmware.ssdc.library.ExceptionFactory.createFromMultiple(ExceptionFactory.java:32)
at com.vmware.vcloud.common.future.FutureUtil.waitForFutures(FutureUtil.java:96)
at com.vmware.vcloud.common.future.FutureUtil.waitForFutures(FutureUtil.java:105)
at com.vmware.vcloud.vapp.impl.VAppServiceImpl.migrateVmsTask(VAppServiceImpl.java:3964)
at com.vmware.vcloud.vapp.impl.VAppServiceImpl.executeTask(VAppServiceImpl.java:808)
at com.vmware.vcloud.backendbase.management.system.TaskActivity$ExecutePhase$1.doInSecurityContext(TaskActivity.java:865)
at com.vmware.vcloud.backendbase.management.system.TaskActivity$ExecutePhase$1.doInSecurityContext(TaskActivity.java:860)
at com.vmware.vcloud.backendbase.management.system.SecurityContextTemplate.executeForOrgAndUser(SecurityContextTemplate.java:49)
at com.vmware.vcloud.backendbase.management.system.TaskActivity$ExecutePhase.execute(TaskActivity.java:867)
at com.vmware.vcloud.backendbase.management.system.TaskActivity$ExecutePhase.invokeInner(TaskActivity.java:763)
at com.vmware.vcloud.backendbase.management.system.TaskActivity$TaskActivityBasePhase.invokeCancelableOperation(TaskActivity.java:378)
at com.vmware.vcloud.common.activity.toolkit.VcdAbstractActivity$CancelablePhase.invoke(VcdAbstractActivity.java:591)
at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:175)
at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:112)
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: Internal Server Error
at com.vmware.ssdc.backend.util.ComputeFabricUtil.translateException(ComputeFabricUtil.java:221)
at com.vmware.ssdc.backend.util.ComputeFabricUtil.waitForFuture(ComputeFabricUtil.java:135)
at com.vmware.vcloud.activities.vm.MigrateVmActivity$MigratePhase.invoke(MigrateVmActivity.java:117)
... 7 more
Caused by: java.lang.AssertionError: Expected completed future, but received future which is still in progress
at com.vmware.vcloud.common.future.FutureUtil.checkCompletedFuture(FutureUtil.java:184)
at com.vmware.ssdc.backend.services.impl.RelocateVmActivity$UpdateComputeVmModelIfNeeded.invoke(RelocateVmActivity.java:1007)
... 7 more

When checking the task in vCenter the relocate call failed with:
Invalid configuration for device '#'

Environment

VMware Cloud Director 10.6.x

Cause

Similar to vMotion or Storage vMotion Fails at 80% with Error "Invalid configuration for device 'X'" the portgroup used by the NSX logical segment does not exist on the destination hosts.

Resolution

Within VMware Cloud Director navigate to our individual VMs within their tenant portal.

  1. Ensure the VMs are powered down for the migration.
  2. Set the network connection to "None" for the VMs.
  3. Verify that the NIC in vCenter for the VMs is not connected to any network.
  4. Re-initiate the migration through VMware Cloud Director.
  5. Once completed change the networking back within VMware Cloud Director.