From 00f48750e7a1cf64681c81b84377dbe2a9220efb Mon Sep 17 00:00:00 2001 From: "victor.fraile" Date: Wed, 25 Mar 2026 16:22:50 +0000 Subject: [PATCH] =?UTF-8?q?A=C3=B1adir=20homelab/platform-40/docs/arquitec?= =?UTF-8?q?tura.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- homelab/platform-40/docs/arquitectura.md | 79 ++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 homelab/platform-40/docs/arquitectura.md diff --git a/homelab/platform-40/docs/arquitectura.md b/homelab/platform-40/docs/arquitectura.md new file mode 100644 index 0000000..6a91a62 --- /dev/null +++ b/homelab/platform-40/docs/arquitectura.md @@ -0,0 +1,79 @@ +# Arquitectura + +## Papel de platform-40 + +`platform-40` es la pieza central del plano de datos de MESAVAULT. + +No debe tratarse como frontal web de cliente. + +Su papel es alojar: + +- stack base de datos y servicios +- broker MQTT interno +- ChirpStack core +- PostgreSQL +- verticales activas +- servicios auxiliares de control y persistencia + +## Separación correcta con OVH + +La arquitectura consolidada separa claramente dos planos: + +### OVH +- frontera pública +- publicación web +- identidad +- Traefik +- Authentik +- tenant Grafana del cliente +- ingress LoRaWAN + +### platform-40 +- backend real +- plano de datos +- servicios internos +- persistencia +- control +- telemetría +- verticales MESAVAULT + +## Flujo LoRaWAN final consolidado + +Patrón final documentado: + +DLOS8N +→ `lora.mesavault.es` +→ VPS OVH UDP 1700 +→ ChirpStack Gateway Bridge +→ MQTT hacia `platform-40` por Tailscale +→ broker interno / ChirpStack core en `platform-40` + +## Arquitectura interna base + +### `/srv/platform` +Stack base: +- Grafana +- MinIO +- Mosquitto +- Portainer + +### `/srv/chirpstack` +Stack ChirpStack: +- `cs_chirpstack` +- `cs_postgres` +- `cs_redis` + +### `/srv/verticals` +Patrón de verticales: +- una carpeta por vertical +- compose propio +- template base disponible + +## Caso drenaje + +En la vertical de drenaje: +- OVH publica y autentica +- `platform-40` ejecuta y persiste +- el dashboard del cliente vive en OVH +- la lógica real vive aquí +- `drain-control` se publica localmente en `192.168.40.100:8088` \ No newline at end of file