Skip to content
/ homeops Public

GitOps managed homelab with Talos, Kubernetes, Argo CD.

Notifications You must be signed in to change notification settings

kha7iq/homeops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏗️ HomeOps

This repository contains the infrastructure and Kubernetes cluster configuration for my homelab, managed using GitOps principles.

The stack is powered by Talos, Kubernetes, and Argo CD, with automation assistance from Renovate.

Most workloads run on a Talos-powered Kubernetes cluster, while storage services are handled by a dedicated OpenMediaVault Server & Longhorn.
To securely manage secrets, it uses External Secrets Operator
integrated with Bitwarden as the secret backend.

Configuration is structured using Kustomized Helm, with Argo CD orchestrating application deployments.


🛠️ Core Components

Here’s a quick rundown of the key technologies in this setup:

  • Cilium: eBPF-based networking, observability, and security for Kubernetes.
  • Argo CD: GitOps-driven continuous deployment for Kubernetes workloads.
  • Cert-manager: Automated certificate management for TLS security.
  • External Secrets: Open-source external secret management systems.
  • Gateway API: The next-gen Kubernetes Ingress for advanced traffic routing.
  • Technitium: DNS Server & ad-blocker.
  • Netbird: Secure, self-hosted VPN alternative with a mesh networking approach.

🗃️ Folder Structure

homeops
├── 📂 argocd-apps
│   ├── databases
│   ├── logging
│   ├── network
│   ├── observability
│   ├── security
│   ├── tools
│   └── web
├── 📂 bootstrap
│   ├── argocd
│   ├── cilium
│   ├── crds
│   ├── csr-approver
│   └── external-secrets
├── 📂 services
│   ├── database
│   ├── network
│   ├── observability
│   ├── security
│   ├── storage
│   ├── tools
│   └── web
└── 📂 talos
    ├── clusterconfig
    └── patches

🗄️ Hardware Overview

Below is a list of the hardware used in the HomeOps setup:

Device Model CPU RAM Storage Role
Lenovo SFF M900 (x4) Lenovo M900 SFF Intel Core i5 @ 3.2 GHz 32GB 512GB SATA SSD + 128GB NVMe Worker Nodes
Raspberry Pi 4 RPI 4 ARM Cortex-A72 @ 1.5 GHz 8GB 32GB MicroSD Master Node
Raspberry Pi 3 RPI 3 ARM Cortex-A53 @ 1.2 GHz 1GB 16GB Dedicated DNS Server
Desktop Custom Build Intel Core i7-6700 @ 3.4 GHz 16GB 2TB SATA SSD NAS (Some other Services)

Bootstrapping Your HomeOps Environment

For detailed steps on bootstrapping your environment, check out the Bootstrap Guide.

✅ TODO List

  • 🔧 Configure Renovate for Automated Dependency Updates

  • 🚀 Improve networking policies with Cilium.

  • 📜 Document services configuration & deployment.

About

GitOps managed homelab with Talos, Kubernetes, Argo CD.

Topics

Resources

Stars

Watchers

Forks