Skip to content

Latest commit

 

History

2,471 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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: OpenTelemetry, VictoriaMetrics, VictoriaLogs, VictoriaTraces, Grafana
  • Databases: CloudNativePG
  • Backups: VolSync, Kopia, and Barman Cloud for DB

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

Bootstrap restores the cluster's declared state, but it does not restore application volumes or PostgreSQL contents. See the backup architecture and CNPG recovery runbook before recovering data.

About

Kubernetes homelab managed with Flux GitOps

Resources

Stars

12 stars

Watchers

0 watching

Forks

Contributors

Languages