Resources Calculation

Resources Calculation
Perform calculation of the infrastructure resources for a VCF Installer specification

Triggers VCF Management Components resource calculation

Request
URI
POST
https://{api_host}/v1/vcf-management-components/resources-calculation
COPY
Request Body
VcfManagementComponentsSpec of type(s) application/json
Required
{
    "vcfOperationsSpec": {
        "nodes": [
            {
                "hostname": "vcfoperations-master.rainpole.io",
                "rootUserPassword": "string",
                "type": "master",
                "sslThumbprint": "3D:D0:EE:B5:A0:CC:45:08:5C:4F:84:51:CD:00:B6:41:BB:4A:A2:9A:77:1C:A6:4C:6D:84:5A:D0:4F:68:7A:B8"
            }
        ],
        "adminUserPassword": "string",
        "applianceSize": "medium",
        "loadBalancerFqdn": "string",
        "useExistingDeployment": true,
        "version": "9.0.0.0.24597083"
    },
    "vcfOperationsCollectorSpec": {
        "hostname": "vcf-operations-collector.rainpole.io",
        "rootUserPassword": "string",
        "applianceSize": "small",
        "version": "9.0.0.0.24597083",
        "useExistingDeployment": true,
        "sslThumbprint": "3D:D0:EE:B5:A0:CC:45:08:5C:4F:84:51:CD:00:B6:41:BB:4A:A2:9A:77:1C:A6:4C:6D:84:5A:D0:4F:68:7A:B8"
    },
    "vcfAutomationSpec": {
        "hostname": "vcfautomation.rainpole.io",
        "platformFqdn": "vsp-platform.rainpole.io",
        "adminUserPassword": "string",
        "ipPool": [
            "['10.0.0.80', '10.0.0.81', '10.0.0.82', '10.0.0.83', '10.0.0.84', '10.0.0.85']"
        ],
        "internalClusterCidr": "string",
        "nodePrefix": "node-123",
        "size": "small",
        "version": "9.0.0.0.24597083",
        "useExistingDeployment": true,
        "sslThumbprint": "3D:D0:EE:B5:A0:CC:45:08:5C:4F:84:51:CD:00:B6:41:BB:4A:A2:9A:77:1C:A6:4C:6D:84:5A:D0:4F:68:7A:B8"
    },
    "licenseServerSpec": {
        "hostname": "license-server.rainpole.io",
        "version": "9.0.0.0.24597083",
        "useExistingDeployment": true,
        "sslThumbprint": "3D:D0:EE:B5:A0:CC:45:08:5C:4F:84:51:CD:00:B6:41:BB:4A:A2:9A:77:1C:A6:4C:6D:84:5A:D0:4F:68:7A:B8"
    },
    "vcfMangementComponentsInfrastructureSpec": {
        "localRegionNetwork": {
            "networkName": "string",
            "subnetMask": "255.255.255.0",
            "gateway": "10.0.0.250",
            "ipv6Gateway": "string",
            "ipv6Prefix": 0
        },
        "xRegionNetwork": {
            "networkName": "string",
            "subnetMask": "255.255.255.0",
            "gateway": "10.0.0.250",
            "ipv6Gateway": "string",
            "ipv6Prefix": 0
        }
    },
    "vcfManagementComponentsInfrastructureSpec": {
        "localRegionNetwork": {
            "networkName": "string",
            "subnetMask": "255.255.255.0",
            "gateway": "10.0.0.250",
            "ipv6Gateway": "string",
            "ipv6Prefix": 0
        },
        "xRegionNetwork": {
            "networkName": "string",
            "subnetMask": "255.255.255.0",
            "gateway": "10.0.0.250",
            "ipv6Gateway": "string",
            "ipv6Prefix": 0
        }
    },
    "vcfInstanceName": "string",
    "existingDataStore": "string",
    "workflowType": "One among: VCF, VCF_EXTEND",
    "vspClusterSpec": {
        "platformFqdn": "vsp-cluster.rainpole.io",
        "systemUserPassword": "Broadcom1@!#$%?^*",
        "ipv4Pool": {
            "cidr": "10.0.0.0/24",
            "ipRange": {
                "startIpAddress": "192.168.0.123",
                "endIpAddress": "192.168.0.128"
            },
            "addresses": [
                "[\"10.0.0.80\", \"10.0.0.81\", \"10.0.0.82\", ...]"
            ],
            "excludedAddresses": [
                "[\"10.0.0.81\", ...]"
            ]
        },
        "ipv6Pool": {
            "cidr": "2001:db8::00/112",
            "ipRange": {
                "startIpAddress": "::",
                "endIpAddress": "2001:0db8:0000:0000:0000:ff00:0042:8329"
            },
            "addresses": [
                "[\"2001:db8::80\", \"2001:db8::81\", \"2001:db8::82\", ...]"
            ],
            "excludedAddresses": [
                "[\"2001:db8::81\", ...]"
            ]
        },
        "size": "Small",
        "internalClusterCidrIpv4": "198.18.0.0/15",
        "internalClusterCidrIpv6": "fd00::/111",
        "instanceFqdn": "instance.rainpole.io",
        "fleetFqdn": "instance.rainpole.io",
        "version": "9.0.0.0.24597083",
        "useExistingDeployment": true,
        "sslThumbprint": "3D:D0:EE:B5:A0:CC:45:08:5C:4F:84:51:CD:00:B6:41:BB:4A:A2:9A:77:1C:A6:4C:6D:84:5A:D0:4F:68:7A:B8"
    },
    "fleetLcmSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "sddcLcmSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "fleetDepotSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "telemetryAcceptorSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "vidbSpec": {
        "hostname": "vidb.vcf.local",
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "saltSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "saltRaasSpec": {
        "version": "9.0.0.0.24597083",
        "size": "small"
    },
    "skipGatewayPingValidation": false
}
object
vcfOperationsSpec
Optional

