Sddc APIs
APIs for managing SDDC. The /v1/sddcs APIs are available only on the Cloud Builder appliance.
Table of Contents
Note : The ipAddress field in request payload or response body are deprecated and will be removed. Please use fqdn field instead.
1. Create an SDDC
Create an SDDC workflow executes automatically the following:
Configures networking on each host.
Configures vSAN storage on the hosts.
Deploys and configures the management stack - NSX
Deploys and configures SDDC Manager which provides the ability to perform Day 2 operations
1.1. Prerequisites API
The following data is required
ID of the SDDC instance
Detailed list of host
Tip : Refer to: SddcHostSpec.
- vCenter details
Tip : Refer to: SddcVcenterSpec.
- Cluster details
Tip : Refer to: SddcClusterSpec.
- Detailed list of Distributed Virtual Switches
Tip : Refer to: DvsSpec.
Note : In the dvsSpec, 'dvsName' can either refer to the name of an existing System DVS that should be used for overlay traffic, or the name of the new to-be-deployed overlay DVS.
- Detailed list of networks
Tip : Refer to: SddcNetworkSpec.
- DNS details
Tip : Refer to: DnsSpec.
List of NTP servers
Name of the task to execute
The following data is optional
- vSAN details
Tip : Refer to: VsanSpec.
- NSX details
Tip : Refer to: SddcNsxtSpec.
Note : In order to configure NSX Host Overlay Using a Static IP Pool, please provide ipAddressPoolSpec in nsxtSpec. Otherwise, DHCP will be chosen. Example specifications can seen below.
- SDDC Manager details
Tip : Refer to: SddcManagerSpec.
- List of PSC's details
Tip : Refer to: PscSpec.
- VxManager details
Tip : Refer to: VxManagerSpec.
Name of network pool associated with the management domain
List of names of the components to be excluded
Version of the Distributed Virtual Switch
Boolean to identify whether Customer Experience Improvement Program should be enabled
Boolean to identify whether Federal Information Processing Standards should be enabled
Remote Site details
Tip : Refer to: VxManagerSpec.
Passphrase for the certificates to be used for vCenter and NSX
Boolean to identify if ESXi thumbprint validation is to be skipped
Security details
Tip : Refer to: SecuritySpec.
Default and Autogenerated Input Fields API
The following pattern values are going to be used as default ones if blank:
Management vSphere Cluster (clusterSpec)
- clusterImageEnabled → true
Management vSphere Cluster Name (clusterSpec.name) → <sddc-id>-cluster-001
Single Sign On (pscSpec)
- ssoDomain → vsphere.local
Management Pool Name → networkpool-001
Datastore Name → <cluster-name>-vsan
Resource Pool
- Name → <cluster-name>-<pool-type>-001, <cluster-name>-<pool-type>-002,...
vSphere Distributed Switch
Single one
vmnic0 and vmnic1 will be used for Physical Nic
uplink1 and uplink2 will be used for VM Kernel Adapters, and each network in the networkSpecs will have them as Active Uplinks (if not provided)
Management, vSAN and vMotion networks will be created
One Overlay (overlay-tz-mgmt-nsxt) and one VLAN (vlan-tz-mgmt-nsxt) Transport Zone will be created
Teaming Policy → LOADBALANCE_SRCID
MTU → 9000 (will be used for all networks if not provided in networkSpecs as input(
The teaming policy for the networks will be LOADBALANCED_LOADBALANCED
vSphere Distributed Switch Name → <cluster-name>-vds-001, <cluster-name>-vds-002, ...
NSX Form Factor → MEDIUM
Password reusing:
SDDC Local User Password is required in all cases, except when every other password has been passed
If any password in vCenter (excluding VCF on VxRail), NSX and SDDC Manager is blank, the SDDC Local User Password will be used
- To be more specific, if only sddcManagerSpec.localUserPassword is passed, it will be reused for any other password
This logic does not apply for ESXi Host Passwords!
In case the Password Validation fails for a given password which has not been passed as input, the SDDC Local User Password was used and has to be changed in order to meet the requirements of the other passwords.
ESXi Host Password reusing:
If the username and password is the same for all ESXi Hosts populated in the input json, it is enough to populate the credentials for only one of the ESXi hosts in the list of hostSpecs
If the username is 'root', then it is not required to be filled as well, as the default username is root
1.2. Steps API
- Validate the input specification.
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs/validations' -i -u 'admin:VMwareInfra@1' -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}'
HTTP Request
POST /v1/sddcs/validations HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 4616
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 9081
{
"id" : "26c27804-f837-4e4f-b50f-1625af792f0f",
"executionStatus" : "COMPLETED",
"validationChecks" : [ ],
"additionalProperties" : {
"sddcSpec" : "{\n \"dvSwitchVersion\": \"7.0.0\",\n \"skipEsxThumbprintValidation\": true,\n \"managementPoolName\": \"bringup-networkpool\",\n \"sddcManagerSpec\": {\n \"hostname\": \"sfo-vcf01\",\n \"ipAddress\": \"10.0.0.4\",\n \"localUserPassword\": \"xxxxxxxxxxxx\",\n \"rootUserCredentials\": {\n \"username\": \"root\",\n \"password\": \"xxxxxxx\"\n },\n \"secondUserCredentials\": {\n \"username\": \"vcf\",\n \"password\": \"xxxxxxx\"\n }\n },\n \"sddcId\": \"sddcId-public-api-01\",\n \"esxLicense\": \"XXXXX-XXXXX-XXXXX-XXXXX-XXXXX\",\n \"workflowType\": \"VCF\",\n \"ntpServers\": [\n \"10.0.0.250\"\n ],\n \"dnsSpec\": {\n \"subdomain\": \"vrack.vsphere.local\",\n \"domain\": \"vsphere.local\",\n \"nameserver\": \"10.0.0.250\",\n \"secondaryNameserver\": \"10.0.0.251\"\n },\n \"networkSpecs\": [\n {\n \"subnet\": \"10.0.0.0/22\",\n \"vlanId\": \"0\",\n \"mtu\": \"1500\",\n \"networkType\": \"MANAGEMENT\",\n \"gateway\": \"10.0.0.250\"\n },\n {\n \"subnet\": \"10.0.4.0/24\",\n \"includeIpAddressRanges\": [\n {\n \"startIpAddress\": \"10.0.4.7\",\n \"endIpAddress\": \"10.0.4.48\"\n },\n {\n \"startIpAddress\": \"10.0.4.3\",\n \"endIpAddress\": \"10.0.4.6\"\n }\n ],\n \"includeIpAddress\": [\n \"10.0.4.50\",\n \"10.0.4.49\"\n ],\n \"vlanId\": \"0\",\n \"mtu\": \"8940\",\n \"networkType\": \"VSAN\",\n \"gateway\": \"10.0.4.253\"\n },\n {\n \"subnet\": \"10.0.8.0/24\",\n \"includeIpAddressRanges\": [\n {\n \"startIpAddress\": \"10.0.8.3\",\n \"endIpAddress\": \"10.0.8.50\"\n }\n ],\n \"vlanId\": \"0\",\n \"mtu\": \"8940\",\n \"networkType\": \"VMOTION\",\n \"gateway\": \"10.0.8.253\"\n }\n ],\n \"nsxtSpec\": {\n \"nsxtManagerSize\": \"medium\",\n \"nsxtManagers\": [\n {\n \"hostname\": \"sfo-m01-nsx01a\"\n },\n {\n \"hostname\": \"sfo-m01-nsx01b\"\n },\n {\n \"hostname\": \"sfo-m01-nsx01c\"\n }\n ],\n \"rootNsxtManagerPassword\": \"xxxxxxx\",\n \"nsxtAdminPassword\": \"xxxxxxx\",\n \"nsxtAuditPassword\": \"xxxxxxx\",\n \"vipFqdn\": \"sfo-m01-nsx01\",\n \"nsxtLicense\": \"XXXXX-XXXXX-XXXXX-XXXXX-XXXXX\",\n \"transportVlanId\": 0,\n \"ipAddressPoolSpec\": {\n \"name\": \"sfo01-m01-cl01-tep01\",\n \"description\": \"ESXi Host Overlay TEP IP Pool\",\n \"subnets\": [\n {\n \"ipAddressPoolRanges\": [\n {\n \"start\": \"172.16.14.101\",\n \"end\": \"172.16.14.108\"\n }\n ],\n \"cidr\": \"172.16.14.0/24\",\n \"gateway\": \"172.16.14.1\"\n }\n ]\n }\n },\n \"vsanSpec\": {\n \"licenseFile\": \"XXXXX-XXXXX-XXXXX-XXXXX-XXXXX\",\n \"datastoreName\": \"sfo-m01-cl01-ds-vsan01\",\n \"esaConfig\": {\n \"enabled\": false\n }\n },\n \"dvsSpecs\": [\n {\n \"mtu\": 8940,\n \"niocSpecs\": [\n {\n \"trafficType\": \"VSAN\",\n \"value\": \"HIGH\"\n },\n {\n \"trafficType\": \"VMOTION\",\n \"value\": \"LOW\"\n },\n {\n \"trafficType\": \"VDP\",\n \"value\": \"LOW\"\n },\n {\n \"trafficType\": \"VIRTUALMACHINE\",\n \"value\": \"HIGH\"\n },\n {\n \"trafficType\": \"MANAGEMENT\",\n \"value\": \"NORMAL\"\n },\n {\n \"trafficType\": \"NFS\",\n \"value\": \"LOW\"\n },\n {\n \"trafficType\": \"HBR\",\n \"value\": \"LOW\"\n },\n {\n \"trafficType\": \"FAULTTOLERANCE\",\n \"value\": \"LOW\"\n },\n {\n \"trafficType\": \"ISCSI\",\n \"value\": \"LOW\"\n }\n ],\n \"dvsName\": \"sfo-m01-cl01-vds01\",\n \"vmnicsToUplinks\": [\n {\n \"id\": \"vmnic0\",\n \"uplink\": \"uplink1\"\n },\n {\n \"id\": \"vmnic1\",\n \"uplink\": \"uplink2\"\n }\n ],\n \"nsxTeamings\": [\n {\n \"policy\": \"LOADBALANCE_SRCID\",\n \"activeUplinks\": [\n \"uplink1\",\n \"uplink2\"\n ],\n \"standByUplinks\": []\n }\n ],\n \"networks\": [\n \"MANAGEMENT\",\n \"VSAN\",\n \"VMOTION\"\n ],\n \"nsxtSwitchConfig\": {\n \"transportZones\": [\n {\n \"name\": \"sfo-m01-tz-overlay01\",\n \"transportType\": \"OVERLAY\"\n },\n {\n \"name\": \"sfo-m01-tz-vlan01\",\n \"transportType\": \"VLAN\"\n }\n ]\n }\n }\n ],\n \"clusterSpec\": {\n \"clusterName\": \"sfo-m01-cl01\",\n \"clusterEvcMode\": \"\",\n \"resourcePoolSpecs\": [\n {\n \"cpuSharesLevel\": \"high\",\n \"cpuSharesValue\": 0,\n \"name\": \"sfo-m01-cl01-rp-sddc-mgmt\",\n \"memorySharesValue\": 0,\n \"cpuReservationPercentage\": 0,\n \"memoryLimit\": -1,\n \"memoryReservationPercentage\": 0,\n \"cpuReservationExpandable\": true,\n \"memoryReservationExpandable\": true,\n \"memorySharesLevel\": \"normal\",\n \"cpuLimit\": -1,\n \"type\": \"management\"\n },\n {\n \"cpuSharesLevel\": \"high\",\n \"cpuSharesValue\": 0,\n \"name\": \"sfo-m01-cl01-rp-sddc-network\",\n \"memorySharesValue\": 0,\n \"cpuReservationPercentage\": 0,\n \"memoryLimit\": -1,\n \"memoryReservationPercentage\": 0,\n \"cpuReservationExpandable\": true,\n \"memoryReservationExpandable\": true,\n \"memorySharesLevel\": \"normal\",\n \"cpuLimit\": -1,\n \"type\": \"network\"\n },\n {\n \"cpuSharesLevel\": \"normal\",\n \"cpuSharesValue\": 0,\n \"name\": \"sfo-m01-cl01-rp-sddc-compute\",\n \"memorySharesValue\": 0,\n \"cpuReservationPercentage\": 0,\n \"memoryLimit\": -1,\n \"memoryReservationPercentage\": 0,\n \"cpuReservationExpandable\": true,\n \"memoryReservationExpandable\": true,\n \"memorySharesLevel\": \"normal\",\n \"cpuLimit\": -1,\n \"type\": \"compute\"\n },\n {\n \"name\": \"sfo-m01-cl01-rp-user-compute\",\n \"type\": \"compute\",\n \"cpuReservationMhz\": 2100,\n \"cpuLimit\": -1,\n \"cpuReservationExpandable\": true,\n \"cpuSharesLevel\": \"normal\",\n \"memoryReservationMb\": 3128,\n \"memoryReservationExpandable\": true,\n \"memorySharesLevel\": \"normal\",\n \"memorySharesValue\": 0\n }\n ]\n },\n \"pscSpecs\": [\n {\n \"pscSsoSpec\": {\n \"ssoDomain\": \"vsphere.local\"\n },\n \"adminUserSsoPassword\": \"xxxxxxx\"\n }\n ],\n \"vcenterSpec\": {\n \"vcenterIp\": \"10.0.0.6\",\n \"vcenterHostname\": \"sfo-m01-vc01\",\n \"licenseFile\": \"XXXXX-XXXXX-XXXXX-XXXXX-XXXXX\",\n \"rootVcenterPassword\": \"xxxxxxx\",\n \"vmSize\": \"tiny\"\n },\n \"hostSpecs\": [\n {\n \"credentials\": {\n \"username\": \"root\",\n \"password\": \"xxxxxxx\"\n },\n \"ipAddressPrivate\": {\n \"subnet\": \"255.255.252.0\",\n \"cidr\": \"\",\n \"ipAddress\": \"10.0.0.100\",\n \"gateway\": \"10.0.0.250\"\n },\n \"hostname\": \"sfo01-m01-esx01\",\n \"association\": \"sfo-m01-dc01\"\n },\n {\n \"credentials\": {\n \"username\": \"root\",\n \"password\": \"xxxxxxx\"\n },\n \"ipAddressPrivate\": {\n \"subnet\": \"255.255.252.0\",\n \"cidr\": \"\",\n \"ipAddress\": \"10.0.0.101\",\n \"gateway\": \"10.0.0.250\"\n },\n \"hostname\": \"sfo01-m01-esx02\",\n \"association\": \"sfo-m01-dc01\"\n },\n {\n \"credentials\": {\n \"username\": \"root\",\n \"password\": \"xxxxxxx\"\n },\n \"ipAddressPrivate\": {\n \"subnet\": \"255.255.255.0\",\n \"cidr\": \"\",\n \"ipAddress\": \"10.0.0.102\",\n \"gateway\": \"10.0.0.250\"\n },\n \"hostname\": \"sfo01-m01-esx03\",\n \"association\": \"sfo-m01-dc01\"\n },\n {\n \"credentials\": {\n \"username\": \"root\",\n \"password\": \"xxxxxxx\"\n },\n \"ipAddressPrivate\": {\n \"subnet\": \"255.255.255.0\",\n \"cidr\": \"\",\n \"ipAddress\": \"10.0.0.103\",\n \"gateway\": \"10.0.0.250\"\n },\n \"hostname\": \"sfo01-m01-esx04\",\n \"association\": \"sfo-m01-dc01\"\n }\n ]\n}\n"
}
}
Poll the task until "executionStatus" is not "IN_PROGRESS" using the "id" from the previous response.
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
Validate the input specification.
Note : Make changes to the input specification and re-validate using a new API invocation.
- Download the validation report (optional).
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs/validations/5cbbfae5-cc6e-4f58-b617-7faa8226f69c/report' -i -u 'admin:VMwareInfra@1' -X GET \
-H 'Content-Type: application/octet-stream'
HTTP Request
GET /v1/sddcs/validations/5cbbfae5-cc6e-4f58-b617-7faa8226f69c/report HTTP/1.1
Content-Type: application/octet-stream
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Disposition: form-data; name="validation-report-26c27804-f837-4e4f-b50f-1625af792f0f"; filename="validation-report-26c27804-f837-4e4f-b50f-1625af792f0f"
Note : The report can be downloaded while the "executionStatus" is "IN_PROGRESS" or "COMPLETED" and the "resultStatus" is "SUCCEEDED" or "FAILED".
- Trigger the task using the valid input specification
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs' -i -u 'admin:VMwareInfra@1' -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}'
HTTP Request
POST /v1/sddcs HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 4616
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/sddcs/97f5c5fe-187f-46d3-b446-73e310187428
Content-Type: application/json
Content-Length: 2470
{
"id" : "97f5c5fe-187f-46d3-b446-73e310187428",
"name" : "Bringup",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-12-09T15:32:22.300Z",
"sddcSubTasks" : [ {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_VCDeployment_VcPlugin_DeployVcAction_4",
"processingStateDescription" : "Deploy vCenter Server",
"name" : "Deploy vCenter Server",
"description" : "Deploy vCenter Server",
"localizableNamePack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:21.942Z",
"updateTimestamp" : "2019-12-09T15:32:21.942Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "NSXConfiguration",
"processingStateDescription" : "Deploy and Configure NSX",
"name" : "Deploy NSX Manager",
"description" : "Deploy and Configure NSX for vSphere",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.012Z",
"updateTimestamp" : "2019-12-09T15:32:22.012Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_SDDCManagerConfiguration_SddcManagerContractPlugin_DeploySddcManagerAction_1",
"processingStateDescription" : "Deploy SDDC Manager",
"name" : "Deploy SDDC Manager",
"description" : "Deploy SDDC Manager",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.083Z",
"updateTimestamp" : "2019-12-09T15:32:22.083Z"
} ]
}
- Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip : Refer to: Get an SDDC.
If the "status" is "COMPLETED_WITH_SUCCESS", the task is completed successfully.
If the "status" is "COMPLETED_WITH_FAILURE", the task can be re-executed.
Tip : Refer to: Retry an SDDC creation.
1.3. Related APIs API
[_getbringuptasks] API [_getbringuptaskbyid] API [_resumebringup] API
2. Get the SDDCS
2.1. Steps API
- Invoke the API.
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs' -i -u 'admin:VMwareInfra@1' -X GET
HTTP Request
GET /v1/sddcs HTTP/1.1
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2607
{
"elements" : [ {
"id" : "97f5c5fe-187f-46d3-b446-73e310187428",
"name" : "Bringup",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-12-09T15:32:22.300Z",
"sddcSubTasks" : [ {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_VCDeployment_VcPlugin_DeployVcAction_4",
"processingStateDescription" : "Deploy vCenter Server",
"name" : "Deploy vCenter Server",
"description" : "Deploy vCenter Server",
"localizableNamePack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:21.942Z",
"updateTimestamp" : "2019-12-09T15:32:21.942Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "NSXConfiguration",
"processingStateDescription" : "Deploy and Configure NSX",
"name" : "Deploy NSX Manager",
"description" : "Deploy and Configure NSX for vSphere",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.012Z",
"updateTimestamp" : "2019-12-09T15:32:22.012Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_SDDCManagerConfiguration_SddcManagerContractPlugin_DeploySddcManagerAction_1",
"processingStateDescription" : "Deploy SDDC Manager",
"name" : "Deploy SDDC Manager",
"description" : "Deploy SDDC Manager",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.083Z",
"updateTimestamp" : "2019-12-09T15:32:22.083Z"
} ]
} ]
}
2.2. Related APIs API
[_getbringuptasks] API [_getbringuptaskbyid] API
3. Get an SDDC
3.1. Prerequisites API
The following data is required
- ID of the SDDC
3.2. Steps API
- Invoke the API.
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs/97f5c5fe-187f-46d3-b446-73e310187428' -i -u 'admin:VMwareInfra@1' -X GET \
-H 'Accept: application/json'
HTTP Request
GET /v1/sddcs/97f5c5fe-187f-46d3-b446-73e310187428 HTTP/1.1
Accept: application/json
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2470
{
"id" : "97f5c5fe-187f-46d3-b446-73e310187428",
"name" : "Bringup",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-12-09T15:32:22.300Z",
"sddcSubTasks" : [ {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_VCDeployment_VcPlugin_DeployVcAction_4",
"processingStateDescription" : "Deploy vCenter Server",
"name" : "Deploy vCenter Server",
"description" : "Deploy vCenter Server",
"localizableNamePack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:21.942Z",
"updateTimestamp" : "2019-12-09T15:32:21.942Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "NSXConfiguration",
"processingStateDescription" : "Deploy and Configure NSX",
"name" : "Deploy NSX Manager",
"description" : "Deploy and Configure NSX for vSphere",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.012Z",
"updateTimestamp" : "2019-12-09T15:32:22.012Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_SDDCManagerConfiguration_SddcManagerContractPlugin_DeploySddcManagerAction_1",
"processingStateDescription" : "Deploy SDDC Manager",
"name" : "Deploy SDDC Manager",
"description" : "Deploy SDDC Manager",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.083Z",
"updateTimestamp" : "2019-12-09T15:32:22.083Z"
} ]
}
3.3. Related APIs API
[_getbringuptaskbyid] API [_getbringuptasks] API
4. Retry an SDDC creation
Used to retry a failed SDDC creation task/workflow.
4.1. Prerequisites API
The following data is required
- ID of the failed task
The following data is optional
- SDDC deployment details
Tip : Refer to: SddcSpec.
Note : If the SDDC creation details are provided retry of the SDDC creation is performed with the updated information.
4.2. Steps API
- Invoke the API without providing SDDC creation details
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs/b285bfc6-8ef2-48d3-a8e2-4ccf921b1f1a' -i -u 'admin:VMwareInfra@1' -X PATCH \
-H 'Accept: application/json'
HTTP Request
PATCH /v1/sddcs/b285bfc6-8ef2-48d3-a8e2-4ccf921b1f1a HTTP/1.1
Accept: application/json
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2470
{
"id" : "97f5c5fe-187f-46d3-b446-73e310187428",
"name" : "Bringup",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-12-09T15:32:22.300Z",
"sddcSubTasks" : [ {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_VCDeployment_VcPlugin_DeployVcAction_4",
"processingStateDescription" : "Deploy vCenter Server",
"name" : "Deploy vCenter Server",
"description" : "Deploy vCenter Server",
"localizableNamePack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:21.942Z",
"updateTimestamp" : "2019-12-09T15:32:21.942Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "NSXConfiguration",
"processingStateDescription" : "Deploy and Configure NSX",
"name" : "Deploy NSX Manager",
"description" : "Deploy and Configure NSX for vSphere",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.012Z",
"updateTimestamp" : "2019-12-09T15:32:22.012Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_SDDCManagerConfiguration_SddcManagerContractPlugin_DeploySddcManagerAction_1",
"processingStateDescription" : "Deploy SDDC Manager",
"name" : "Deploy SDDC Manager",
"description" : "Deploy SDDC Manager",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.083Z",
"updateTimestamp" : "2019-12-09T15:32:22.083Z"
} ]
}
- Invoke the API by providing SDDC creation details
cURL Request
$ curl 'https://sfo-cb01.rainpole.local/v1/sddcs/b285bfc6-8ef2-48d3-a8e2-4ccf921b1f1a' -i -u 'admin:VMwareInfra@1' -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}'
HTTP Request
PATCH /v1/sddcs/b285bfc6-8ef2-48d3-a8e2-4ccf921b1f1a HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 4616
Host: sfo-cb01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
{
"skipEsxThumbprintValidation" : true,
"managementPoolName" : "",
"sddcManagerSpec" : {
"hostname" : "sddcbsddc-1",
"ipAddress" : "172.18.93.28",
"licenseKey" : "xxxx-xxxxx-xxxxx-xxxxx",
"localUserPassword" : "xxxxxxxxxxxx",
"rootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"secondUserCredentials" : {
"username" : "vcf",
"password" : "xxxxxxxx"
}
},
"sddcId" : "MGMT",
"esxLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"workflowType" : "VCF_VXRAIL",
"ceipEnabled" : false,
"fipsEnabled" : false,
"ntpServers" : [ "sddc-ntp-server.rainpole.local" ],
"vxManagerSpec" : {
"vxManagerHostName" : "sddcbvxrm-1",
"defaultRootUserCredentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"defaultAdminUserCredentials" : {
"username" : "mystic",
"password" : "xxxxxxxx"
}
},
"dnsSpec" : {
"subdomain" : "rainpole.local",
"domain" : "rainpole.local",
"nameserver" : "10.172.90.26"
},
"networkSpecs" : [ ],
"nsxtSpec" : {
"nsxtManagerSize" : "medium",
"nsxtManagers" : [ {
"hostname" : "sddcb-nsxt-1",
"ip" : "172.18.93.29"
}, {
"hostname" : "sddcb-nsxt-2",
"ip" : "172.18.93.41"
}, {
"hostname" : "sddcb-nsxt-3",
"ip" : "172.18.93.42"
} ],
"rootNsxtManagerPassword" : "xxxxxxxx",
"nsxtAdminPassword" : "xxxxxxxx",
"nsxtAuditPassword" : "xxxxxxxx",
"vip" : "172.18.93.36",
"vipFqdn" : "sddcb-vip-nsxt-mgmt",
"nsxtLicense" : "xxxx-xxxxx-xxxxx-xxxxx",
"transportVlanId" : 1447,
"ipAddressPoolSpec" : {
"name" : "sfo01-m01-cl01-tep01",
"description" : "ESXi Host Overlay TEP IP Pool",
"subnets" : [ {
"ipAddressPoolRanges" : [ {
"start" : "172.16.14.101",
"end" : "172.16.14.108"
} ],
"cidr" : "172.16.14.0/24",
"gateway" : "172.16.14.1"
} ]
}
},
"vsanSpec" : {
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"datastoreName" : "VxRail-Virtual-SAN-Datastore"
},
"dvsSpecs" : [ {
"dvsName" : "VMware HCIA Distributed Switch-2",
"vmnicsToUplinks" : [ {
"id" : "vmnic0",
"uplink" : "uplink1"
}, {
"id" : "vmnic1",
"uplink" : "uplink2"
} ],
"nsxTeamings" : [ {
"policy" : "LOADBALANCE_SRCID",
"activeUplinks" : [ "uplink1", "uplink2" ],
"standByUplinks" : [ ]
} ],
"networks" : [ ],
"nsxtSwitchConfig" : {
"transportZones" : [ {
"name" : "MGMT-tz-overlay01",
"transportType" : "OVERLAY"
}, {
"name" : "MGMT-tz-vlan01",
"transportType" : "VLAN"
} ]
}
} ],
"clusterSpec" : {
"clusterName" : "VxRail-Virtual-SAN-Cluster",
"vcenterName" : "vcenter-1",
"clusterEvcMode" : "",
"vmFolders" : {
"MANAGEMENT" : "MGMT-fd-mgmt",
"NETWORKING" : "MGMT-fd-nsx",
"EDGENODES" : "MGMT-fd-edge"
}
},
"pscSpecs" : [ {
"adminUserSsoPassword" : "xxxxxxxx",
"pscSsoSpec" : {
"ssoDomain" : "vsphere.local"
}
} ],
"vcenterSpec" : {
"vcenterIp" : "172.18.93.26",
"vcenterHostname" : "sddcbvc-1",
"licenseFile" : "xxxx-xxxxx-xxxxx-xxxxx",
"rootVcenterPassword" : "xxxxxxxx"
},
"hostSpecs" : [ {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.10",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-001",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.11",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-002",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.12",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-003",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
}, {
"association" : "VxRail-Datacenter",
"ipAddressPrivate" : {
"ipAddress" : "172.18.93.13",
"cidr" : "172.18.93.0/24",
"gateway" : "172.18.93.1"
},
"hostname" : "sddcb-004",
"credentials" : {
"username" : "root",
"password" : "xxxxxxxx"
},
"vSwitch" : ""
} ],
"excludedComponents" : [ ]
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2470
{
"id" : "97f5c5fe-187f-46d3-b446-73e310187428",
"name" : "Bringup",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-12-09T15:32:22.300Z",
"sddcSubTasks" : [ {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_VCDeployment_VcPlugin_DeployVcAction_4",
"processingStateDescription" : "Deploy vCenter Server",
"name" : "Deploy vCenter Server",
"description" : "Deploy vCenter Server",
"localizableNamePack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.vcf.common.fsm.plugins.action.plugins.VcPlugin",
"messageKey" : "DeployVcAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:21.942Z",
"updateTimestamp" : "2019-12-09T15:32:21.942Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "NSXConfiguration",
"processingStateDescription" : "Deploy and Configure NSX",
"name" : "Deploy NSX Manager",
"description" : "Deploy and Configure NSX for vSphere",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.bringup.nsx.action63.NsxServicePluginActionPlugin63",
"messageKey" : "DeployNsxManager.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.012Z",
"updateTimestamp" : "2019-12-09T15:32:22.012Z"
}, {
"sddcId" : "97f5c5fe-187f-46d3-b446-73e310187428",
"processingStateName" : "_SDDCManagerConfiguration_SddcManagerContractPlugin_DeploySddcManagerAction_1",
"processingStateDescription" : "Deploy SDDC Manager",
"name" : "Deploy SDDC Manager",
"description" : "Deploy SDDC Manager",
"localizableNamePack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.name"
},
"localizableDescriptionPack" : {
"component" : "com.vmware.evo.sddc.sddcmanager.SddcManagerContractPlugin",
"messageKey" : "DeploySddcManagerAction.desc"
},
"status" : "INITIALIZED",
"creationTimestamp" : "2019-12-09T15:32:22.083Z",
"updateTimestamp" : "2019-12-09T15:32:22.083Z"
} ]
}
4.3. Related APIs API
[_startbringup] API [_getbringuptasks] API [_getbringuptaskbyid] API [_resumebringup] API
Last updated 2024-08-27 16:13:54 -0700