Cluster API vs Kamaji
Cluster API
cluster-api.sigs.k8s.ioKamaji
kamaji.clastix.ioSide by side
| Figure | Cluster API | Kamaji |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | — |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Kubernetes Management Platforms | 8.8 (#3) | 7.9 (#9) |
| Infrastructure | It is designed to work across on-premises and cloud environments and can be extended with infrastructure providers such as AWS, Azure, and vSphere. | Worker nodes can run on bare metal, virtual machines, or cloud instances. |
| Intended users | The project describes its automation as intended for platform operators managing Kubernetes cluster lifecycles. | The product is described for platform engineering, managed services, and multi-tenant environments that need Kubernetes clusters at scale. |
| Purpose | Cluster API provides declarative APIs and tooling to provision, upgrade, and operate multiple Kubernetes clusters. | Kamaji runs Kubernetes control planes as pods in a management cluster to simplify operating multiple Kubernetes clusters. |
Plans
In their own words
Cluster API
Cluster API is an open-source project for managing the lifecycle of multiple Kubernetes clusters through declarative APIs and tooling. Platform operators can use it to create, scale, upgrade, and destroy Kubernetes-conformant clusters across on-premises and cloud environments. Provider implementations are interchangeable; kubeadm is the default bootstrap provider. The ecosystem includes infrastructure, bootstrap, control plane, IPAM, addon, and runtime extensions, with environments such as AWS, Azure, GCP, OpenStack, vSphere, and KubeVirt. A management cluster can use clusterctl or the Cluster API Operator to manage provider components. Clusterctl fetches provider component YAML and installs it, while the Operator uses a declarative approach intended to support GitOps workflows. Getting started requires an existing Kubernetes cluster accessible through kubectl; kind, Docker, and Helm are common prerequisites. Cluster API supports multi-cluster provisioning and upgrades, but does not manage a single cluster spanning multiple infrastructure providers or clusters it did not provision. It is free and open source. The project supports its latest two minor releases, with each supported for roughly 12 months including maintenance.
Kamaji
Kamaji runs Kubernetes control planes as pods inside a management cluster, giving platform teams a way to operate multiple tenant clusters. Each tenant control plane is independent and separated from others. It uses upstream Kubernetes components and kubeadm, with CNCF-conformant tenant clusters. Worker nodes may run on bare metal, virtual machines, or cloud instances across cloud, data-center, edge, and bare-metal environments. Kamaji integrates with Cluster API for infrastructure provisioning and lifecycle management, and supports cluster provisioning, multi-cluster management, policy enforcement, and upgrade management. Datastores include etcd and MySQL- or PostgreSQL-compatible databases through kine; NATS support is experimental. Konnectivity, enabled by default, creates secure tunnels to worker nodes. Prometheus-format metrics cover management and tenant planes. Metrics endpoints use unauthenticated plaintext by default, with documented HTTPS and bearer-token options. Kamaji is free under Apache 2.0; Clastix also sells enterprise support.