Unable to relocate VM - The operation is not supported on the object| DEBUG | task-service-activity-pool-20974 | CJob | updateFailedJob(com.vmware.ssdc.util.RelocateException) with locale=en_US | requestId=#####-#####-####-####-####,request=POST https://VCD_URL/api/vApp/vm-UUID/action/reconfigureVm,requestTime=1745416173535,remoteAddress=#.#.#.#:47868,userAgent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ...,accept=application/*+xml;version 40.0.0-alpha vcd=#####-#####-####-####-####,task=#####-#####-####-####-#### activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:#####-#####-####-####-####)com.vmware.ssdc.util.RelocateException: Unable to relocate VM. at com.vmware.vcloud.val.internal.impl.RelocateVmActivity$WaitForInventoryUpdatePhase.invoke(RelocateVmActivity.java:397) 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.ssdc.util.exceptions.NotSupportedException: The operation is not supported on the object. at com.vmware.ssdc.library.vim.LmVim.Convert(LmVim.java:292) at com.vmware.ssdc.library.vim.LmVim.Convert(LmVim.java:502) at com.vmware.vcloud.val.taskmanagement.AsynchronousTaskWaitActivity.getResultIfTaskAlreadyCompleted(AsynchronousTaskWaitActivity.java:526) at com.vmware.vcloud.val.taskmanagement.AsynchronousTaskWaitActivity$InitialPhase.invoke(AsynchronousTaskWaitActivity.java:138) ... 7 moreCaused by: (vmodl.fault.NotSupported) { faultCause = null, faultMessage = (vmodl.LocalizableMessage) [ (vmodl.LocalizableMessage) { dynamicType = null, dynamicProperty = null, key = com.vmware.vim.vpxd.iofilter.policyChangeDisallowed, arg = (vmodl.KeyAnyValue) [ (vmodl.KeyAnyValue) { dynamicType = null, dynamicProperty = null, key = operation, value = migrate } ], message = Changing or applying VM Storage Policies with Data Service capabilities during migrate operations is disallowed. VM Storage Policies with Data Service capabilities can be assigned to the provisioned VM after the migrate operation has been completed and before the VM has been powered on. }2025-04-23T13:49:41.587Z info vpxd[09355] [Originator@6876 sub=vpxLro opID=vcd-#####-#####-####-####-####;activity=urn:uuid:#####-#####-####-####-####] [VpxLRO] -- FINISH task-73789212025-04-23T13:49:41.587Z error vpxd[09355] [Originator@6876 sub=Default opID=vcd-#####-#####-####-####-####;activity=urn:uuid:#####-#####-####-####-####] [VpxLRO] -- ERROR task-7378921 -- 5#####-#####-####-####-####(#####-#####-####-####-####) -- vm-632608 -- vim.VirtualMachine.relocate: :vmodl.fault.NotSupported--> Result:--> (vmodl.fault.NotSupported) {--> faultCause = (vmodl.MethodFault) null,--> faultMessage = (vmodl.LocalizableMessage) [--> (vmodl.LocalizableMessage) {--> key = "com.vmware.vim.vpxd.iofilter.policyChangeDisallowed",--> arg = (vmodl.KeyAnyValue) [--> (vmodl.KeyAnyValue) {--> key = "operation",--> value = "migrate"--> }--> ],--> message = <unset>--> }VMware Cloud Director 10.6.x
The issue by the IOPS capacity enabled on source ISCSI/VMFS Storage Policy used to migrate a VM from this policy to vSAN policy, and failing in vCenter because Cloud Director code passes default Profile Specification instead of target Profile Specification.
This issue will be fixed in later release of Cloud Director.
To migrate a vm from source ISCSI/VMFS to vSAN policy Detailed steps:
1. Clone original source Storage Policy and disable IOPS capability on this storage policy.
2. Migrate the VM from source ISCSI/VMFS to this intermediate clonedSource Storage Policy. This will cause just a Reconfigure Call in vCenter so that IOPS is disabled on the VM and datastore will be left intact.
3. Change the policy from clonedSource[intermediate] Storage Policy to destination vSAN Storage Policy.