Lektion 6 von 6·10 Min Lesezeit

Production-Betrieb

Ein n8n-Workflow in Production zu betreiben ist grundlegend anders als lokales Testen. Zuverlässigkeit, Skalierung, Sicherheit und Wartbarkeit werden zu den wichtigsten Faktoren.

Monitoring und Observability

Execution-Monitoring

n8n speichert alle Workflow-Ausführungen mit Status, Laufzeit und Daten. Konfigurieren Sie:

EinstellungEmpfehlungGrund
Execution-SpeicherungNur fehlgeschlagene + manuelleReduziert Datenbankgröße
PruningNach 7 Tagen löschenVerhindert unkontrolliertes Wachstum
Error-WorkflowZentral einrichtenSofortige Benachrichtigung bei Fehlern

Externes Monitoring

Ergänzen Sie n8n-internes Monitoring durch:

  • Uptime-Check: Regelmäßiger HTTP-Check auf /healthz
  • Prometheus Metrics: n8n exportiert Metriken (Execution-Count, Dauer, Fehlerrate)
  • Log-Aggregation: Container-Logs in ELK-Stack oder Grafana Loki sammeln
  • Alerting: PagerDuty oder OpsGenie für kritische Fehler

Skalierung

Horizontale Skalierung mit Queue-Mode

Für hohe Last aktivieren Sie den Queue-Mode:

# Main-Instance (steuert Workflows)
N8N_EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis

# Worker-Instances (führen Workflows aus)
n8n worker --concurrency=10

Architektur:

Trigger → Main-Instance → Redis Queue → Worker 1
                                       → Worker 2
                                       → Worker 3

Ressourcen-Planung

SzenarioCPURAMWorkers
Kleine Teams (< 50 Workflows)2 Cores4 GB1 (kein Queue)
Mittelstand (50–200 Workflows)4 Cores8 GB2–3
Enterprise (200+ Workflows)8+ Cores16+ GB5+

Backup-Strategien

Datenbank-Backup

# Tägliches PostgreSQL-Backup
pg_dump -U n8n -d n8n | gzip > /backups/n8n_$(date +%Y%m%d).sql.gz

# Retention: 30 Tage aufbewahren
find /backups -name "n8n_*.sql.gz" -mtime +30 -delete

Workflow-Export

Exportieren Sie Workflows regelmäßig als JSON:

# Alle Workflows exportieren
n8n export:workflow --all --output=/backups/workflows/

# Credentials exportieren (verschlüsselt)
n8n export:credentials --all --output=/backups/credentials/

Version Control für Workflows

Git-Integration

Speichern Sie Workflow-JSON-Dateien in einem Git-Repository:

  1. Export: Workflows als JSON exportieren
  2. Commit: Änderungen mit aussagekräftigen Commit-Messages
  3. Review: Pull-Requests für Workflow-Änderungen
  4. Deploy: CI/CD-Pipeline importiert Workflows automatisch

Environments

Git Repository
├── workflows/
│   ├── production/
│   ├── staging/
│   └── development/
├── credentials/ (nur verschlüsselte Referenzen)
└── README.md

Webhook-Sicherheit

Webhooks sind öffentlich erreichbar — ohne Absicherung ein Sicherheitsrisiko.

Authentifizierung

  • Header-Auth: Erwarten Sie ein geheimes Token im Header
X-Webhook-Secret: {{ $env.WEBHOOK_SECRET }}
  • HMAC-Validierung: Signatur des Request-Body prüfen
  • IP-Whitelisting: Nur bekannte Quell-IPs erlauben

Rate-Limiting

Begrenzen Sie eingehende Requests auf Infrastruktur-Ebene (Nginx, Cloudflare):

limit_req_zone $binary_remote_addr zone=webhooks:10m rate=10r/s;
location /webhook/ {
    limit_req zone=webhooks burst=20 nodelay;
    proxy_pass http://localhost:5678;
}

Praxis-Tipp: Behandeln Sie n8n-Workflows wie Code. Versionieren Sie in Git, nutzen Sie Environments (Dev/Staging/Prod), und deployen Sie über CI/CD. Das verhindert „es funktioniert auf meinem Laptop"-Probleme und ermöglicht Rollbacks bei Fehlern.

📝

Quiz

Frage 1 von 3

Welches Datenbank-Backend wird für n8n im Production-Betrieb empfohlen?