Skip to content

sholdee/home-ops

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

K3s Home Operations

...managed with
🤖 ArgoCD, Renovate, and GitHub Actions 🤖

Kubernetes  

Home-Internet   Alertmanager  

Age-Days   Uptime-Days   Node-Count   Pod-Count   CPU-Usage   Memory-Usage  

Overview 📔

This repository contains the configurations for my home operations k3s cluster.

My applications are managed in GitOps fashion with ArgoCD, Renovate, and Github webhooks. Repository push events trigger a webhook to ArgoCD, causing it to immediately sync the cluster state with this repository.

Renovate continuously scans the repository and submits pull requests for dependency updates. This includes upgrades to K3s itself via system-upgrade-controller.

Pull requests for Helm application updates trigger a workflow to calculate and post the diff between the old and new versions' inflated manifests, as well as detect and pull all new container images to the cluster for verification.

Container image update pull requests against base manifests in the repository also trigger a workflow to pull the new image. This has the added benefit of caching all images in the local embedded registry mirror, Spegel, prior to merging.

Primary Applications ⭐

  • Home Assistant and related services
    • Appdaemon
    • Z-Wave JS UI
    • EMQX Cluster
    • Codeserver
    • Venstar MQTT bridge
  • Unifi
  • Wireguard
  • Adguard
  • Gravity cluster
  • Renovate
  • Portainer
    • GitOps for remote Docker hosts

Core Components 🔥

  • ArgoCD
  • 1Password Connect
  • External Secrets
  • Cert-Manager
  • Kube-VIP
  • CloudNativePG
  • EMQX Operator
  • ETCD Operator
  • MongoDB Community Operator
  • Kube Prometheus Stack
  • Kromgo
  • System Upgrade Controller
  • Ingress-NGINX
  • Kubernetes Dashboard
  • Stakater Reloader
  • Velero

Network: Cilium 🕸️

  • Gateway API
  • Netkit
  • eBPF host-routing
  • Native routing
  • BGP control plane
  • Hubble observability

Storage: Longhorn 💾

Hardware 🖥️

  • RPi 5 8gb with 512GB NVMe SSD via PCIe hat