Kubernetes clusters using the GitOps tool Flux.
The Git repository is the driving the state of the Kubernetes clusters.
The awesome Flux SOPS integration is used to encrypt secrets with gpg.
The following apps are installed on the clusters.
Software | Purpose |
---|---|
Flux2 | GitOps Tool managing the cluster |
Longhorn | Persistent Block Storage Provisioner |
NGINX Ingress Controller | Cluster Ingress controller |
MetalLB | Bare metal LoadBalancer |
Cert-Manager | Letsencrypt certificates with Cloudflare DNS |
ExternalDNS | Configure Cloudflare DNS Servers |
kube-vip | Virtual IP Load-Balancer for Control Plane High Availability |
Kube-Prometheus Stack | Prometheus & Exporters to monitor the cluster |
Grafana | Monitoring & Logging Dashboard |
Alertmanager | Monitoring Alerts |
Grafana Loki | Log aggregation system |
System Upgrade Controller | Automated k3s upgrades |
Descheduler | Evicts pods to optimize scheduling |
Kubernetes Metrics Server | Source of container resource metrics for Kubernetes |
Renovate Bot makes sure the components are never outdated.
It creates PullRequests when Helm charts or Docker images have newer versions available and even keeps Flux and k3s up-to-date.
Big shout out to k8s@home and everyone from awesome-home-kubernetes for the inspiration ❤️