Most of the time your HA issues are going to be DNS related. So ensure that your vcenter can ping all your hosts by FQDN without issue. In some cases though a stubborn server may not want to play the game even when everything is configured properly.
This method is considered a “last effort” as you’ll need to run some CLI commands on the ESX box. But i have found it useful in a few situations.
This page has a great write up on which files HA uses and how to temporary stop the HA service. http://itknowledgeexchange.techtarget.com/virtualization-pro/vmware-ha-failure-got-you-down/
Remember to get to the console on ESXi you logon to the console press Alt-F1 then type “unsupported” (note: you cannot see what you are typing), then enter the root password.
The main bits are as follows;
Stop the HA service
service vmware-aam stop
Check that HA has stopped (if not then use kill command to kill them)
ps ax | grep aam | grep -v grep
Move the current HA config files to a backup directory (before restarting HA)
mv * .old
mv .[a-z]* .old
Then back to your vcenter and select Reconfigure for VMware HA on the effected host. Fingers crossed that it starts up and reconfigures without any issues.