Pi Kubernetes Cluster Project Website

K3S Kubernetes cluster using bare metal nodes automated with Ansible and FluxCD.

Documentation Get Code

Project Goals & Scope

This is an educational project to build a hybrid x86/ARM Kubernetes cluster at home, using Raspberry Pi and refurbished x86 mini PCs, learn to deploy basic kubernetes services and automate its deployment and configuration applying IaC (infrastructure as a code) and GitOps methodologies with tools like Ansible and Flux CD.
The entire process for creating this cluster at home, from cluster design and architecture to step-by-step manual configuration guides, has been documented. You can find all this information in the docs section, so you can build your own home cluster.
Automation code (Ansible source code) and packaged Kubernetes applications (that can be deployed using Flux CD) are also at your disposal in the project's git repository.

pi-cluster-tech-stack

Perfect for educational purposes

Ideal to know the state of the art of hybrid ARM-x86 Kubernetes clusters and to play with different cluster services and applications using low-performance bare metal servers instead of virtual machines.

Low cost Kubernetes cluster

All it is needed is a bunch of Raspberry PIs, (4 Model-B with 4GB) USB sticks, a power hub, and a Ethernet Switch.
Anyway you can drive yourself mad, like I did, and buy more staff like dedicated SSDs disks to improve cluster performance. Or scale it up adding more powerfull x86 mini PCs

Automatically rebuild the cluster

You can break the cluster configuration as many times as you need during your testing/learning process and be able to rebuild the cluster in minutes. All installation/configuration activities are automated with Ansible/Flux CD. It also makes easy to re-configure cluster nodes in case of hardware failure