Skip to content
fmurodovPublic

About

🏠 Infrastructure as Code for home Kubernetes cluster running on Talos Linux with Flux CD

Resources

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

1,031 Commits

Folders and files

Repository files navigation

HomeOps

Uptime Alertmanager Status

Infrastructure as Code repository for home infrastructure management.

Cluster Photo

Repository Structure

homeops/
β”œβ”€β”€ talos/              # Talos Kubernetes cluster configurations
β”‚   └── talos1018/      # Cluster-specific config and patches
β”œβ”€β”€ kubernetes/         # Flux CD GitOps manifests
β”‚   β”œβ”€β”€ apps/           # Everything: platform (Cilium, cert-manager, Longhorn) and apps
β”‚   β”‚   └── talos1018/  # Cluster applications
β”‚   β”œβ”€β”€ clusters/       # Flux configurations
β”‚   β”‚   └── talos1018/
β”‚   β”‚       β”œβ”€β”€ flux-system/
β”‚   β”‚       └── apps.yaml
β”‚   └── components/     # Shared Kustomize components
β”œβ”€β”€ scripts/            # Automation and validation scripts
β”œβ”€β”€ docs/               # Documentation and assets
└── .github/            # CI/CD workflows

Projects

Talos1018 Cluster

A 3-node Kubernetes cluster running on Talos Linux. For detailed setup and configuration, see talos/talos1018/README.md.

  • Control plane: 3 nodes
  • Network: Cilium CNI (native routing) with L2 announcements and Gateway API
  • Dual-stack, IPv6-primary (ULA fd00:1018:0:5:10:18:6:90-93, IPv4 10.18.6.90-93)

Platform

One Flux apps Kustomization applies everything; ordering is per-component dependsOn:

  • Gateway API CRDs, then Cilium CNI (native routing, L2 announcements, Gateway API for all HTTPRoutes) and cert-manager with Let's Encrypt
  • Longhorn storage with daily backups to Backblaze B2, after Cilium and cert-manager
  • Applications deploy in parallel; those with a Longhorn volume wait for Longhorn via dependsOn

Kubernetes GitOps

GitOps with Flux CD. See kubernetes/README.md for details.

  • Continuous deployment via Flux CD
  • Secret management with SOPS + age
  • Automated validation via GitHub Actions

Prerequisites

  • talosctl
  • kubectl
  • helm
  • flux CLI
  • sops (for secret management)

Getting Started

  1. Clone the repository:
git clone https://github.com/fmurodov/homeops.git
cd homeops
  1. Navigate to the desired project directory and follow the project-specific README instructions.

Development

Git Pre-Commit Hook

To automatically validate configs before committing:

cp scripts/pre-commit .git/hooks/pre-commit

This will run ./scripts/validate.sh before each commit. To bypass: git commit --no-verify

About

🏠 Infrastructure as Code for home Kubernetes cluster running on Talos Linux with Flux CD

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages