[ 00 / Infraestructura y plataforma de agentes de IA ]
Plataforma KubeLab y Cockpit de Ingeniería
La plataforma híbrida en la nube y bare-metal que opera 24/7 mis agentes de IA autónomos, inferencia edge y flujos GitOps.
[ 01 / La Fábrica de Ingeniería Detrás de Cada Producto ]
KubeLab es la base operativa sobre la que he construido, probado y desplegado cada proyecto, herramienta open-source y producto de mi portfolio (incluyendo Pollex, Hive MCP Server, la API de KubeLab y esta misma web en Astro). Abarca ocho máquinas entre Hetzner Cloud (Alemania), Google Cloud y un homelab bare-metal en EE.UU., con tres clústeres K3s de un nodo cada uno.
Nada de lo que muestro es una demo aislada de tutorial: cada carga de trabajo se compila en local, se valida en staging, se protege con autenticación Zero-Trust y se opera 24/7 mediante pipelines GitOps inmutables y sistemas de contexto multi-agente deterministas.
100% IaC con Ansible, Terraform y K3s. Argo CD reconcilia el estado en <30s.
Inferencia LLM local en una Jetson Nano. El prompt no sale de casa.
RAG AST en Hive MCP que abastece a los agentes con un ahorro de contexto del 67% al 82%.
[ 02 / Servicios, y quién puede llegar a ellos ]
Tres de estos responden a cualquiera. El resto solo responden desde dentro de la malla WireGuard, tras Authelia: no hay una sola regla de port-forwarding en mi red residencial de Estados Unidos, así que para la mayoría no hay ni dirección que exponer.
14 documentados aquí · 35 corriendo entre los tres clústeres
Gateway Principal
- KubeLab Platform API
API en Go de alto rendimiento, rate limiting por token bucket y telemetría de plataforma.
Público api.kubelab.live ↗ - Traefik Ingress Proxy
Enrutador Ingress L7 en cloud y edge con terminación TLS automática Let's Encrypt.
Solo malla - Headscale Mesh VPN
Plano de control WireGuard autoalojado con MagicDNS y enrutamiento aislado.
Solo malla - Authelia Zero-Trust Auth
Autenticación de doble factor y proveedor forward-auth para servicios internos.
Solo malla - CoreDNS & Pi-hole Split Gateway
Demonio Split DNS autoritativo y sinkhole de red que enruta zonas de staging y microservicios.
Solo malla
IA e Inferencia
- Pollex Edge AI
Corrección de texto LLM en edge con Qwen 1.5B local sin telemetría en la nube.
Público mlorentedev.github.io/pollex ↗ - Hive MCP Server
Fragmentador AST determinista y capa de memoria MCP para flujos multi-agente.
Público mlorentedev.github.io/hive ↗ - Ollama Local Engine
Clúster bare-metal de inferencia LLM local corriendo modelos Mistral y DeepSeek.
Solo malla
GitOps y Entrega
- Argo CD GitOps Hub
Entrega continua GitOps declarativa sincronizando clústeres K3s con detección de drift.
Solo malla - Gitea On-Prem Forge
Repositorio Git ligero autoalojado y mirror de CI automatizado para código privado.
Solo malla
Observabilidad
- Grafana Telemetry
Visualización centralizada de métricas, dashboards de clúster y gráficas de latencia.
Solo malla - Loki Log Aggregator
Sistema escalable de agregación de logs indexado por etiquetas de pods de K8s.
Solo malla - Uptime Kuma Probes
Monitor sintético independiente HTTP/ICMP con registro histórico de SLA a 90 días.
Solo malla
Almacenamiento y Datos
- MinIO S3 Object Store
Almacenamiento de objetos distribuido compatible con S3 para backups y modelos de IA.
Solo malla
[ 03 / Las máquinas de debajo ]
Nueve máquinas: tres alquiladas a un proveedor cloud, una de ellas apagada, y seis en mi casa. Solo tres ejecutan Kubernetes, y lo hacen como tres clústeres independientes de un nodo en vez de un clúster de tres nodos: un plano de control compartido que puede llevarse por delante toda la flota no es un homelab, es un único punto de fallo con pasos de más.
9 máquinas · 8 encendidas · 3 clústeres K3s independientes
- Hetzner Cloud VPS operativo
Ingress de Producción y Core IDP
k3s · ARM64 · 4 vCPU (Ampere Neoverse-N1) · 7.5 GB · Falkenstein (Germany)
- Google Cloud Platform Hub operativo
Plano de Control GitOps Argo CD (ADR-063)
k3s · x86_64 · 2 vCPU (AMD EPYC 7B12) · 2 GB · Eemshaven (Netherlands)
- Acemagic Staging Cluster operativo
Clúster Staging K3s y Cargas Pesadas
k3s · x86_64 · Intel N95 (4c) · 11.5 GB · Homelab (USA)
- Acemagic Dev & Agent Node operativo
Desarrollo remoto y workspaces de agentes
docker · x86_64 · Intel N95 (4c) · 11.5 GB · Homelab (USA)
- NVIDIA Jetson Nano operativo
Nodo de Inferencia GPU Edge AI
systemd · ARM64 · 4c Cortex-A57 (128 Maxwell CUDA cores, unused) · 3.9 GB LPDDR4 · Edge Hardware (USA)
- Beelink Forge & CI Runner operativo
Forge Git, runner de CI y almacén de objetos
docker · x86_64 · Intel N95 (4c) · 7.5 GB · Homelab (USA)
- Raspberry Pi 4 Gateway operativo
Gateway de DNS Split y Pi-hole
docker · ARM64 · Broadcom BCM2711 (4c) · 7.6 GB · Homelab (USA)
- Raspberry Pi 3 Monitor operativo
Telemetría y Uptime Kuma
docker · ARM64 · Broadcom BCM2837 (4c) · 0.9 GB · Homelab (USA)
- AWS Standby Hub en reserva
Standby en frío del hub de Argo CD
ARM64 · 2 vCPU (Graviton2) · 2 GB · Powered down (was eu-central)
[ 04 / Dónde corre cada cosa ]
Ocho de las nueve máquinas: la novena está apagada, así que aparece en la lista de arriba pero no en el dibujo. Tres ejecutan clústeres K3s de un solo nodo que no comparten plano de control.
Generado en el build desde src/diagrams/topology.architecture.json
[ 05 / Cómo llega un cambio a producción ]
Un push a master produce una única imagen multiarquitectura. Staging la ejecuta sin intervención; producción ejecuta esos mismos bytes solo cuando se mergea una pull request de release.
Generado en el build desde src/diagrams/flows.architecture.json
[ 06 / Los agentes y las automatizaciones ]
La parte de la plataforma que se opera sola: agentes que leen los logs y hacen el triaje, los protocolos a los que están sujetos, los flujos de n8n que se disparan sin mí, y dónde acaba la telemetría. Casi nada de esto tiene dirección pública — corre dentro de la malla —, así que lo que hay aquí es el inventario y el límite, no un enlace a un panel.
13 entradas · 5 que puedes abrir desde aquí
Agentes
- Curator Agent
Neural Hive · síntesis de memoria y ADR
Repo privado - SRE Triage Agent
Clasificador reactivo de anomalías sobre LogQL
Público abrir ↗ - GitOps Delivery Agent
Atestación y promoción de releases automatizadas
Solo malla
Protocolos
- Spec-Driven Dev
RFC formales, modelos de amenaza y puertas de archivado
Repo privado - Deterministic Gates
dotf pr triage-queue y 100 % de mutantes muertos
Público abrir ↗ - Zero-Debt Doctrine
Lecciones en vuelo y ADR registrados en tiempo real
Público abrir ↗ - Zero Plaintext Secrets
Cifrado Age/SOPS e inyección en memoria
Público abrir ↗
Flujos de trabajo
- SRE Incident Auto-Triage
Webhook de Alertmanager → corte de logs → Slack
Solo malla - Secret Expiry & R2 Backup
Copia proactiva y rotación de credenciales
Solo malla - Spoke Reconciliation
Corrección de deriva en la topología de spokes K8s
Solo malla
Telemetría
- Loki Telemetry API
Telemetría del clúster y trazas con LogQL
Solo malla - Health & SLO Monitor
Motor de SLO multi-burn-rate en vivo
Solo malla - Codebase Activity
Código de la infraestructura L0
Público abrir ↗
Migrado de mlorentedev/kubelab · 6cd9ab0
[ 07 / Objetivos de Nivel de Servicio (SLOs) y Confiabilidad ]
Objetivo SLA a 90 días: 99.5%Telemetría sintética a 90 días, cotas de latencia y recuperación automática GitOps monitorizados con Uptime Kuma.
Snapshot tomado en el build desde Uptime Kuma — no es un feed en vivo.
[ 08 / Compruébalo tú mismo ]
Corre en tu navegador, contra la API en vivo.
Todas las cifras de arriba se midieron en la fecha que aparece al pie de esta página. Esta no: tu navegador le pregunta directamente a la API de la plataforma e imprime lo que responde — su propia visión de cada subsistema, y su reloj junto al tuyo.
Cifras reconciliadas contra el clúster por última vez el · df583db