Skip to content
Docs
Worker bees in hard hats assembling the Hyve logo block by block Worker bees in hard hats assembling the Hyve logo block by block

Hyve

Kubernetes clusters as code — on your laptop, in a pipeline, or as a controller in your cluster.

Describe a cluster in YAML and Hyve creates, updates, and deletes it to match. How a cluster gets built is up to a module — Cluster API, Terraform, Crossplane, or a provider’s own CLI.

Terminal window
go install github.com/cbridges1/hyve@latest
Cluster APITerraformCrossplaneProvider CLIsYour own modules

Run it where you need it

The same YAML and the same reconcile engine everywhere.

Clusters as code

A cluster is one YAML file. Create it and the cluster is created, edit it and it’s updated, mark it delete: true and it’s deleted. Locally it’s a file; in Kubernetes it’s a custom resource — the same shape either way.

apiVersion: hyve.io/v1alpha1
kind: ClusterDefinition
metadata:
name: web
spec:
driver:
source: github.com/cbridges1/hyve-capi-module
version: v0.2.0
mgmtCluster: capi-mgmt
params:
cluster_class: aws-small
kubernetes_version: v1.34.8
worker_count: "3"

Templates stamp out clusters to a pattern, lifecycle hooks run workflows before and after each change, and hyve cluster auth hands you a working kubeconfig.

Bring your own provisioner

A module is a small, versioned set of scripts — create, status, scale, auth, delete — so anything you can script can provision a cluster: Terraform, Crossplane, Cluster API, or a provider’s CLI. Hyve embeds no cloud SDKs; credentials stay where your tools already keep them.

Get started