cluster_spec
cluster_spec
contains details about cluster configuration (cni, network, cloudproviders, bom etc) and control plane
JSON Example
{
"clusterConfigSpec": {
"ipFamilies": "IPv4",
"proxy": {
"caCert": "caCert",
"httpProxy": "httpProxy",
"httpsProxy": "httpsProxy",
"noProxy": "noProxy"
},
"airgapSpec": {
"caCert": "caCert",
"fqdn": "fqdn",
"type": "extension",
"extensionId": "extensionId"
},
"tcaBomReleaseRef": {
"name": "name"
},
"cniType": "cniType",
"controlPlaneEndpoint": {
"host": "host"
},
"proxySpec": {
"caCert": "caCert",
"httpProxy": "httpProxy",
"httpsProxy": "httpsProxy",
"noProxy": "noProxy",
"type": "extension",
"extensionId": "extensionId"
},
"cloudProviders": {
"primeRef": {
"vimId": "vimId",
"datacenter": "datacenter"
},
"subRefs": [
{
"vimId": "vimId",
"datacenter": "datacenter"
},
{
"vimId": "vimId",
"datacenter": "datacenter"
}
]
},
"clusterNetwork": {
"pods": {
"cidrBlocks": [
"cidrBlocks",
"cidrBlocks"
]
},
"apiServerPort": 6,
"services": {
"cidrBlocks": [
"cidrBlocks",
"cidrBlocks"
]
},
"serviceDomain": "serviceDomain"
},
"publicKeyRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
},
"airgap": {
"caCert": "caCert",
"fqdn": "fqdn"
}
},
"controlPlaneSpec": {
"template": "template",
"diskGiB": 5,
"numCPUs": 7,
"datastore": "datastore",
"replicas": 3,
"kubeadmConfigTemplate": {
"clusterConfiguration": {
"controllerManager": {
"extraArgs": {
"key": "extraArgs"
},
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"kind": "kind",
"dns": {
"imageRepository": "imageRepository",
"imageTag": "imageTag"
},
"certificatesDir": "certificatesDir",
"featureGates": {
"key": true
},
"networking": {
"podSubnet": "podSubnet",
"serviceSubnet": "serviceSubnet",
"dnsDomain": "dnsDomain"
},
"scheduler": {
"extraArgs": {
"key": "extraArgs"
},
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"apiVersion": "apiVersion",
"controlPlaneEndpoint": "controlPlaneEndpoint",
"clusterName": "clusterName",
"apiServer": {
"extraArgs": {
"key": "extraArgs"
},
"timeoutForControlPlane": "timeoutForControlPlane",
"certSANs": [
"certSANs",
"certSANs"
],
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"imageRepository": "imageRepository",
"etcd": {
"external": {
"caFile": "caFile",
"endpoints": [
"endpoints",
"endpoints"
],
"keyFile": "keyFile",
"certFile": "certFile"
},
"local": {
"peerCertSANs": [
"peerCertSANs",
"peerCertSANs"
],
"extraArgs": {
"key": "extraArgs"
},
"dataDir": "dataDir",
"serverCertSANs": [
"serverCertSANs",
"serverCertSANs"
],
"imageRepository": "imageRepository",
"imageTag": "imageTag"
}
},
"kubernetesVersion": "kubernetesVersion"
}
},
"cloudMachineTemplate": {
"type": "type",
"vSphereMachine": {
"template": "template",
"cloneMode": "fullClone",
"numCoresPerSocket": 1,
"folder": "folder",
"datastore": "datastore",
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"resourcePool": "resourcePool"
}
},
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"memoryMiB": 5,
"labels": {
"key": "labels"
},
"network": {
"devices": [
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 2
},
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 2
}
]
},
"cloneMode": "fullClone",
"numCoresPerSocket": 9,
"folder": "folder",
"tcaBomReleaseRef": {
"name": "name"
},
"controlPlaneName": "controlPlaneName",
"clusterName": "clusterName",
"cloudProvider": {
"vimId": "vimId"
},
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
},
"resourcePool": "resourcePool"
},
"nfOrchestrationTcaCPId": "nfOrchestrationTcaCPId"
}
string
nfOrchestrationTcaCPId
Optional
TCA-CP where the appliance will be registered.