Slight correction: That image on Imgur is of the VirtualMachineRelocateSpec that’s passed to the VirtualMachineMO.changeDatastore method to attempt to migrate the VM and its root disk.
From: "Tutkowski, Mike" <mike.tutkow...@netapp.com> Date: Wednesday, March 22, 2017 at 11:10 PM To: "dev@cloudstack.apache.org" <dev@cloudstack.apache.org> Subject: Cannot migrate VMware VM with root disk to host in different cluster (CloudStack 4.10) Hi, Within CloudStack 4.10, I have two VMware 5.5 clusters (both in the same VMware datacenter). Each cluster has a shared iSCSI-based datastore. I can initiate the process of migrating a VM and its root disk from a host in one cluster to a host in another cluster. However, it fails with the following error message: Required property datastore is missing from data object of type VirtualMachineRelocateSpecDiskLocator while parsing serialized DataObject of type vim.vm.RelocateSpec.DiskLocator at line 1, column 327 while parsing property "disk" of static type ArrayOfVirtualMachineRelocateSpecDiskLocator while parsing serialized DataObject of type vim.vm.RelocateSpec at line 1, column 187 while parsing call information for method RelocateVM_Task at line 1, column 110 while parsing SOAP body at line 1, column 102 while parsing SOAP envelope at line 1, column 38 while parsing HTTP request for method relocate on object of type vim.VirtualMachine at line 1, column 0 When I re-ran the test in the debugger and looked at the VirtualMachineRelocateSpecDiskLocator instance mentioned in the error message, I saw the following: http://imgur.com/a/vtKcq It looks like the code is not specifying the source datastore. Can anyone else reproduce this? Thanks! Mike