-
Internet
Cualquier visitante, en cualquier parte del mundo.
-
Cloudflare
Primera parada de todo el tráfico de fuera: oculta la IP de casa, filtra ataques y guarda copias en caché cerca del visitante.
-
Mi móvil (Element)
Desde Element hablo con Hermes y recibo avisos y mensajes, esté donde esté.
-
Router MikroTik
Conectado directamente a la fibra. Red separada por VLANs, cortafuegos auditado y VPN WireGuard para entrar desde fuera.
-
Dispositivos de casa
Portátiles, la tele, los móviles: todo lo que se conecta a la red de casa, separado por VLANs.
-
PC con GPU (Ollama)
El modelo de lenguaje de Hermes corre aquí, en local: nada sale de mi red. Si el PC está apagado, las preguntas esperan en cola.
- LLM locales (Ollama, Qdrant, RAG)
-
Repositorio Git
Toda la infraestructura vive como código versionado. Cada cambio empieza aquí.
-
Traefik
La única puerta pública del servidor: certificados TLS automáticos y una ruta por servicio publicado. Los paneles internos no pasan por aquí.
-
Caddy + Authelia
Entrada a los paneles internos, solo desde casa o la VPN, con inicio de sesión único y doble factor.
-
Technitium DNS
Resuelve los nombres internos y bloquea publicidad y rastreadores en toda la casa. Migrado desde Pi-hole sin perder una consulta.
-
Sincronizador de IP
Mi conexión no tiene IP fija: cada 5 minutos comprueba la IP pública y, si cambia, actualiza Cloudflare para que los dominios sigan apuntando a casa.
-
Esta web
Un binario de Rust de 11 MB que usa unos 12 MB de RAM, en su propio contenedor sin privilegios y con el cortafuegos más estricto del servidor.
-
PostgreSQL
Guarda los mensajes del formulario. Sin red: solo se le habla por el socket local.
-
Matrix (Synapse + Element)
Mi propio servidor de mensajería. Aquí viven Hermes, los avisos del servidor y los mensajes de esta web.
-
Paperless-ngx
Digitaliza y clasifica documentos con OCR. Aislado del resto a propósito: guarda papeles personales.
-
Obsidian
La documentación del homelab: procedimientos, incidentes y postmortems. Hermes la consulta para responder.
-
n8n
Automatizaciones entre servicios: tareas programadas y avisos.
-
Homepage
El panel de entrada a todos los servicios, generado por Ansible desde la misma lista que usa Traefik.
-
Servidores de juegos (AMP)
Servidores de juegos para amigos, con apertura automática del cortafuegos solo mientras están encendidos.
-
Plex
El servidor multimedia de la casa, con transcodificación por hardware.
-
Biblioteca automatizada (*arr)
Un conjunto de servicios que mantiene la biblioteca ordenada sola: nombres, metadatos, subtítulos y la calidad que elijo.
-
TV en directo
Canales públicos de TDT con su guía de programación, servidos a Plex como si fuera un sintonizador.
-
GPU passthrough
Una GPU NVIDIA asignada al contenedor de Plex para convertir vídeo por hardware sin cargar la CPU.
-
Hermes (asistente de IA)
El bot que responde sobre el estado del servidor en lenguaje natural. El de esta página es su versión sin IA.
- Python
- LLM locales (Ollama, Qdrant, RAG)
-
Qdrant
Base de datos vectorial: guarda la documentación y las conversaciones para que Hermes encuentre lo relevante (RAG).
- LLM locales (Ollama, Qdrant, RAG)
-
Zabbix
Métricas y alertas de cada máquina: CPU, discos, RAID, ZFS, contenedores Docker.
-
Wazuh
Seguridad: vulnerabilidades, inicios de sesión sospechosos y comprobaciones CIS en todos los contenedores.
-
Nodo de control IaC
Desde aquí Terraform crea las máquinas y Ansible las configura. También corren aquí los agentes de IA con los que trabajo.
-
Almacenamiento ZFS
Pools ZFS y RAID por software para los sistemas y la biblioteca, vigilados por Zabbix.
-
Proxmox VE
El hipervisor: unos veinte contenedores LXC y las máquinas virtuales del laboratorio.
-
Clúster OpenShift (OKD)
Tres nodos para practicar OpenShift: 3/3 Ready y 33/33 operadores sanos.
- OpenShift (OKD)
- Kubernetes / K3s
-
Respaldo del repositorio
Un segundo repositorio que se actualiza solo en cada commit de la infraestructura.
Vista simplificada: sin direcciones, puertos ni nombres internos.