My home Kubernetes cluster

GitHub Workflow Status (event) GitHub branch checks state pre-commit k3s


Overview

My home Kubernetes cluster running on k3s, powered by Flux. SOPS is used to encrypt secrets. Cloudflare tunnels are used to make it all available over the internet. And finally, Rook gets used to provide storage to the cluster.

Setup

The cluster is stood up using an Ansible runbook that runs against the manually installed hosts. Something to properly document, improve upon and integrate into this repo in the future.

Hardware

Device Count OS disk Data disk RAM OS Purpose
Whitebox i7-6700K 1 250 GB NVMe 250 GB SATA 32 GB Ubuntu 20.04 K8s master
Intel NUC5i3BEH 2 120 GB NVMe 250 GB SATA 16 GB Ubuntu 20.04 K8s nodes
Intel NUC6CAYH 2 120 GB SATA 250 GB SATA 8 GB Ubuntu 20.04 K8s nodes
Synology DS1518+ 1 N/A 5x6 TB SATA 4 GB Synology DSM 7.1 NAS storage

Acknowledgements

Loosely based on the amazing work in k8s-at-home/template-cluster-k3s and grabbing bits and pieces from awesome-home-kubernetes