k8s-gitops icon indicating copy to clipboard operation
k8s-gitops copied to clipboard

GitOps principles to define kubernetes cluster state via code

GitOps Workflow for Kubernetes Cluster

Kubernetes

Discord GitHub stars GitHub last commit

:book:  Overview

Leverage Flux2 to automate cluster state using code residing in this repo

:computer:  Infrastructure

See the k3s setup in the homelab-infrastructure repo for more detail about hardware and infrastructure

:gear:  Setup

See setup for more detail about setup & bootstrapping a new cluster

:wrench:  Workloads (by namespace)

  • cert-manager
  • default
  • flux-system-extra
  • kube-system
  • logs
  • monitoring
  • rook-ceph
  • system-upgrade
  • velero

:robot:  Automation

  • Renovate keeps workloads up-to-date by scanning the repo and opening pull requests when it detects a new container image update or a new helm chart
  • Kured automatically drains & reboots nodes when OS patches are applied requiring a reboot
  • System Upgrade Controller automatically upgrades k3s to new versions as they are released

:handshake:  Community

There is a really great community of like-minded folks doing similar efforts who have shared their clusters over at awesome-home-kubernetes

There is also an active the k8s@home Discord for this community and great discussion.