Skip to main content

Aruba Components

Reference for every Aruba Cloud offer in the Fractal Cloud catalogue. Parameters and their required flags are sourced from the agent param contract (FRA-2955); each offer includes a fully-parameterized JSON example.

BigData

BigData.PaaS.SparkPlatform

A Fractal-managed Spark platform that satisfies the abstract distributed-data-processing blueprint by installing the kubeflow spark-operator Helm release onto the first Aruba KaaS cluster discovered in the LiveSystem. Aruba has no native managed Spark, so this offer runs the operator on Kubernetes.

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace where the Spark Operator is installedspark-operatorNo
webhookEnabledEnable the Spark Operator's mutating/validating webhooktrueNo

Example (fully parameterized):

{
"type": "BigData.PaaS.SparkPlatform",
"parameters": {
"namespace": "spark-operator",
"webhookEnabled": true
}
}

BigData.PaaS.SparkPlatformCluster

Registers a Spark cluster spec (driver/executor sizing and base image) that downstream Spark jobs consume when they materialize a SparkApplication CR. The cluster itself does not create a long-running Kubernetes resource — the spec is purely metadata for jobs.

ParameterDescriptionExample / possible valuesRequired
driverCoresCPU cores for the Spark driver pod1No
driverMemoryMemory for the Spark driver pod1gNo
executorCoresCPU cores per executor pod1No
executorMemoryMemory per executor pod1gNo
executorInstancesNumber of executor pods2No
imageContainer image URI for Spark podsapache/spark:3.5.0No
namespaceKubernetes namespace where Spark jobs runsparkNo

Example (fully parameterized):

{
"type": "BigData.PaaS.SparkPlatformCluster",
"parameters": {
"driverCores": "1",
"driverMemory": "1g",
"executorCores": "1",
"executorMemory": "1g",
"executorInstances": 2,
"image": "apache/spark:3.5.0",
"namespace": "spark"
}
}

BigData.PaaS.SparkPlatformJob

Applies a ScheduledSparkApplication (when a cron schedule is set) or a one-shot SparkApplication CR to the Spark platform. Inherits driver/executor sizing from the linked Spark cluster spec; supports a JAR/Scala path and a Python wheel path (the agent wraps the wheel into an OCI image via kaniko when artifactUri is supplied).

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace for the Spark applicationsparkNo
scheduleCron expression for periodic execution; blank runs the job once0 0 * * *No
jarUriURI to the application JAR (Scala/Java path)local:///opt/spark/examples/jars/app.jarNo
mainClassFully qualified main class for the JAR pathorg.apache.spark.examples.SparkPiNo
imageContainer image URI for the Spark applicationapache/spark:3.5.0No

Example (fully parameterized):

{
"type": "BigData.PaaS.SparkPlatformJob",
"parameters": {
"namespace": "spark",
"schedule": "",
"jarUri": "",
"mainClass": "",
"image": "apache/spark:3.5.0"
}
}

BigData.PaaS.SparkPlatformMlExperiment

A Fractal-managed MLflow tracking service that satisfies the abstract ML-experiment blueprint by installing the mlflow Helm release onto the KaaS cluster. When a MinIO datalake is in the dependency chain, the agent automatically wires its S3 endpoint and admin credentials into MLflow for artifact storage.

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace where MLflow is installedmlflowNo
trackingUriMLflow tracking URI; defaults to the in-cluster service URLhttp://mlflow.mlflow.svc.cluster.local:5000No
artifactRootDefault artifact root for the MLflow servers3://datalake/mlflowNo

Example (fully parameterized):

{
"type": "BigData.PaaS.SparkPlatformMlExperiment",
"parameters": {
"namespace": "mlflow",
"trackingUri": "",
"artifactRoot": ""
}
}

Messaging

Messaging.PaaS.ManagedKafka

A Fractal-managed Kafka broker that satisfies the abstract messaging-broker blueprint. Aruba has no native managed Kafka, so the agent installs the strimzi-kafka-operator (one per cluster) and applies a Kafka + KafkaNodePool CR pair in KRaft mode (single broker) onto the KaaS cluster.

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace for the Kafka clusterkafkaNo
clusterNameName of the Strimzi Kafka cluster; defaults to a sanitized component IDevents-brokerNo

Example (fully parameterized):

{
"type": "Messaging.PaaS.ManagedKafka",
"parameters": {
"namespace": "kafka",
"clusterName": ""
}
}

Messaging.PaaS.ManagedKafkaTopic

A Strimzi KafkaTopic CR scoped to the linked managed Kafka cluster. The topic name is derived from the component ID; retention defaults to 7 days.

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace; defaults to the linked cluster's namespacekafkaNo
partitionsNumber of topic partitions1No
replicasTopic replication factor1No

