We also get an error relating to a vpxa timeout but I have checked the service and it is started on the host
Are you maybe using a trial license, or a key which has an expiration date set? If not, you'll need to look at hostd and vpxa logs to figure out why they disconnected.
I would recommend that if i you follow the following KB: Troubleshooting an ESXi/ESX host in non responding state (1003409) | VMware KB to eliminate possible causes whilst the issue is occurring.
If you found my answers useful please consider marking them as Correct OR Helpful
Is there a firewall between them thats blocking ports? We had similar a while ago and the firewall was blocking the communications, port 902/903 i think it was.
Ive also seen this when the licences expire, and also if the hardware is not fully supported. We discovered this recently and ended up rolling it back to a previous version and been fine since.
1. Disable firewall and check host connect back in vcenter.
# esxcli network firewall get
# esxcli network firewall set --enable false
2. If host connected back in vcenter after disabling firewall , then re-enable firewall again and monitor host.
# esxcli network firewall set --enabled true
3. if host disconnected in vcenter again , enable "VMware vCenter Agent"
Go to Host through vClient >> Select Configuration >> Go to "Security Profile" >>> click on "Edit" >> Click Check-mark on box "VMware vCenter Agent" for Port 902.
Check now host will connect back in vcenter