Spot · Schema

Spot Ocean Cluster

An Ocean cluster is a serverless Kubernetes infrastructure engine that automatically manages and optimizes cloud infrastructure for containers, handling node provisioning, scaling, and cost optimization.

AutoscalingCloud InfrastructureContainersCost OptimizationFinOpsKubernetesSpot Instances

Properties

Name Type Description
id string The unique identifier of the Ocean cluster.
name string The name of the Ocean cluster.
controllerClusterId string The Ocean controller cluster identifier used by the controller pod.
region string The cloud provider region where the cluster is deployed.
autoScaler object The autoscaler configuration for the Ocean cluster.
capacity object The capacity configuration for the Ocean cluster.
strategy object The optimization strategy for the Ocean cluster.
createdAt string The timestamp when the cluster was created.
updatedAt string The timestamp when the cluster was last updated.
View JSON Schema on GitHub

JSON Schema

ocean-cluster.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/api-evangelist/spot/blob/main/json-schema/ocean-cluster.json",
  "title": "Spot Ocean Cluster",
  "description": "An Ocean cluster is a serverless Kubernetes infrastructure engine that automatically manages and optimizes cloud infrastructure for containers, handling node provisioning, scaling, and cost optimization.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier of the Ocean cluster."
    },
    "name": {
      "type": "string",
      "description": "The name of the Ocean cluster."
    },
    "controllerClusterId": {
      "type": "string",
      "description": "The Ocean controller cluster identifier used by the controller pod."
    },
    "region": {
      "type": "string",
      "description": "The cloud provider region where the cluster is deployed."
    },
    "autoScaler": {
      "type": "object",
      "description": "The autoscaler configuration for the Ocean cluster.",
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "Whether the autoscaler is enabled."
        },
        "isAutoConfig": {
          "type": "boolean",
          "description": "Whether automatic configuration is enabled."
        },
        "cooldown": {
          "type": "integer",
          "description": "Cooldown period in seconds between scaling actions."
        },
        "resourceLimits": {
          "type": "object",
          "properties": {
            "maxMemoryGib": {
              "type": "integer",
              "description": "Maximum memory in GiB for the cluster."
            },
            "maxVCpu": {
              "type": "integer",
              "description": "Maximum vCPUs for the cluster."
            }
          }
        }
      }
    },
    "capacity": {
      "type": "object",
      "description": "The capacity configuration for the Ocean cluster.",
      "properties": {
        "target": {
          "type": "integer",
          "description": "The desired number of instances."
        },
        "minimum": {
          "type": "integer",
          "description": "The minimum number of instances."
        },
        "maximum": {
          "type": "integer",
          "description": "The maximum number of instances."
        }
      }
    },
    "strategy": {
      "type": "object",
      "description": "The optimization strategy for the Ocean cluster.",
      "properties": {
        "spotPercentage": {
          "type": "integer",
          "description": "Percentage of spot instances in the cluster."
        },
        "fallbackToOd": {
          "type": "boolean",
          "description": "Whether to fall back to on-demand when spot is unavailable."
        },
        "utilizeReservedInstances": {
          "type": "boolean",
          "description": "Whether to utilize reserved instances."
        },
        "utilizeCommitments": {
          "type": "boolean",
          "description": "Whether to utilize savings plans and commitments."
        }
      }
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp when the cluster was created."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp when the cluster was last updated."
    }
  }
}