Running Kubernetes on your own infrastructure shouldn’t mean hand-crafted clusters that nobody dares to upgrade. With Cluster API, clusters become declarative resources: created, scaled and upgraded through the same reconciliation model Kubernetes uses for everything else.
How we approach it
We build on community providers — Cluster API Provider OpenStack for clouds and Cluster API Provider Metal3 for bare metal — and treat nodes as immutable. Upgrades roll through by replacing machines, not patching them in place.
On OpenStack, we integrate clusters properly with the cloud underneath: Cinder CSI for storage, Octavia for load balancers, Keystone for identity. That’s also how we build self-service Kubernetes offerings for cloud operators who want to give their users clusters on demand.
Where we help
- Platform design — management clusters, tenancy model, networking and the upgrade strategy, decided up front.
- Day-two operations — upgrades, certificate rotation, etcd health, capacity planning.
- Debugging — the networking issue between pods, the control plane that’s slow for no obvious reason, the provider bug that needs an upstream fix.