Specification for VCF Operations

object
vcfOperationsCollectorSpec
Optional

Specification for VCF Operations collector

object
vcfAutomationSpec
Optional

Specification for VCF Automation

object
licenseServerSpec
Optional

Specification for License Server

object
vcfMangementComponentsInfrastructureSpec
Optional

Specification for infrastructure to be used for VCF Management Components deployment

object
vcfManagementComponentsInfrastructureSpec
Optional

Specification for infrastructure to be used for VCF Management Components deployment

string
vcfInstanceName
Optional

Specification for VCF Instance Name

string
existingDataStore
Optional

Existing data store for VCF Operations Fleet management deployment

string As (VCF|VCF_EXTEND|VCF_COMPLETE)
workflowType
Optional

Type of workflow to initiate creation and/or validation

object
vspClusterSpec
Optional

Specification VSP cluster deployment

object
fleetLcmSpec
Optional

Specification for deploy/configure of Fleet LCM service

object
sddcLcmSpec
Optional

Specification for deploy/configure of a SDDC LCM service

object
fleetDepotSpec
Optional

Specification for deploy/configure of Software Depot

object
telemetryAcceptorSpec
Optional

Specification for deploy/configure of Telemetry acceptor service

object
vidbSpec
Optional

Specification for VIDB

object
saltSpec
Optional

Specification for Salt services

object
saltRaasSpec
Optional

Specification for Salt services

boolean
skipGatewayPingValidation
Optional

Skip networks gateway connectivity validation

Responses
200

OK

Returns CapacityInfo of type(s) application/json
{
    "numberOfCores": 0,
    "memory": {
        "value": "number",
        "unit": "string"
    },
    "storage": {
        "value": "number",
        "unit": "string"
    },
    "numberOfEsxiHosts": 0,
    "componentsVmRequirements": [
        {
            "cpuCores": 0,
            "memoryGb": "number",
            "storageGb": 0,
            "ipCount": 0,
            "ipCountRecommended": 0,
            "ipCountLimit": 0,
            "workersCount": 0,
            "component": "string",
            "componentType": "string"
        }
    ],
    "context": {
        "context": "string"
    }
}
integer As int32 As int32
numberOfCores
Optional

