Cross vCenter vMotion Utility Fling

I do not think that enough people are aware of this Fling, and that is really unfortunate.

First I want to take a step back and provide some history as to how this came about.  As most of you know, there is no easy way to live migrate a VM between different vCenter Servers that are not in Enhanced linked mode, which connects multiple vCenter Server systems together by using one or more Platform Services Controllers.

Some methods I have used in the past:

  • Host migration to target vCenter Server:
    • Remove the managed ESXi host from the source vCenter and add it to the target vCenter and then perform a regular vMotion.  This method, however, comes with a lot of caveats for instance in order to remove the ESXi hosts all the ports groups needs to be on Standard Switches so this requires a migration from VDS to VSS. Additional information available here
  • Enhanced linked mode
    • Setup enhanced linked mode between vCenter servers and perform a vMotion or Storage vMotion between the vCenter Servers, but this solution is not ideal when the source vCenter Server will get decommissioned. There is a way using supported workflows to remove ELM but is not supported by VMware so there is that! Good article by William about splitting vCenter Servers in ELM here.
  • Hybrid Cloud Extention (HCX)
    • HCX is another option that I am very excited about trying in near future which provides vMotion, Bulk Migration, WAN optimization and automated VPN with Strong Encryption.  I have tested the tool for migration between on-prem and VMC on AWS and all I can say it is a game changer. Some more on that later in the year…

So getting back to why we are here!  With not having the ability to vMotion between 2 non-ELM vCenter Servers, William Lam took it upon himself to write a script using the vSphere API with PowerCLI that finally provides the sorely missed capability to vMotion a VM between 2 vCenter Servers that are in different domains! So naturally, the evolution of making the script easier to consume is to provide a nice looking GUI with a  fling!

Here you can find the Fling written by Vishal Gupta and William Lam. Props to both for all the time and effort to provide such a value-added feature.

Update 05.07.18:  

Version 2.0 has been released which brings some great new enhancements, especially the top 3 listed below.

  • Added support to select individual host as the placement target
  • Added support for migrating VMs with shared datastore
  • Added clone functionality in addition to relocate
  • Added resource summary details for placement targets
  • Added a prompt to verify site thumbprint during SSL verification
  • Added a link to refresh VM list in the inventory view
  • Updated REST APIs to add operation type parameter

To run the fling you need => vCenter Server 6.0 and => Java Runtime 1.8.

To start the fling open a command prompt and type the following:

  • # java -jar xvm-2.0.jar
    • this will start the fling on port 8080 on the localhost.
    • If you want to change the port because it is in use, add the following flag:
      • -Dserver.port=8800
  • Connect to your localhost with port specified
  • Screen Shot 2018-05-10 at 3.44.19 PM.png
  • Select the Register tab and register to your source and target vCenters servers.
  • Screen Shot 2018-05-10 at 3.45.10 PM.png
  • Select the Migration tab, provide information start the migration.
  • Watch the magic happen…

Links:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s