This is the repository for my on-premise Kubernetes cluster that runs in my house. It uses GitOps techniques in order to keep the content of this repository in-sync with the cluster. Basic stuff is:
- Flux for GitOps and keeping the cluster in sync with the repo Also
- Renovate to update dependencies
- Trufflehog and GitHub Actions for credential scanning and avoid leaking private credentials
In case you want to check the full index of my on-premise stuff, check crisszkutnik/kubernetes-home-lab
The cluster runs a variety of applications for setup and management such as:
- Grafana for charts and observability
- Loki and Promtail for log collection
- MetalLB as load balancer via L2 advertisement
- NGINX ingress controller is used as an ingress controller
- Prometheus for metrics and monitoring
- External Secrets operator and 1Password Connect server for secrets management
It also runs a bunch of other applications that were developed for personal use
Not much to add here yet. Hopefully I'll be able to add stuff here eventually
Device | Count | CPU | RAM | Disk size | OS | Purpose |
---|---|---|---|---|---|---|
OrangePi 5 | 1 | RK3588S 8-core | 4 GB | 64 GB | Ubuntu | Control plane |
OrangePi 5 | 2 | RK3588S 8-core | 4 GB | 64 GB | Ubuntu | Worker |
Host | Address |
---|---|
DHCP | 192.168.0.10 - 192.168.0.189 |
K8s load balancer IPs | 192.168.0.190 - 192.168.0.199 |
Master nodes | 192.168.0.200 - 192.168.0.210 |
Nodes | 192.168.0.211 - 192.168.1.254 |
Host | Address |
---|---|
Control plane node 1 | 192.168.0.200 |
Worker node 1 | 192.168.0.211 |
Worker node 2 | 192.168.0.212 |