Number of cores

object
memory
Optional

Represents a single metric representing digital data

object
storage
Optional

Represents a single metric representing digital data

integer As int32 As int32
numberOfEsxiHosts
Optional

Number of Esxi Hosts

array of object
componentsVmRequirements
Optional

Capacity requirements for VCF components deployment

object
context
Optional

context for the capacity calculation


400

Bad user input

Returns Error of type(s) application/json
{
    "errorCode": "string",
    "errorType": "string",
    "arguments": [
        "string"
    ],
    "context": {
        "context": "string"
    },
    "notifications": [
        {
            "severity": "string",
            "message": "string",
            "remediations": [
                {
                    "message": "string",
                    "link": "string"
                }
            ],
            "impactMessage": "string"
        }
    ],
    "message": "string",
    "remediationMessage": "string",
    "causes": [
        {
            "type": "string",
            "message": "string"
        }
    ],
    "nestedErrors": [
        {
            "errorCode": "string",
            "errorType": "string",
            "arguments": [
                "string"
            ],
            "context": {
                "context": "string"
            },
            "notifications": [
                {
                    "severity": "string",
                    "message": "string",
                    "remediations": [
                        {
                            "message": "string",
                            "link": "string"
                        }
                    ],
                    "impactMessage": "string"
                }
            ],
            "message": "string",
            "remediationMessage": "string",
            "causes": [
                {
                    "type": "string",
                    "message": "string"
                }
            ],
            "nestedErrors": [
                "Error Object"
            ],
            "referenceToken": "string",
            "label": "string",
            "remediationUrl": "string"
        }
    ],
    "referenceToken": "string",
    "label": "string",
    "remediationUrl": "string"
}
string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

array of string
arguments
Optional

The arguments used to localize the message, Can be used by scripts to automate the error processing.

object
context
Optional

The error context (e.g. the component where it occurred).

array of object
notifications
Optional

Detailed results of the precheck validation.

string
message
Optional

The localized error message

string
remediationMessage
Optional

The localized remediation error message

array of object
causes
Optional

The underlying cause exceptions.

array of object
nestedErrors
Optional

The nested errors when the error is a composite one

string
referenceToken
Optional

A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues.

string
label
Optional

The localized label message

string
remediationUrl
Optional

The URL string for remediation documentation link


403

Forbidden

Returns Error of type(s) application/json
"Error Object"
string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

array of string
arguments
Optional

The arguments used to localize the message, Can be used by scripts to automate the error processing.

object
context
Optional

The error context (e.g. the component where it occurred).

array of object
notifications
Optional

Detailed results of the precheck validation.

string
message
Optional

The localized error message

string
remediationMessage
Optional

The localized remediation error message

array of object
causes
Optional

The underlying cause exceptions.

array of Error
nestedErrors
Optional

The nested errors when the error is a composite one

string
referenceToken
Optional

A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues.

string
label
Optional

The localized label message

string
remediationUrl
Optional

The URL string for remediation documentation link


500

Internal Server Error

Returns Error of type(s) application/json
"Error Object"
string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

array of string
arguments
Optional

The arguments used to localize the message, Can be used by scripts to automate the error processing.

object
context
Optional

The error context (e.g. the component where it occurred).

array of object
notifications
Optional

Detailed results of the precheck validation.

string
message
Optional

The localized error message

string
remediationMessage
Optional

The localized remediation error message

array of object
causes
Optional

The underlying cause exceptions.

array of Error
nestedErrors
Optional

The nested errors when the error is a composite one

string
referenceToken
Optional

A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues.

string
label
Optional

The localized label message

string
remediationUrl
Optional

The URL string for remediation documentation link


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{}' https://{api_host}/v1/vcf-management-components/resources-calculation