Overview
This guide explains my homelab Kubernetes setup, designed to help IT admins understand, run, and maintain the system.
Searching the docs
Local search runs entirely in the browser thanks to the @easyops-cn/docusaurus-search-local
plugin. Use the search bar at the top of any page to quickly find topics, and your search terms will be highlighted on the destination page.
Core Design Principles
-
GitOps as Source of Truth
- All cluster states live in this Git repo
- ArgoCD syncs cluster state with Git definitions
- Changes require Git commits for audit tracking
-
Declarative Configuration
- Uses Kubernetes YAML, Kustomize, and OpenTofu
- Tools manage state based on defined specs
-
Automated Operations
- ArgoCD ApplicationSets handle deployments
- Cert-Manager runs certificate lifecycle
- CI/CD pipelines automate testing and deployment
-
Security First
- Non-root container execution
- Network policies control traffic
- External secrets management
- Regular security scans
-
Clean Organization
- Kustomize manages configurations
- ArgoCD projects group related apps
- ApplicationSets simplify scaling
Documentation Map
Cluster Setup
- Provision Talos Kubernetes
- OpenTofu-based Talos deployment on Proxmox
- Infrastructure setup steps
Kubernetes Management
- GitOps Configuration
- ArgoCD setup and usage
- Manifest structure
- Service management
Application Guides
- Deploy Apps
- User application deployment
- App lifecycle management
Infrastructure
- Core Services
- Network setup
- Storage configuration
- Auth systems
- Monitoring stack
CI/CD
- Pipeline Configuration
- CI/CD workflow setup
- Renovate and Dependabot settings
- Repo maintenance