Sobre el proyecto
Khue's Homelab es un proyecto de código abierto que automatiza todo el ciclo de vida de un entorno homelab, desde el aprovisionamiento de hardware físico hasta la ejecución de servicios autoalojados, utilizando principios de Infraestructura como Código (IaC) y GitOps. El proyecto se encuentra actualmente en estado ALPHA y está diseñado como un marco altamente personalizable para construir homelabs personales.
El flujo de trabajo principal comienza con el aprovisionamiento de bare metal basado en arranque PXE, que instala automáticamente Fedora Server en máquinas físicas. Luego configura una distribución ligera de Kubernetes (K3s) e implementa un conjunto completo de aplicaciones autoalojadas utilizando ArgoCD para la implementación continua basada en GitOps.
Las capacidades clave incluyen:
- **Aprovisionamiento de Bare Metal**: Configuración automatizada de arranque PXE que provisiona servidores físicos sin intervención manual.
- **Gestión de Kubernetes**: Instalación y gestión automatizadas de clústeres K3s con actualizaciones progresivas automáticas tanto para el sistema operativo como para Kubernetes.
- **Despliegue de Aplicaciones GitOps**: Las aplicaciones se despliegan y gestionan mediante GitOps usando ArgoCD, con soporte para actualizaciones automáticas (con puertas de aprobación).
- **Redes y Seguridad**: Soporte para VPN mediante Tailscale o Wireguard, gestión automatizada de certificados con cert-manager y exposición segura a Internet a través de Cloudflare Tunnel.
- **CI/CD**: Integración de Woodpecker CI para integración continua y ArgoCD para despliegue continuo.
- **Almacenamiento**: Almacenamiento distribuido utilizando Rook Ceph para almacenamiento nativo en la nube dentro de Kubernetes.
- **Monitoreo y Alertas**: Pila completa de observabilidad con Prometheus, Grafana y Loki para métricas, tableros y agregación de registros.
- **Gestión de Identidad**: Soporte de inicio de sesión único (SSO) vía Kanidm.
- **Automatización DNS**: ExternalDNS actualiza automáticamente los registros DNS para los servicios expuestos.
- **Copia de Seguridad y Restauración**: Capacidades automatizadas de copia de seguridad y restauración.
- **Arquitectura Modular**: Fácil de agregar o eliminar características y componentes.
- **Soporte Multi-Ambiente**: Admite múltiples entornos como dev y prod.
- **Pruebas de Infraestructura**: Capacidades integradas de pruebas de infraestructura.
La pila tecnológica incluye Ansible para automatización de bare metal, ArgoCD para GitOps, Cilium para redes y observabilidad basadas en eBPF, cert-manager para gestión de certificados, Cloudflare para DNS y túneles, Docker para servidores PXE efímeros, ExternalDNS para sincronización DNS, Fedora Server como sistema operativo base, Gitea como servicio Git autoalojado, Grafana para observabilidad, Helm como gestor de paquetes de Kubernetes, K3s como distribución ligera de Kubernetes, Kanidm para gestión de identidad, Loki para agregación de registros, NGINX como controlador de entrada de Kubernetes, Nix para shells de desarrollo, ntfy para notificaciones, Prometheus para monitoreo, Renovate para actualizaciones de dependencias, Rook Ceph para almacenamiento, Tailscale y Wireguard para VPN, Woodpecker CI para CI/CD y Zot Registry para registro privado de contenedores.
El proyecto puede probarse localmente sin hardware (modo sandbox) o desplegarse en hardware real para cargas de trabajo de producción. La documentación está disponible en homelab.khuedoan.com.
El proyecto está licenciado bajo GPLv3 y acepta contribuciones. Está inspirado por varios proyectos de código abierto y recursos comunitarios en el espacio del homelab y el autoalojamiento.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.