finds.dev← search

// the find

kubernetes-sigs/kubespray

★ 18,596 · Jinja · Apache-2.0 · updated Jul 2026

Deploy a Production Ready Kubernetes Cluster

Kubespray is an Ansible-based tool for deploying production Kubernetes clusters across bare metal, major cloud providers, and on-prem virtualization. It's the right choice when you need Kubernetes on infrastructure that managed offerings (EKS, GKE, AKS) don't reach, or when you need full control over the install. It's not for people who want simplicity.

The component version matrix is genuinely well-maintained — Kubernetes 1.36, containerd 2.3, cilium 1.19 all current as of this writing. CNI plugin selection is real: Calico, Cilium, Flannel, kube-router, Multus, and more, each with actual documentation on tradeoffs. Offline/air-gap installation is a first-class concern with a dedicated contrib/ workflow, which most competitors ignore. CI runs on real cloud infrastructure (Equinix Metal, OVHcloud) against multiple distros and cloud targets, not just Vagrant VMs.

Ansible as the deployment mechanism means you carry the full Ansible dependency chain — version mismatches between Ansible, Python, and the playbooks break installs in ways that are hard to diagnose. The variable surface is enormous: hundreds of group_vars knobs with no strong defaults story, so first-time users routinely misconfigure networking or etcd and only find out mid-deploy. Upgrade paths between Kubernetes minor versions work in theory but regularly have sharp edges; the docs say to upgrade one minor version at a time but don't warn you that some CNI/etcd combinations need extra steps. The Terraform contrib/ modules are community-maintained and noticeably less polished than the core playbooks — don't treat them as production-ready without reviewing them yourself.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →