Saltar a contenido

n8n

Plataforma de automatización de workflows self-hosted, en modo cola.

Resumen

n8n ejecuta automatizaciones conectando APIs, bases de datos y servicios. Corre en k3s con un n8n-main (editor, webhooks y task broker), un n8n-worker con sidecar de task runners, Redis para la cola y PostgreSQL en CloudNativePG.

Estado

Campo Valor
Estado Operativo
Argo CD Application n8n
Namespace n8n

Despliegue

Campo Valor
Método Manifests propios
Chart / imagen n8nio/n8n:2.45.7 y n8nio/runners:2.45.7
Origen clusters/luka/apps/n8n/, clusters/luka/config/n8n/
Config en el repo clusters/luka/config/n8n/, clusters/luka/config/cloudnative-pg/n8n-db*.yaml

Red

Campo Valor
Service n8n-main (ClusterIP) y n8n-redis (ClusterIP)
IP —
Puertos 80 → 5678 (main), 6379 (Redis)
URL interna https://n8n.local.gorkarevilla.com
URL externa https://n8n.gorkarevilla.com
TLS Cloudflare edge (externo) / wildcard cert-manager (interno)

Acceso y usuarios

  • Usuarios/roles: cuenta owner creada en /setup; el editor usa solo el login propio de n8n. Authentik no está delante (evita el doble login; su SSO OIDC requiere licencia Business/Enterprise de n8n).
  • Webhooks/formularios/API/MCP: públicos para que los disparadores externos funcionen. /healthz* también es público para la monitorización de Uptime Kuma.
  • Credenciales: en Vaultwarden (n8n-config, n8n-db-app, n8n-db-superuser, n8n-cnpg-backup). Nunca en claro aquí.

Configuración

  • EXECUTIONS_MODE=queue, Redis n8n-redis, prefijo de cola n8n.
  • Todas las ejecuciones (incluidas manuales) se offloadan al worker.
  • Task runners en modo external: el worker lleva un sidecar n8nio/runners que conecta al broker local 127.0.0.1:5679.
  • N8N_DEFAULT_BINARY_DATA_MODE=database (sin PVC: main y worker comparten los binarios vía Postgres).
  • N8N_BLOCK_ENV_ACCESS_IN_NODE=true (el nodo Code no puede leer $env).
  • Redis protegido con requirepass (N8N_REDIS_PASSWORD en n8n-config).
  • Pruning de ejecuciones: MAX_AGE=720 horas (30 días) y máximo 5.000 ejecuciones, para no llenar el volumen con binarios en la BD.

Almacenamiento

  • Sin PVC para n8n. Workflows, credenciales y binarios en el Cluster CNPG n8n-db (Longhorn 5Gi × 2 instancias).
  • Redis sin persistencia: la cola es efímera.

Dependencias

  • Depende de: CloudNativePG (n8n-db), Redis (n8n-redis), Traefik y cloudflared.
  • Usado por: —.

Backup y recuperación

  • ScheduledBackup n8n-db-daily a las 02:00 → R2 s3://homelab-cnpg-backups/n8n-db, retención 30 días.
  • Restore: ver docs/runbooks/cnpg-backup-restore.md.

Monitorización

  • N8N_METRICS=true en n8n-main; endpoint http://n8n-main.n8n.svc:80/metrics (sin auth, no enrutado por Traefik).
  • ServiceMonitor n8n (namespace monitoring, label release: kube-prometheus-stack) scrapea /metrics cada 30 s.
  • PodMonitor n8n-db scrapea las métricas del CNPG.
  • Sin dashboard ni alertas todavía.

Referencias

Notas

  • Los providers/apps n8n y n8n (interno) siguen en el blueprint de Authentik pero no se usan en las rutas: quedan reservados por si se activa OIDC SSO (requiere licencia n8n Business/Enterprise).
  • Redis sin persistencia: un reinicio pierde trabajos en cola; los workflows siguen en Postgres.