Example (fully parameterized):

{
"type": "Messaging.PaaS.ManagedKafkaTopic",
"parameters": {
"namespace": "kafka",
"partitions": 1,
"replicas": 1
}
}

NetworkAndCompute

NetworkAndCompute.IaaS.ArubaCloudServer

An Aruba Cloud Server (virtual machine) provisioned into a subnet of a managed VPC. Boots from the configured boot volume and flavor, optionally injects user data, and attaches a linked SSH key pair when present.

ParameterDescriptionExample / possible valuesRequired
flavorNameAruba Cloud Server flavor (size)CSO2A4No
bootVolumeURI of the boot volume image for the server/.../images/ubuntu-22.04No
userDataCloud-init user data script#!/bin/bash\necho helloNo

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaCloudServer",
"parameters": {
"flavorName": "CSO2A4",
"bootVolume": "",
"userData": ""
}
}

NetworkAndCompute.IaaS.ArubaElasticIp

An Aruba Elastic IP — a static public IP address that can be associated with a Cloud Server. Provisioned in the configured region.

No configurable parameters.

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaElasticIp",
"parameters": {}
}

NetworkAndCompute.IaaS.ArubaSecurityGroup

An Aruba security group within a managed VPC. Framework-managed (tagged fractal-managed=true); traffic rules are derived from component links rather than configured directly.

No configurable parameters.

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaSecurityGroup",
"parameters": {}
}

NetworkAndCompute.IaaS.ArubaSshKeyPair

An Aruba SSH key pair used for Cloud Server access. Idempotent and reusable across servers. If a public key is supplied it is registered as-is; otherwise Aruba generates the key material.

ParameterDescriptionExample / possible valuesRequired
keyNameName of the SSH key pairprod-keypairNo
publicKeyOpenSSH-format public key to registerssh-ed25519 AAAA...No

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaSshKeyPair",
"parameters": {
"keyName": "",
"publicKey": ""
}
}

NetworkAndCompute.IaaS.ArubaSubnet

An Aruba subnet within a managed VPC for network segmentation. Provisioned one per availability zone. The CIDR block is typically allocated by the Fractal IPAM allocator.

ParameterDescriptionExample / possible valuesRequired
cidrBlockCIDR block for the subnet10.0.1.0/24No

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaSubnet",
"parameters": {
"cidrBlock": "10.0.1.0/24"
}
}

NetworkAndCompute.IaaS.ArubaVpc

An Aruba Virtual Private Cloud providing network isolation. The foundation for subnets, security groups, Cloud Servers, and peerings. The CIDR block is typically allocated by the Fractal IPAM allocator.

ParameterDescriptionExample / possible valuesRequired
nameVPC nameprod-vpcNo
locationAruba region the VPC is created inITBG-BergamoNo

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaVpc",
"parameters": {
"name": "prod-vpc",
"location": "ITBG-Bergamo"
}
}

NetworkAndCompute.IaaS.ArubaVpcPeering

A non-transitive VPC peering connection from a managed VPC to a remote VPC. Used to build the hub-and-spoke topology (spokes peer directly to the hub).

ParameterDescriptionExample / possible valuesRequired
peerVpcIdID of the remote VPC to peer withvpc-0a1b2c3dNo

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaVpcPeering",
"parameters": {
"peerVpcId": "vpc-0a1b2c3d"
}
}

NetworkAndCompute.IaaS.ArubaVpnTunnel

A site-to-site IPsec VPN tunnel anchored on a managed VPC, used to connect the Aruba network to an external peer endpoint.

ParameterDescriptionExample / possible valuesRequired
peerPublicIpPublic IP address of the remote VPN peer203.0.113.10No
presharedKeyPre-shared key for the IPsec tunnelsuper-secret-pskNo
subnetCidrRemote subnet CIDR reachable through the tunnel192.168.0.0/16No

Example (fully parameterized):

{
"type": "NetworkAndCompute.IaaS.ArubaVpnTunnel",
"parameters": {
"peerPublicIp": "203.0.113.10",
"presharedKey": "super-secret-psk",
"subnetCidr": "192.168.0.0/16"
}
}

NetworkAndCompute.PaaS.ArubaContainerRegistry

An Aruba managed container registry. Deferred to v2 — the SDK model currently exposes no endpoint/hostname field, so this offer is not yet wired into the image-prefixing flow.

ParameterDescriptionExample / possible valuesRequired
sizeRegistry plan sizeSmallNo

Example (fully parameterized):

{
"type": "NetworkAndCompute.PaaS.ArubaContainerRegistry",
"parameters": {
"size": "Small"
}
}

NetworkAndCompute.PaaS.Kubernetes

