Skip to main content

Reference

All fields, defaults, limits, and error codes for Kubernetes clusters.

Reference

Create Cluster input fields

FieldTypeRequiredNotes
namestringYes1-128 chars, alphanumeric + hyphens. Used in AWS resource naming.
descriptionstringYesHuman-readable cluster description.
cloud_account_idintYesMust reference a supported cloud account with valid credentials.
cluster_typeenumYesMust be k8s.
secretstringNo24-32 chars. Keycloak client secret. Auto-generated if omitted.
settingsJSONYesProvider-specific configuration (see below).

Settings (AWS K8s)

FieldTypeRequiredNotes
region_namestringNoAWS region. Default: us-east-1.
key_pairstringYesEC2 key pair name for SSH access (required for control plane).
control_plane_instance_typestringNoEC2 instance type for control plane. Default: t3.xlarge.
vpc_idstringNoExisting VPC ID. A new VPC is created if omitted.
subnet_idstringNoExisting subnet ID. Resolved automatically if omitted.
autoscaler_node_groups[NodeGroup]NoNode group definitions for the cluster autoscaler.
integrations[string]NoList of integrations to enable (e.g., ["jupyterhub"]).

Settings (Cudo K8s)

FieldTypeRequiredNotes
autoscaler_node_groups[NodeGroup]NoNode group definitions. Uses id field instead of name.
control_plane_sizestringNoShorthand: sm, md, or lg. Resolves to a control plane profile. Default: md.
ssh_public_keystringNoSSH public key for debugging access.
dev_modeboolNoEnable development mode builds.
no_vaultboolNoDisable LUKS encryption and Vault KMS.

Node group fields (AWS)

FieldTypeRequiredNotes
namestringYesNode group identifier (e.g., control-plane, gpu-workers).
rolestringYescontrol or worker.
min_sizeintYesAutoscaler minimum node count.
max_sizeintYesAutoscaler maximum node count.
instance_types[string]YesList of EC2 instance types (e.g., ["t3.xlarge"]). Multiple types enable Fleet diversification.
labelsJSONNoKubernetes node labels.
taints[Taint]NoKubernetes node taints.
allocation_strategystringNoEC2 Fleet strategy: lowest-price, diversified, capacity-optimized. Default: lowest-price.

Node group fields (Cudo)

FieldTypeRequiredNotes
idstringYesNode group identifier. Cudo uses id instead of name.
rolestringYescontrol or worker.
min_sizeintYesAutoscaler minimum.
max_sizeintYesAutoscaler maximum.
vcpusintYesNumber of vCPUs per node (instead of instance type).
memory_gibintYesMemory in GiB per node.
boot_disk_size_gibintYesBoot disk size in GiB.
data_center_idstringYesCudo data center (e.g., us-dallas-1).
machine_typestringYesHardware family (e.g., intel-broadwell, intel-broadwell-v100).
gpusintNoNumber of GPUs per node.
gpu_modelstringNoGPU model (e.g., V100, A100).
labelsJSONNoKubernetes node labels.

Cudo control plane profiles

ProfilevCPUMemory (GiB)Boot Disk (GiB)
vantage-k8s-control-sm4850
vantage-k8s-control-md (default)816100
vantage-k8s-control-lg1632200

Set via instance_type or control_plane_size in settings.

Limits

LimitValueNotes
Cluster name length1-128 charsAlphanumeric + hyphens.
Cluster name charactersAlphanumeric + hyphensMust start and end with alphanumeric.
Node groups per cluster20Contact support to increase.
Max nodes per node group100Contact support to increase.
Cluster limit per tierVaries by subscriptionCheck your subscription settings.
Slurm-on-K8s cluster nameLowercase letters, numbers, dashesMust start with a letter, no trailing dash.

Error codes

ConditionError typePhase
Name already in useClusterNameInUseValidation
Name format invalidInvalidInputValidation
key_pair missing from settingsInvalidInputValidation
Instance type not available in regionInvalidInputValidation
Cloud account missing role_arnClusterCouldNotBeDeployedBackground
VPC / IAM creation failsClusterCouldNotBeDeployedBackground
Keycloak client creation failsUnexpectedBehaviorSynchronous

AWS resources created

ResourceNaming convention
VPCAuto-created 10.0.0.0/16
SubnetsPublic + private
IAM Rolevantage-{client_id}-node-role
Instance Profilevantage-{client_id}-instance-profile
EC2 Instancevantage-{client_id}-control-plane
Launch Templatesvantage-{client_id}-{node_group_name} (created by autoscaler)
EC2 Fleet InstancesTagged vantage-cluster={client_id}

Database operations

TableOperationWhen
cloud_accountSELECTProvider + credential resolution
clusterSELECTName uniqueness check
clusterINSERTCluster creation
clusterUPDATEStatus → ready (via markClusterReady)

External service calls per provider

AWS

ServiceCallPhase
KeycloakCreate OAuth2 clientSynchronous
AWS STSAssumeRoleBackground
AWS EC2VPC, subnet, SG creationBackground
AWS IAMRole, instance profile, policiesBackground
AWS EC2RunInstances (control plane)Background
vdeployer-webPOST /deploymarkClusterReady

Cudo Compute

ServiceCallPhase
KeycloakCreate OAuth2 clientSynchronous
Cudo ComputeList machine typesBackground
Cudo ComputeCreate diskBackground
Cudo ComputeCreate VMBackground
Cudo ComputePoll disk/VM statusBackground
vdeployer-webPOST /deploymarkClusterReady
Ask AI
Ask a question about Vantage Compute...