n8n self-hospedado: fila com Redis + observabilidade completa
Contexto#
n8n rodando em n8n.castroti.com.br — infraestrutura própria em vez de depender
do plano cloud deles. É onde ficam as automações que sustentam outros projetos
meus, incluindo parte da orquestração do pipeline de Leads Migre.
Arquitetura#
Traefik (TLS + rate limit)
│
▼
n8n (editor/API) ──┐
│ │
n8n-worker (fila) │
│ │
Postgres Redis (fila)
- Modo fila (
EXECUTIONS_MODE=queue) — worker separado do processo principal, escala independente - Postgres — persistência de workflows e execuções
- Redis — fila de jobs (Bull)
- Traefik — TLS automático, rate limit (
10 req/s, burst20) na frente do editor/webhooks
Observabilidade#
- Prometheus — métricas do n8n (
N8N_METRICS=true, incluindo métricas de fila) e do host (node-exporter) - cAdvisor — métricas de container
- Loki + Promtail — centralização de logs de todos os containers
- Grafana — dashboards unificando tudo, atrás do próprio Traefik com TLS
Por que montar em vez de usar o n8n Cloud#
- Dados dos workflows (inclusive credenciais de automações de clientes) ficam no meu servidor, não em terceiro
- Observabilidade integrada com o resto da minha stack (mesmo padrão Prometheus/Loki/Grafana usado em outros projetos)
- Sem limite de execução por plano — modo fila escala conforme a demanda real
Tecnologias#
n8n · Docker Compose · PostgreSQL · Redis · Traefik · Prometheus · Loki · Grafana · cAdvisor