Aruba Managed Kubernetes (KaaS) — an HA control plane spread across three Bergamo availability zones. This is the substrate the Fractal-managed PaaS-on-KaaS offers (Spark, Kafka, MinIO datalake, MLflow) deploy onto. When a VPC/subnet is in the dependency chain the cluster is placed inside them; otherwise a preset cluster is created. The agent downloads the kubeconfig and stores it in Vault.

ParameterDescriptionExample / possible valuesRequired
kubernetesVersionKubernetes version for the cluster1.29No
haProvision a highly-available control planetrueNo
nodePoolFlavorAruba flavor for the default node pool; defaults to K2A4K2A4No
nodePoolCountNumber of nodes in the default node pool3No

Example (fully parameterized):

{
"type": "NetworkAndCompute.PaaS.Kubernetes",
"parameters": {
"kubernetesVersion": "1.29",
"ha": true,
"nodePoolFlavor": "K2A4",
"nodePoolCount": 3
}
}

Storage

Storage.IaaS.ArubaBlockStorage

An Aruba block storage volume that can be attached to a Cloud Server. Deferred to v2. Sized in gigabytes with a selectable performance tier.

ParameterDescriptionExample / possible valuesRequired
sizeGbVolume size in gigabytes100No
typeBlock storage performance tierStandardNo

Example (fully parameterized):

{
"type": "Storage.IaaS.ArubaBlockStorage",
"parameters": {
"sizeGb": 100,
"type": "Standard"
}
}

Storage.PaaS.ArubaMsSqlDbms

An Aruba managed Microsoft SQL Server DBaaS instance (engine mssql-2022-web). Provisioned with 20 GB storage on the configured flavor; attaches to a VPC/subnet/security group when those peers are present.

ParameterDescriptionExample / possible valuesRequired
flavorNameAruba DBaaS flavor (size); defaults to DBO1A2DBO1A2No

Example (fully parameterized):

{
"type": "Storage.PaaS.ArubaMsSqlDbms",
"parameters": {
"flavorName": "DBO1A2"
}
}

Storage.PaaS.ArubaMySqlDbms

An Aruba managed MySQL DBaaS instance (engine mysql-8.0). Provisioned with 20 GB storage on the configured flavor; attaches to a VPC/subnet/security group when those peers are present.

ParameterDescriptionExample / possible valuesRequired
flavorNameAruba DBaaS flavor (size); defaults to DBO1A2DBO1A2No

Example (fully parameterized):

{
"type": "Storage.PaaS.ArubaMySqlDbms",
"parameters": {
"flavorName": "DBO1A2"
}
}

Storage.PaaS.ManagedDatalake

A Fractal-managed MinIO datalake that satisfies the abstract Datalake / FilesAndBlobs blueprints. The agent installs the minio-operator (one per cluster) plus a per-component MinIO Tenant exposing an S3-compatible endpoint on the KaaS cluster. The admin secret is auto-generated and persisted across reconcile cycles.

ParameterDescriptionExample / possible valuesRequired
namespaceKubernetes namespace for the MinIO tenantminioNo
tenantNameName of the MinIO tenant; defaults to a sanitized component IDdatalake-tenantNo
bucketNameInitial bucket to create; defaults to datalakedatalakeNo
serversNumber of MinIO servers in the tenant4No
volumesPerServerNumber of storage volumes per server4No
volumeSizeStorage volume size per server (Kubernetes resource quantity)10GiNo
storageClassKubernetes storage class for persistent volumesempty string (cluster default)No
requestAutoCertAuto-generate self-signed TLS certificates for the tenantfalseNo

Example (fully parameterized):

{
"type": "Storage.PaaS.ManagedDatalake",
"parameters": {
"namespace": "minio",
"tenantName": "",
"bucketName": "datalake",
"servers": 4,
"volumesPerServer": 4,
"volumeSize": "10Gi",
"storageClass": "",
"requestAutoCert": false
}
}

Storage.PaaS.ArubaObjectStorageAccount

An Aruba S3-compatible Object Storage account. Stubbed (NotImplemented) — the offer is registered in the catalogue but disabled pending confirmation of the Aruba legacy provisioning endpoint. The canonical data-lake offer for Aruba is Storage.PaaS.ManagedDatalake (MinIO on KaaS). The legacy Object Storage API has no resource-tag support, so Fractal ownership semantics cannot be enforced on it.

ParameterDescriptionExample / possible valuesRequired
accountNameObject Storage account name; defaults to a sanitized component IDfct-datastoreNo
passwordAccount password (min 9 chars, upper + lower + digit)Sup3rSecret!Yes
regionCodeObject Storage region codeitNo

Example (fully parameterized):

{
"type": "Storage.PaaS.ArubaObjectStorageAccount",
"parameters": {
"accountName": "",
"password": "Sup3rSecret1",
"regionCode": "it"
}
}