For this issue to occur your NSX environment must be set to publish FQDN's instead of using IP addresses. If your datacenter fully goes down and on reboot, of both the host and vm's one of your NSX managers boots before DNS is available it will generate a faulty appliance.xml file since name resolution is not available. This will then get pushed to all of the host in the environment and place the host in a disconnected state.
On the host side in NSX cli you will see the below error, while in the NSX UI the host will be disconnected. Attempting to resolve the issue from the NSX UI will not resolve the issue. Rebooting the host, updating dns, and restarting services will not resolve the issue as well, but you should validate that DNS is up and you can resolve the NSX managers FQDN before you can begin fixing the issue.
VMware NSX
In the event of a complete environmental outage, if the first NSX manager comes up before your DNS server comes up while configured to publish fqdn it will generate an appliance.xml file that does not contain the NSX managers fqdn. This appliance.xml file will then be pushed to all of the host in the environment, even if the other two NSX managers came up after DNS services were restored. As a result all of the host in the environment will be in a disconnected state.
You will first need to identify which NSX manager, has the incorrect appliance.xml file.
less appliance.xml<fqdn>;; communications error to (your dns serverip#53): timed out </fqdn>vi appliance.xml to edit the xml file.<fqdn>;; communications error to (your dns serverip#53): timed out </fqdn> with <fqdn>your.nsxmanager.fqdn</fqdn> <fqdn>nsx-manager-01.lab</fqdn>/etc/init.d/nsx-proxy restart && /etc/init.d/nsx-opsagent restart to release the old fqdn and query the appliance.xml file once again for the new fqdn.nsxcli and run get controllers it will show the fqdn of the nsx managers, and will now be in a connected state.nsxcli and get controllers