Skip to content

macgregor/homelab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Homelab

A k3s Kubernetes cluster running on Raspberry Pi 4B nodes (Rocky Linux 9, ARM), backed by a Synology DS720+ NAS for persistent storage. Deployment is driven by just using kubectl and Helmfile. See Getting Started for the full project overview, hardware details, and software stack.

Quick Start

All Kubernetes commands run from the kube/ directory. The KUBECONFIG env var is set via .envrc (direnv).

# Deploy an app
just jellyfin-deploy

# Check status / tail logs
just jellyfin-status
just jellyfin-logs

# Stop / start / restart
just jellyfin-stop
just jellyfin-start
just jellyfin-restart

# Deploy by category
just deploy-sys       # System infrastructure
just deploy-apps      # User applications
just deploy-all       # Everything

Documentation

  1. Getting Started -- Project overview, hardware, software stack, and repo layout.
  2. Infrastructure Provisioning -- Ansible provisioning of MikroTik router and Raspberry Pis.
  3. RPis and k3s -- Kubernetes cluster topology and k3s configuration.
  4. Persistence -- Synology NAS setup and Kubernetes storage configuration.
  5. Networking -- Network topology, DNS, MetalLB, ingress controllers, TLS, and authentication.
  6. Security -- Authentication and access control.
  7. Observability -- Logging and monitoring stack.
  8. Maintenance -- k3s upgrades and cluster maintenance procedures.

Repository Layout

  • ansible/ -- Provisioning playbooks for MikroTik router, Raspberry Pi OS, and k3s installation
  • kube/ -- Kubernetes manifests, Helm values, and just-driven deployment tooling
  • docs/ -- Operational documentation

See Getting Started for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors