This issue is resolved in VMware NSX for vSphere 6.2.4 with vSphere 6.0 Update 3, available at VMware Downloads.
To work around this issue if you do not want to upgrade, remove the duplicate VTEPs:
To remove the duplicate VTEPs:
- Place the affected ESXi host in the maintenance mode.
- Delete all VTEP vmknics on the ESXi host.
- In the vSphere client, select the ESXi host and click Configuration > Networking > vSphere Distributed Switch.
- Select Manage Virtual Adapters for the VXLAN vDS and remove the vmkernel interface.
- Exit the maintenance mode.
- Repeat Steps 1-5 for all affected ESXi hosts.
- Click Network & Security > Installation > Host Preparation, select the cluster the host belongs to initiate a force-sync VXLAN from the UI.
- Verify networking on virtual machines on the remediated ESXi hosts.
To prevent this issue from occurring:
Keep the NSX Manager down when vCenter Server is restarted. Start the NSX Manager only after the vCenter Server is fully initialized and shows correct network configuration for all hosts.
Use the attached script to monitor and understand when it is safe to start the NSX Manager after restart of vCenter Server.
- Download the 2144605_checkESXconfig.zip file attached to this Knowledge Base article.
- Copy the 2144605_checkESXconfig.py script to the ESXi host or to the VCSA using SCP and run the script:
# python 2144605_checkESXconfig.py --server Center_server--user username--password password
Notes:- This script connects to vCenter Server and queries the config for all ESXi servers in the vCenter Server environment.
- The default security policy blocks outbound connections on 443. Modify the firewall under Security profile to enable http Client to allow outbound connections on port 443 if the script fails.
You see this output if ESXi host does not have a NULL config value:
#python checkESXconfig.py --server myvcenter.corp.local --user [email protected] --password mycorppassword123
API thread output:
Hosts with NULL config : {}
Hosts with NULL config.network : {}
PC thread output:
Hosts with NULL config : {}
Hosts with NULL config.network : {}
vCenter initialisation has completed, it is now ok to start the NSX Manager service.
You see this output if ESXi host has a NULL config value:
# python checkESXconfig.py --server myvcenter.corp.local --user [email protected] --password mycorppassword123
API thread output:
Hosts with NULL config : {}
Hosts with NULL config.network : {'vim.HostSystem:host-27': 1, 'vim.HostSystem:host-481': 1, 'vim.HostSystem:host-10': 1}
PC thread output:
Hosts with NULL config : {}
Hosts with NULL config.network : {'vim.HostSystem:host-27': 1, 'vim.HostSystem:host-481': 1, 'vim.HostSystem:host-10'
Waiting for 10 seconds
Writing Hosts with NULL config to file ConfigIssueHosts.txt
vCenter is still initialising, do not start the NSX Manager Service. Please check the output files generated for affected hosts and apply the workaround.
Notes:- In this case, three ESXi hosts (host-27, host-481 and host-10) have NULL values.
- ConfigIssueHosts.txt output file contains the DNS names of these ESXi hosts.
- If you do not see hosts with a NULL value in the output, start the NSX Manager service.
If you see host(s) with NULL values in the output:
Open an ssh session to the ESXi host(s) and restart the hostd and vpxa management services by running these commands:
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
Note: This may result in the ESXi host disconnecting from vCenter Server briefly, but virtual machines running are not impacted.
Note: If you reboot vCenter Server 6.0 when ESXi hosts are in a Disconnected or Not Responding state, ESXi hosts reports a NULL config, which is expected. VMware recommends you to ensure that all ESXi hosts are connected and responding in vCenter Server before rebooting.