Migrate VMs using Advanced Cross vCenter Server vMotion

  • 13 January 2021
  • 6 comments
  • 4256 views

Userlevel 7
Badge +13

A few days ago @Link State posted how to migrate MS AD-controllers using Veeam Replication. Therefore I thought it would be interesting to get to know the new vSphere Advanced Cross vCenter Server vMotion (XVM).

What is Cross vMotion about?

First, there is a difference between Cross vCenter Server vMotion (xvMotion) and  Advanced xvMotion. xvMotion was already introduced (and supported) for migration of VMs between vCenters within the same Single-SignOn (SSO) Domain in vSphere 6.0. With Advanced xvMotion it is possible to migrate VMs between vCenters in different SSO Domains!

Advanced xvMotion is not completely new. Actually it exists for about 5 years as a fling. Now it is introduced in the latest version of vSphere: 7.0 U1c (notice the "c"!)

 

How does it work?

For demo I use a vCenter 6.7 U3 as source and a 7.0 U1c vCenter as destination.

To start the wizard, right click the resource, you want to move VM(s) to and select Import VMs.

 

Provide data of source vCenter.

 

And press Login. When credentials work, you get a green banner.

In next step, select VM(s) you want to migrate.

 

The rest of the wizard is near the same as for every vMotion task.

Just at the Network selection could be an issue! This is not xvMotion specific, it is vSphere 7 specific. Since than default network port-group security policies have changed:

 

These settings must be the same for source and destination, otherwise you get a compatibility error and you cannot continue.

Migration itself is straightforward and very similar to normal vMotion processes. You see in each vCenter a running task.

Important Notes

  • Migration uses vMotion vmkernel Ports like normal vMotion. So source and destination host must be able to communicate using vMotion ports. In my testing it was even necessary to use TCP/IP Stack vMotion on both sides!

  • MAC-Address stays the same after xvMotion.
  • vCenter's MoRef-ID for the VM changes with xvMotion! This is quite clear because the new vCenter just creates a new one for each new VM. But InstanceUUID stays the same.
  • Keep in mind to add VM(s) after migration to backup again!

 

References


6 comments

Userlevel 6
Badge +1

Thanks for the great post. It's definitely very useful but looks like the feature is not yet available with version 6.5

Userlevel 7
Badge +13

Source or destination has to be vSphere 7.0U1c! As described I imported from 6.7. I did not find a current compatibility matrix. But I think, 6.5 should work as well.

HI,

Great post.
I have some question.
What if Vmotion networks are different ? Traffic can be routed ?  Same question for Vcenter address/network
Source network can also be present on destination with same VLAN ? Can we change ?

Userlevel 7
Badge +4

@vNote42 : Good one, thanks for sharing !

Userlevel 7
Badge +13

HI,

Great post.
I have some question.
What if Vmotion networks are different ? Traffic can be routed ?  Same question for Vcenter address/network
Source network can also be present on destination with same VLAN ? Can we change ?

Hi @Gamiblez !

Honestly, I did not test with routed networks. But routing for vMotion traffic is supported since some time. You have to place vMotion kernel port on vMotion TCP/IP stack (I mentioned this stack in my post too) to get this done. I am quite sure, this will work with Advanced Cross vCenter Server vMotion too!

Userlevel 7
Badge +20

This is a great feature of VMware for sure.  Going to have to test this out in the lab. :smiley:

Comment