One of the big new features that was introduced in vSphere 6.5, exclusively for vCenter Server Appliance (VCSA), is the vCenter Server High Availability (VCHA) capablilty. Feidhlim O'Leary has an excllent blog post covering what VCHA provides as well as a couple of demo videos on how it works, definitely worth checking out! After upgrading one of my home lab enviornments to vSphere 6.5, I wanted to try out this feature from an educational standpoint and specifically around using new VCHA vSphere APIs.

Like most vSphere Home Labbers, I have limited hardware and if you try to enable VCHA with only a single ESXi host, you will see the following error:

This operation would violate a virtual machine affinity/anti-affinity rule.

As you might expect, VCHA will automatically provision affinity rules to ensure that the active, passive and witness node are not all running on the same physical ESXi host. For a production deployment this is completely valid but for lab and testing purposes, this might be a tough requirement to satisfy. I was hoping there might be an override option and searching for the word "ha" in the vCenter Server Advanced Settings lead me to an interesting property called config.vpxd.vcha.drsAntiAffinity. This discovery was purely by luck and I had noticed it was set to true by default, so I decided to change it to false and see what would happen.

To my surprise, changing this setting worked and I was able to successfully enable VCHA in my lab with all three nodes just running on a single ESXi host 😀

An alternative solution would be to deploy a 3-Node Nested ESXi cluster which would not require this modification, but my physical ESXi host was limited on memory, only 16GB and would have been a lot slower.

5 thoughts on “How to enable vCenter Server High Availability (VCHA) in vSphere 6.5 w/single ESXi host?

  1. Wililam – I am attempting to deploy VCSA HA 6.5 w/ embedded PSC on a two-host cluster. I created a dedicated VLAN for HA network and map to the portgroup during HA config. The config gets to 96% and fails. Is there a log created during HA configuration that I can use to troubleshoot?

    • It’s probably because you need 3 components (vcenter, a replica and a witness) for VCHA, and the wizard creates anti-affinity rules between them. You may have to deploy VCHA manually for this to work

  2. Hi William . Would you still protect each of the 3 VCHA nodes with conventional vSphere HA ? I ask as we have an EMC Metro Cluster and I am unable to find documentation on this . In the event of ESXi failure , I don’t want vSphere HA restarting my “source” VC and VCHA trying to fail over to target VCHA at the same time would you ? Specifically since my METRO HA and DRS is configured to fail over VMs to other sites by default .

    Any guidance ?

  3. Hello William,

    Would you know why when I go to vCenter HA on my vcenter server to configure the settings I get an error stating “Error retrieving vCenter HA data”?

Thanks for the comment!

This site uses Akismet to reduce spam. Learn how your comment data is processed.