After upgrading to vCenter 6.7 and then attempting vSphere distributed switch upgrade from vDS 6.5 to vDS 6.6 or later version via web client results in the following message “An Upgrade for the vSphere Distributed switch in datacenter is in progress”
VMware vCenter Server 6.7.x
VMware vCenter Server 7.x
This is resolved in 6.7 U2 - Release-Notes.
Download Broadcom products and software through KB-142814
You might see a message "An Upgrade for the vSphere Distributed switch in datacenter is in progress" even after the upgrade is complete. This happens if no host member is available in the vSphere Distributed Switch configuration, or if a host member has failed to upgrade several times.
This issue is resolved in 6.7 U2 release. If you already face the issue that no host member is available in the VDS, you must do the following:
Workaround 1:
Backup the vCenter database - for more information refer KB-316471
Login to vCenter using Putty and run below commands.
To connect to the VCDB, run the command --> /opt/vmware/vpostgres/current/bin/psql -d VCDB -U postgres
To update record from VCDB, run the command --> update vpx_dvs upgrade_status set upgrade_status=0;
To exit from VCDB, run the command --> \q
From the the appliance shell, run the command to restart vpxd service --> vmon-cli -r vpxd
Workaround 2:
Add a new portgroup on the VDS and then delete the newly added portgroup.
This will make the H5 client to show the synced status.
Workaround 3:
In some cases, there are host(s) that have not updated, during the upgrade, their vDS versions from the 'etherswitch' (vDS 6.5) to the 'cswitch' (vDS 6.7 or later).
This can be confirmed, by checking the hosts that are showing out of sync, and through SSH to one of the hosts, entering cli command #net-dvs -l | less. Where at the top you can see the vDS type, either displays 'etherswitch' or 'cswitch'. This can help identify which ESXi hosts the upgrade was not pushed to.
To rectify, you can remove the identified 'etherswitch' ESXi host(s) from the vDS through the 'Remove Host(s)' wizard in the vDS 'Networking' tab on vCenter, and then subsequently re-add it back. You may need to remove all associations from the vDS first before ESXi host removal ie. VMs, vmkernel(s) and uplinks from the vDS first, by placing them to a standard switch.
Kindly refer below KB for Migrate Virtual Machines (VMs) and VMkernel Adapters from Distributed Switch (vDS) to Standard Switch (vSS)
Using vCenter UI - https://knowledge.broadcom.com/external/article/306406/migrate-vms-and-vmkernal-adapters-from-d.html
Using ESXi CLI - https://knowledge.broadcom.com/external/article/376245/moving-host-from-dvs-to-standard-switch.html