Skip to content

Kubernetes homelab managed with Flux GitOps

License

Notifications You must be signed in to change notification settings

rcdailey/home-ops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,302 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Home Operations

Personal Kubernetes homelab managed with Talos Linux and Flux GitOps.

Stack

  • OS: Talos Linux
  • GitOps: Flux
  • Storage: Rook Ceph
  • Secrets: External Secrets + Infisical
  • Networking: Cilium, Envoy Gateway
  • Observability: VictoriaMetrics + Logs, Grafana
  • Databases: CloudNativePG
  • Backups: Volsync, Kopia

Repository Structure

bootstrap/          # Cluster bootstrap scripts
docs/
  architecture/     # System design docs
  decisions/        # ADRs
  runbooks/         # Operational procedures
  troubleshooting/  # Historical investigations
kubernetes/
  apps/             # Application manifests by namespace
  components/       # Reusable Kustomize components
  flux/             # Flux system configuration
scripts/            # Operational scripts
talos/              # Talos node configuration

New Machine Setup

Prerequisites: mise installed.

  1. Install minijinja-cli (not managed by mise):

    brew install minijinja-cli
  2. Install remaining tools:

    mise trust && mise install
  3. Authenticate with Infisical:

    infisical login
  4. Generate Talos configuration:

    just talos init-config
  5. Verify access:

    talosctl -n 192.168.1.63 version
    kubectl get nodes

Disaster Recovery

Bootstrap a new cluster from scratch:

  1. Bootstrap Talos cluster:

    just bootstrap talos
  2. Bootstrap applications:

    just bootstrap apps

About

Kubernetes homelab managed with Flux GitOps

Resources

License

Stars

Watchers

Forks

Contributors 40