Error: "Internal Server Error" occurs during import of a VM which was restored from backup
search cancel

Error: "Internal Server Error" occurs during import of a VM which was restored from backup

book

Article ID: 419246

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

  • Importing a restored virtual machine into VMware Cloud Director(VCD) results in the following error:

    Internal Server Error

  • The error has the following additional debug information:

    com.vmware.vcloud.api.presentation.service.InternalServerErrorException: Internal Server Error
     at com.vmware.vcloud.common.future.FutureUtil.convertExecutionException(FutureUtil.java:264)
     at com.vmware.vcloud.common.future.FutureUtil.convertExecutionException(FutureUtil.java:211)
     at com.vmware.vcloud.common.future.FutureUtil.checkCompletedFuture(FutureUtil.java:203)
     at com.vmware.vcloud.backendbase.management.system.TaskActivity$PostExecutePhase.invokeInner(TaskActivity.java:883)
     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: java.lang.NullPointerException
     at com.vmware.ssdc.backend.services.impl.VmManagerImpl.getClusterComputeResourceValRef(VmManagerImpl.java:4312)
     at com.vmware.ssdc.backend.services.impl.VmManagerImpl.getVmVdcComputePolicyVmGroupNames(VmManagerImpl.java:4261)
     at com.vmware.ssdc.backend.services.impl.VmManagerImpl.getVmGroupsNotPartOfVdcComputePolicy(VmManagerImpl.java:4298)
     at jdk.internal.reflect.GeneratedMethodAccessor15296.invoke(Unknown Source)
     at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     at java.base/java.lang.reflect.Method.invoke(Method.java:566)
     at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
     at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:234)
     at com.sun.proxy.$Proxy331.getVmGroupsNotPartOfVdcComputePolicy(Unknown Source)
     at com.vmware.vcloud.vdc.VAppParamConversionUtils.getVmGroupAffinityRequirements(VAppParamConversionUtils.java:2263)
     at com.vmware.vcloud.vdc.VAppParamConversionUtils.getPlacementSubjectsForImport(VAppParamConversionUtils.java:937)
     at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeImpl.init(PlacementServiceFacadeImpl.java:445)
     at com.vmware.vcloud.placementfacade.impl.PlacementServiceFacadeFactoryImpl.createPlacementServiceFacade(PlacementServiceFacadeFactoryImpl.java:109)
     at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.copyVAppContents(CopyContentsActivity.java:687)
     at com.vmware.vcloud.vdc.impl.CopyContentsActivity$CopyContentsPhase.invoke(CopyContentsActivity.java:398)
     ... 7 more

  • The virtual machine already appears in the VMware Cloud Director user interface, but is in an inconsistent state.
  • Using the importVm API to import a VM from vCenter fails.

Environment

VMware Cloud Director 10.6.x

Cause

The issue will occur when there is a cloud.uuid conflict during the VM import process. The Virtual Machine was previously managed by VMware Cloud Director and has not been fully removed prior to the import of the new VM.

Resolution

To resolve this issue remove the original VM from VCD management and then attempt to re-import the VM again.

  1. To remove a VM from VCD management follow the process outlined in How to remove a virtual machine from Management in Cloud Director
  2. Attempt to reimport the VM to VCD again. Depending on the requirements choose one of the following options:
    1. Import a VM from vCenter Server to an Existing vApp in the VMware Cloud Director Tenant Portal
      or
    2. Import a Virtual Machine from vCenter as a vApp in the VMware Cloud Director Tenant Portal