When deploying a new VMware Cloud Foundation (VCF) Fleet, users can choose from two different deployment models: Simple (one-node) or High-Availability (3-node) within the VCF Installer, which applies to the VCF Automation, VCF Operations and NSX Manager components.

Here is a quick visual that represents the two different deployment models:

While the VCF Installer UI only provides two deployment options, the underlying VCF platform can actually support a combination of simple and HA deployment for the individual components based on your needs.
Here is a quick visual that outlines the individual supported components using the HA deployment model:

With these additional combinations, a total of 8 unique permutation is possible. To take advantage of these additional deployment options, you will need to use the VCF JSON method of deployment, which can be passed to VCF Installer UI or API.
As a baseline, here is an example VCF Fleet JSON example for both the Simple an HA deployment models:
The most convenient method to get to your desired VCF Fleet deployment model is to interactively go through the VCF Installer UI once and select the HA mode, export the JSON and then adjust following sections based on your desired outcome.
VCF Automation
For VCF Automation, the change to go from simple to HA deployment is simply an additional 2 IP Addresses as shown in the snippet below:
"vcfAutomationSpec": {
"hostname": "auto01",
"adminUserPassword": "VMware1!VMware1!",
"ipPool": [
"172.30.0.31",
"172.30.0.32",
"172.30.0.33",
"172.30.0.34"
],
"nodePrefix": "auto01",
"internalClusterCidr": "198.18.0.0/15",
"useExistingDeployment": false
}
Here is a complete working example JSON of a VCF Fleet where VCF Automation is the only component using HA deployment:
VCF Operations
For VCF Operations, the change to go from simple to HA deployment is to use Medium size appliance, add two additional node entries (replica/data) and populate the loadBalancerFqdn entry as shown in the snippet below:
"vcfOperationsSpec": {
"nodes": [
{
"hostname": "vcf01a",
"rootUserPassword": "VMware1!VMware1!",
"type": "master"
},
{
"hostname": "vcf01b",
"rootUserPassword": "VMware1!VMware1!",
"type": "replica",
"sslThumbprint": ""
},
{
"hostname": "vcf01c",
"rootUserPassword": "VMware1!VMware1!",
"type": "data"
}
],
"adminUserPassword": "VMware1!VMware1!",
"applianceSize": "medium",
"useExistingDeployment": false,
"loadBalancerFqdn": "vcf01"
}
Here is a complete working example JSON of a VCF Fleet where VCF Operations is the only component using HA deployment:
NSX Manager
For NSX Manager, the change to go from simple to HA deployment is to simply add two additional nodes as shown in the snippet below:
"nsxtManagers": [
{
"hostname": "nsx01a"
},
{
"hostname": "nsx01b"
},
{
"hostname": "nsx01c"
}
]
Here is a complete working example JSON of a VCF Fleet where NSX Manager is the only component using HA deployment:
Thanks for the comment!