Symptoms:
This is a known issue impacting VMware NSX.
Workaround:
To workaround this issue, you can migrate the vmks to a standard vSwitch, do the NVDS to CVDS migration and then migrate the vmks back to the CVDS.
Note: The vSwitch will need to have at least 1 vmnic on it. If you do not have a vSwitch, please create it, add a vmnic and follow the below steps.
For an overview of the steps below, please review the vSphere Networking Guide.
Stage 1: Migrate the vmks from the NVDS to the vSwitch one by one with the below steps.
1. Locate the host in the vCenter UI, navigate to Configure - Virtual Switches on the host.
2. Expand the vSwitch and click the 3 dots, then click on Migrate VMkernel Adapter.
3. Select vmk0 and click Next, in Configure settings screen, click Next and then On Ready to complete click Finish.
4. This may take some time to migrate vmk0 to the vSwitch.
Repeat steps 2 to 4 for remaining vmks to migrate from the NVDS to the vSwitch.
Stage 2: Retrigger migration for host with below steps
1. Clean up the old topology by running the below API:
2. Create a new precheck with the below API and note the precheck ID from the output:
3. Generate a new URT topology with the below API, using the precheck ID from step 2:
4. Apply the topology using the below API with the payload that was received as output from step 3. Make sure to change vds_name before triggering apply topology.
5. Retrigger the migration for the host using the below API:
6. Check if upgrade stage is changed to TN_MIGRATION_COMPLETED after all the migration steps.
Stage 3: Migrate the vmks and vmnics from the vSwitch to CVDS switch, in order to again use the lag uplinks, with the below steps.
Note: In the below example, the names of vmks, portgroup, CVDS and numbers on vmnics may be different in your setup.
As the NVDS migration is complete, any vmnics used by the NVDS will now be free, as the NVDS has been removed.
Now migrate vmks from vswitch to CVDS switch with below steps:
1. Locate the host in the vCenter UI, navigate to Configure - Virtual Switches on the host.
2. Expand the CVDS and click on the 3 dots, click on Migrate Networking.
3. Under Manage physical adapters, for the first vmnic which will be in the lag, select host-lag-0 under Assign Uplink and click Next.
4. Under Manage VMkernel adapters, for vmk0 click on ASSIGN PORT GROUP, then select management. Make sure that NSX port group ID exists for that entry. Then click on Action Assign and click Next.
5. Under the Migrate VM networking screen, click Next and then click Finish. With this vmnic0 and vmk0 gets migrated to CVDS switch to use host-lag-0 uplink
6. Perform the same operation starting from step 3 to step 5 to migrate vmnic1 and vmk1 to the CVDS switch by selecting port group vmotion to use host-lag-1 uplink.