During a SAN migration we moved all the VM's from a datastore on the older SAN to a datastore on the newer SAN. Not a big deal, except when it came to moving Virtual Center which is also VM.
My first attempt was to use VMware Converter and do a P2V. Simply launch VM Converter, point it at the ESXi host that is currently housing the VM, and choose another host as the destination. Unfortunately, one cannot do that. Turns out that one cannot use an ESXi host as a destination if that host belongs to a VMware cluster, aka if Virtual Center manages it. DOH! See VMware KB article.
What I ended up doing, was shutting down the VC VM. Connecting directly to the ESXi host, browsing to the old data store, right clicked the folder that contains the VM, select "Move", chose the destination datastore, click next, wait. Once done, remove the old VM from inventory, go back to the datastore, and the folder where that VM lives, find the XXXX.vmx file, right click, "add to inventory" start the VM up. Vmware will complain, choose "I moved it", and life is good!
Another option: I haven't tried this yet, but supposidly one can do an SVmotion using the CLI.
Storage vMotion Command-Line Syntax