The following blog goes through stretching a management cluster in a VCF environment on 4.4.1.0. You need to ensure you have deployed your edges first in management, you have commissioned your hosts in sddc manager and have deployed a witness esxi host. The management cluster must be stretched if you want to stretch your workload domains.
When you download your witness esxi host ova make your sure you download the one matching the BOM of the VCF version your using. Click the ‘VMware Virtual SAN witness appliance’ link to go to the download page
Download witness esxi host virtual machine, this will need to be added to the datacenter NOT the cluster.
https://customerconnect.vmware.com/downloads/details?downloadGroup=WITNESS-OVA-70U3-C&productId=973
Below is the deployment guide for the witness esxi host virtual machine in VCF
For the API you need to have the following information. Cluster id, host id’s, esxi license key, vds name and vmnic mapping, host overlay vlan for the secondaryAzOverlayVlanId, fqdn of witness esxi host, witness vsancidr which is the network and mask, vsanip witness ip.
example API
{
"clusterStretchSpec": {
"hostSpecs": [{
"id": "88baa0eb-3aeb-4deb-89ba-a84bf50c7844",
"licenseKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"hostNetworkSpec": {
"vmNics": [{
"id": "vmnic0",
"vdsName": "mgmt-vds01"
},
{
"id": "vmnic1",
"vdsName": "mgmt-vds01"
}
]
}
}, {
"id": "e3dd73d8-e2ae-4cf0-9db2-c7157c808124",
"licenseKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"hostNetworkSpec": {
"vmNics": [{
"id": "vmnic0",
"vdsName": "mgmt-vds01"
},
{
"id": "vmnic1",
"vdsName": "mgmt-vds01"
}
]
}
}, {
"id": "6f935335-bab5-4e43-b039-41b439a912c6",
"licenseKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"hostNetworkSpec": {
"vmNics": [{
"id": "vmnic0",
"vdsName": "mgmt-vds01"
},
{
"id": "vmnic1",
"vdsName": "mgmt-vds01"
}
]
}
}, {
"id": "372af10f-d6c7-42eb-aa26-513dfc8218f5",
"licenseKey": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"hostNetworkSpec": {
"vmNics": [{
"id": "vmnic0",
"vdsName": "mgmt-vds01"
},
{
"id": "vmnic1",
"vdsName": "mgmt-vds01"
}
]
}
}],
"witnessSpec": {
"vsanIp": "10.0.0.114",
"fqdn": "esxi-wit.vcf.sddc.lab",
"vsanCidr": "10.0.0.0/24"
},
"witnessTrafficSharedWithVsanTraffic": false,
"secondaryAzOverlayVlanId": 10,
"isEdgeClusterConfiguredForMultiAZ": true
}
}
–Get the host id in sddc manager
In sddc, click Developer Center > API Explorer.
Expand the APIs for managing hosts
GET /v1/hosts
In the Status text box, enter UNASSIGNED_USEABLE and click Execute
In the Response section, click PageOfHost, copy the id
–Get the license key for your esxi host
–Get the cluster id in sddc manager
APIs for managing clusters section, and expand GET /v1/cluster
Click Execute
in the Response section, click PageOfCluster, copy the id element of the management cluster.
-Validate config
APIs for managing clusters
POST /v1/clusters/{id}/validations
Value text box, enter the unique ID for the management cluster.
clusterUpdateSpec box copy api
Click Execute
confirm successful
– Stretch cluster
APIs for managing clusters
PATCH /v1/clusters/{id}.
ID of the management cluster in the Value text-box.
clusterUpdateSpec text box copy api
Click Execute
My cluster looks like this in vCenter atm should get another four hosts
If you get the following error message, I believe this is a bug
You need to finish off the configuration in vCenter
Click cluster > click configure > expand vSAN > click fault domains > click configure stretched cluster
Move secondary site hosts to the secondary domain and click next
Select your witness host and click next
Click finish
should look like the below
rerun the failed task in sddc manager
Done
If you want to modify the json file to add more nics & vds use this as a example
“vmNics”: [{
“id”: “vmnic0”,
“vdsName”: “dc-m01-cl01-vds01”
},
{
“id”: “vmnic1”,
“vdsName”: “dc-m01-cl01-vds02”
},
{
“id”: “vmnic2”,
“vdsName”: “dc-m01-cl01-vds01”
},
{
“id”: “vmnic3”,
“vdsName”: “dc-m01-cl01-vds02”
}