Private beta

Intent-driven infrastructure. Visible by default.

From intent to running cluster — planned, executed, verified. One control plane for multi-cloud, bare metal, and everything between.

Intent
$ o8s cluster create --provider aws --region us-east-1 --nodes 5
$ o8s cluster scale prod-cluster --nodes 12
$ o8s app deploy monitoring-stack --cluster prod-east
$ o8s migrate vm --from gcp --to aws --name api-server-01
$ o8s alert create --cluster prod --metric cpu_usage --threshold 85
Plan
Validate provider defaults
Generate CAPI manifest
Diff against existing state
Queue provisioning tasks

manifest.yaml (preview)

apiVersion: cluster.x-k8s.io/v1beta1
kind: Cluster
metadata:
  name: prod-east-01
spec:
  clusterNetwork:
    pods: { cidrBlocks: ["10.244.0.0/16"] }
Reality

24

Clusters

healthy

186

Nodes

healthy

3

Alerts

warning

12

Deployments

healthy
All systems reporting

Before o8s vs. after.

No sugar-coating. This is what changes.

Before

  • Scripts scattered across 4 repos
  • Terraform + Ansible + custom glue code
  • Cluster state tracked in spreadsheets
  • Alert fatigue from uncorrelated noise
  • VM migrations handled manually via tickets
  • No single view of fleet health

After

  • One intent, one plan, one execution path
  • Generated CAPI manifests with provider validation
  • Real-time cluster inventory with health metrics
  • Correlated alerts with ack, silence, and routing
  • Automated VM migration across clouds
  • Unified dashboard + CLI for every operation

How it works

Four phases. Full visibility at each one.

01

Intent

Declare what you want. CLI or dashboard — same result. Provider defaults fill the gaps.

02

Plan

o8s generates CAPI manifests, diffs against current state, and surfaces what will change.

03

Execute

Provisioning kicks off via Cluster API. Status tracked: pending, provisioning, ready, failed.

04

Verify

Health metrics via Prometheus. Historical data, alert rules, and notification routing — all wired.

What ships in the beta

Real capabilities. No roadmap promises.

Cluster Lifecycle

  • Multi-cloud + bare metal provisioning via CAPI
  • Providers: AWS, GCP, Azure, vSphere, Tinkerbell
  • Provider defaults + validation + manifest generation
  • Status tracking: pending / provisioning / ready / failed
  • Reusable cluster templates (environment-based CRUD)

Observability & Alerts

  • Cluster, node, and app health via Prometheus
  • Historical metrics and trend analysis
  • Alert rules CRUD with Mimir integration
  • Acknowledge, silence, and route alerts
  • Channels: Slack, Email, PagerDuty, Webhook

Fleet Inventory

  • Cluster list with status, health, and metadata
  • Resource views: nodes, namespaces, workloads, pods
  • Hardware inventory via Tinkerbell CRDs
  • Machine stats and hardware lifecycle tracking

Day-2 Operations

  • App catalog with ArgoCD-backed deployments
  • Helm values retrieval and config diffing
  • Application CR creation from catalog
  • VM migration across AWS, GCP, Azure, Linode

VM migration across clouds

Move workloads between providers. Tracked end to end.

AWSGoogle CloudAzureLinode
Select source VM
Snapshot + serialize state
Transfer to target provider
Verify and cutover

Developer-first

CLI, API, local stack. Built for engineers who read docs.

CLI-first

Full cluster lifecycle from your terminal. Scriptable, composable, fast.

$ o8s cluster list --output json

OpenAPI / Swagger

Every endpoint documented. Generate clients in any language from /api-docs.

GET /api-docs → OpenAPI 3.0 spec

Local stack

Docker Compose with Postgres + API + Web. Up in 60 seconds.

$ docker compose up -d

Migrations & Seed

DB migrations + seed endpoints for dev/test. Repeatable, deterministic.

$ o8s db migrate && o8s db seed

FAQ

Engineer-grade answers.

Get early access

CLI + dashboard + API. Invites roll out in waves. Join the waitlist.