HomeLab – Private Cloud und DevOps-Infrastruktur
Eine umfassende private Infrastruktur, die auf Docker, Kubernetes (k3s) und GitOps-Prinzipien basiert und eine Vielzahl von Self-Hosted-Diensten sowie Monitoring-Lösungen integriert.

Dieses Projekt dokumentiert den Aufbau und die Verwaltung meiner persönlichen IT-Infrastruktur (HomeLab). Es dient als praktische Lernumgebung für moderne DevOps-Technologien und als Plattform für eine Vielzahl von selbst gehosteten Diensten.
Die gesamte Infrastruktur wird durch Infrastructure-as-Code (IaC) und GitOps-Methoden verwaltet. Die Orchestrierung der Dienste erfolgt primär über Docker und ein leichtgewichtiges Kubernetes-Cluster (k3s).
Kernkomponenten und Dienste
- Container-Orchestrierung: Einsatz von Docker für einzelne Dienste und k3s (eine CNCF-zertifizierte Kubernetes-Distribution) für komplexe, skalierbare Anwendungen.
- Monitoring und Visualisierung: Ein robuster Monitoring-Stack, bestehend aus Prometheus zur Metrikerfassung und Grafana für die Erstellung von Dashboards, gewährleistet die Systemtransparenz.
- Secrets Management: HashiCorp Vault wird zur sicheren Speicherung und Verwaltung von Zugangsdaten, API-Schlüsseln und Zertifikaten eingesetzt.
- Netzwerksicherheit: Implementierung von DNS-over-TLS zur Absicherung von DNS-Abfragen und weitere Maßnahmen zur Härtung des Netzwerks.
- Automatisierung: CI/CD-Pipelines werden genutzt, um die Bereitstellung und Aktualisierung von Diensten zu automatisieren.
- Self-Hosted-Anwendungen: Betrieb diverser Open-Source-Anwendungen wie Nextcloud für private Cloud-Speicherung, Gitea für die Versionskontrolle und weitere Dienste.
Das Projekt ist ein fortlaufender Prozess, der sich kontinuierlich weiterentwickelt und an neue technologische Standards angepasst wird.
architecture
Drei Ebenen: Internet-Edge (Router, DNS-over-TLS) → Reverse-Proxy-Layer (Nginx/Traefik mit TLS-Termination) → k3s-Cluster, der Workloads orchestriert. GitOps konvergiert den Cluster-Zustand gegen das Git-Repo; Vault liefert Secrets und kurzfristige Credentials; Prometheus/Grafana scrapen und alarmieren alle Knoten.
select a node to inspect responsibility, I/O, failure modes & security
- ▸Alle Konfiguration deklarativ in Git (GitOps-Prinzip)
- ▸Zentrales Secrets-Management statt Klartext-Keys in Repos
- ▸Monitoring + Alerting für alle Dienste
- ▸Container-Orchestrierung mit k3s (CNCF-zertifiziert)
- ▸Selbst-gehostete Anwendungen ohne externe Dienste
- ▸Bare-Metal-Hardware im Heimnetz — begrenzte Ressourcen vs. k3s-Overhead
- ▸Keine Public-Cloud-Integration in v1; WAN-Zugriff über Port-Forwarding + TLS
- ▸Vault erfordert Unseal-Operationen bei jedem Neustart
- ▸Betriebskomplexität vs. Lernwert: k3s + Vault fordern Operability, liefern aber Enterprise-Praxis
- ▸Ressourcenverbrauch des Monitoring-Stacks vs. Observability-Gewinn
- ▸Unseal-Workflow von Vault vs. Komfort von statischen Secrets
- ▸DNS-over-TLS schützt Abfragen im Heimnetz
- ▸Secrets nie im Git; Vault mit verschlüsseltem Storage-Backend und kurzen Leases
- ▸RBAC + Network-Policies im Cluster; Firewall-Zonen am Edge
- ▸Self-Healing durch k3s (Replica-Controller, Restart-Policies)
- ▸Backups der Stateful-Services; Prometheus-Alerts auf Zielausfall
- ▸GitOps-Reconciliation stellt gewünschten Zustand nach Drift wieder her
- ▸Rollouts über GitOps-Pipelines; manuelle Smoke-Tests je Dienst
- ▸Failover-Test: Knoten-Drain und Service-Recovery beobachtet
- ▸IaC + CI/CD-Pipelines automatisieren Bereitstellung und Updates
- ▸Reverse-Proxy terminiert TLS; Container laufen isoliert pro Namespace
- ▸Prometheus scraped alle Knoten + Dienste; Grafana-Dashboards aggregieren Metriken
- ▸Alerting-Rules alarmieren auf Service-Down und Ressourcen-Engpässe
- ▸Reproduzierbare private Cloud mit GitOps, Vault und Monitoring
- ▸Praktisches Fundament für Security- und DevOps-Projekte (SSH-Hack, UserMatrix)
- ▸Infrastruktur als Code ist kein Selbstzweck — jeder Layer braucht einen wartbaren Owner
- ▸Monitoring zuerst einrichten, sonst lernt man Probleme erst im Ausfall
problem
Eine private Cloud, die wie ein Produktionssystem betrieben wird — reproduzierbar, observabel und sicher, ohne Enterprise-Budget oder Vendor-Lock-in.
context
Ziel war eine Lernumgebung für moderne DevOps-Praxis, die echte Workloads (Nextcloud, Gitea, Monitoring) hostet und gleichzeitig als Spielwiese für Kubernetes, GitOps und Secrets-Management dient.