N8N Nedir? Kurumsal Kullanımda Ne İşe Yarar?
n8n, farklı uygulama ve servisleri birbirine bağlamanı sağlayan, no-code / low-code otomasyon ve entegrasyon platformudur. Benzer araçlara örnek olarak Zapier ve Make verilebilir; ancak n8n, açık kaynak yapısı ve self-hosted kurulabilmesiyle kurumsal tarafta öne çıkar.
N8N ile:
-
CRM → Slack / e-posta bildirimleri
-
Web formu → Veritabanı → Google Sheets / BI raporlaması
-
ERP / stok → WhatsApp veya e-posta ile otomatik uyarı
-
İç/ dış API’ler arasında veri senkronizasyonu
-
KVKK / GDPR uyumlu loglama ve denetim izleri
gibi birçok süreci otomatikleştirmek mümkündür.
Kurumsal ihtiyaçlara yönelik n8n kurulumu ve otomasyon danışmanlığı için Sora Yazılım ile çalışabilir, projelerinizi uçtan uca tasarlatabilirsiniz.
n8n Kurulum Seçenekleri: Cloud, Self-Hosted, Docker, On-Prem / VPS
Kurumsal bir firmada n8n kurarken ilk karar: Nerede ve nasıl çalışacak? Aşağıda başlıca seçenekler ve kurumsal bakışla artı-eksi yönleri yer alıyor.
n8n Cloud
Artıları:
-
Sunucu, güvenlik, yedekleme, güncelleme gibi teknik yükler hizmet sağlayıcıda.
-
Hızlı devreye alınır, teknik ekibin zamanını yemez.
-
Küçük ve orta ölçekli ekipler için ideal başlangıç noktasıdır.
Eksileri:
-
Veriler yurt dışındaki bulut sunucularda tutulabilir; bu durum KVKK/GDPR ve veri yerelliği açısından dikkat gerektirir.
-
VPN, IP kısıtlama, on-prem sistemlere direkt erişim gibi konularda self-host kadar esnek olmayabilir.
Self-Hosted n8n (Kendi Sunucunda Çalıştırmak)
Artıları:
-
Sunucu ve veriler tamamen şirket kontrolünde.
-
On-prem ERP, veritabanı ve iç ağdaki sistemlere erişim daha kolay.
-
KVKK / GDPR ve kurumsal güvenlik politikalarına tam uyum sağlamak daha kontrollüdür.
Eksileri:
-
Sunucu yönetimi, güvenlik, patch, backup gibi işler tamamen şirket IT/DevOps ekibinin sorumluluğundadır.
-
Doğru kurgulanmazsa güvenlik riskleri doğabilir.
Docker ile n8n Kurulumu (Önerilen Yaklaşım)
Docker, n8n için en pratik ve kurumsal açıdan en temiz çözümlerden biridir. Genellikle:
-
n8n uygulaması
-
PostgreSQL veritabanı
-
Redis (queue mode için)
-
Nginx / Traefik (reverse proxy + SSL)
gibi bileşenler tek bir Docker Compose dosyası ile yönetilir.
Artıları:
-
Kolay kurulum, kolay güncelleme, hızlı rollback.
-
Uygulamayı izole container’larda çalıştırırsın.
-
DevOps ve CI/CD süreçlerine entegrasyonu kolaydır.
Eksileri:
-
Docker bilmeyen ekipler için ufak bir öğrenme eğrisi vardır.
On-Prem / VPS (Fiziksel Konum Tercihi)
Aslında n8n’in nerede host edileceğini belirler:
-
On-Prem (Şirket içi sunucu)
-
Veri merkeziniz sizde; KVKK, fiziksel güvenlik, network tamamen şirket kontrolündedir.
-
Lokal ERP/DB sistemlerine düşük gecikmeyle erişim sağlanır.
-
-
VPS / Cloud (DigitalOcean, Hetzner, AWS vb.)
-
Altyapı, donanım ve çoğu güvenlik katmanı hizmet sağlayıcıda.
-
Sağlayıcının veri merkezi konumu KVKK/GDPR açısından kontrol edilmelidir.
-
Özet: Kurumsal B2B ve KVKK hassasiyeti yüksek şirketler için, genelde Ubuntu + Docker + Nginx + Postgres + Redis kombinasyonu ile self-hosted n8n en sağlıklı seçenektir.
Adım Adım Docker ile Self-Hosted n8n Kurulumu (Ubuntu Örneği)
Aşağıdaki örnek, Ubuntu 22.04, domain: automation.sirketiniz.com, kurulum tipi: Docker + Nginx reverse proxy + Let’s Encrypt SSL varsayımıyla hazırlanmıştır.
1. Sistem Gereksinimleri
-
İşletim Sistemi: Ubuntu 20.04 / 22.04 (veya benzeri Linux)
-
CPU / RAM: Minimum 2 vCPU, 4 GB RAM (orta ölçekli kurumsal için 4 vCPU, 8 GB daha konforlu)
-
Disk: Veritabanı ve log’lar için yeterli alan (en az 50–100 GB)
-
Domain:
automation.sirketiniz.com(A kaydı sunucu IP’sine yönlenmiş olmalı) -
Açık Portlar:
-
80, 443 → Nginx (HTTP/HTTPS)
-
5432 → PostgreSQL (mümkünse sadece iç ağda)
-
6379 → Redis (sadece iç ağda)
-
2. Docker ve Docker Compose Kurulumu
sudo apt update && sudo apt upgrade -y
curl -fsSL https://get.docker.com | sudo bash
sudo apt install -y docker-compose-pluginsudo usermod -aG docker $USER# Oturumu kapatıp tekrar açın
3. n8n Klasör Yapısının Oluşturulması
mkdir -p /opt/n8n/{data,postgres,redis}
cd /opt/n8n
-
/opt/n8n/postgres→ PostgreSQL data -
/opt/n8n/redis→ Redis data
4. .env Dosyası (Ortam Değişkenleri)
/opt/n8n/.env içeriği örneği:
# Genel
N8N_HOST=automation.sirketiniz.com
N8N_PORT=5678
N8N_PROTOCOL=https
WEBHOOK_URL=https://automation.sirketiniz.com/
N8N_EDITOR_BASE_URL=https://automation.sirketiniz.com/# GüvenlikN8N_ENCRYPTION_KEY=UzunVeGüçlü_Bir_Encryption_Key_Burada
N8N_SECURE_COOKIE=true
N8N_SAMESITE_COOKIE=lax
# Basit arayüz koruması (Basic Auth)N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=n8nadmin
N8N_BASIC_AUTH_PASSWORD=Cok_Guclu_Bir_Sifre_123!
# VeritabanıDB_TYPE=postgresdb
DB_POSTGRESDB_DATABASE=n8n
DB_POSTGRESDB_HOST=postgres
DB_POSTGRESDB_PORT=5432
DB_POSTGRESDB_USER=n8n
DB_POSTGRESDB_PASSWORD=Guclu_DB_Sifre
# Redis (queue mode için)
QUEUE_BULL_REDIS_HOST=redis
QUEUE_BULL_REDIS_PORT=6379
# Execution log ayarları
EXECUTIONS_DATA_SAVE_ON_ERROR=all
EXECUTIONS_DATA_SAVE_ON_SUCCESS=none
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=168 # saat cinsinden, örn: 7 gün
Not:
Bu anahtarların (özellikle N8N_ENCRYPTION_KEY ve DB parolaları) güvenli bir şekilde saklanması ve versiyon kontrolüne (Git vb.) gönderilmemesi gerekir. Bu konuda uzman desteğine ihtiyaç duyarsanız Sora Yazılım ekibinden destek alabilirsiniz.
5. docker-compose.yml Dosyası
/opt/n8n/docker-compose.yml:
version: "3.8"
services:
postgres:
image: postgres:15
restart: unless-stopped
environment:
POSTGRES_USER: n8n
POSTGRES_PASSWORD: Guclu_DB_Sifre
POSTGRES_DB: n8n
volumes:
– ./postgres:/var/lib/postgresql/data
redis:
image: redis:7
restart: unless-stopped
volumes:
– ./redis:/data
n8n:
image: n8nio/n8n:latest
restart: unless-stopped
env_file: .env
ports:
– “5678:5678”
depends_on:
– postgres
– redis
volumes:
– ./data:/home/node/.n8n
command: >
sh -c “n8n start”
networks:
default:
name: n8n-net
6. Nginx ile Reverse Proxy ve SSL Kurulumu
Nginx kurulumu:
sudo apt install -y nginx
Nginx site konfigürasyonu (/etc/nginx/sites-available/automation.sirketiniz.com):
server {
listen 80;
server_name automation.sirketiniz.com;location / {return 301 https://$host$request_uri;
}
}
server {listen 443 ssl http2;
server_name automation.sirketiniz.com;
ssl_certificate /etc/letsencrypt/live/automation.sirketiniz.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/automation.sirketiniz.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:5678/;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
}
}
Site’ı aktif et ve test et:
sudo ln -s /etc/nginx/sites-available/automation.sirketiniz.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Let’s Encrypt ile SSL:
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d automation.sirketiniz.com
7. n8n’i Başlatmak ve İlk Kullanıcıyı Oluşturmak
cd /opt/n8n
docker compose up -d
Ardından tarayıcıdan https://automation.sirketiniz.com adresine gidin:
-
Önce Basic Auth kullanıcı adı/şifre soracaktır (n8nadmin / N8N_BASIC_AUTH_PASSWORD).
-
Daha sonra n8n arayüzünde ilk admin kullanıcı hesabını (e-posta + şifre) oluşturun.
Kurulum Sonrası Yapılması Gerekenler
Credential Yönetimi
-
Tüm API anahtarları, OAuth client bilgileri n8n’in Credentials ekranında tanımlanmalıdır.
-
N8N_ENCRYPTION_KEYasla rastgele değiştirilmemeli; değişirse eski credential’lar çözülemez. -
Hassas bilgiler .env dosyasında tutulmalı; bu dosya kesinlikle repo’ya gönderilmemelidir.
Kullanıcı ve Rol Yönetimi
-
Admin / Owner hesaplarını sınırlı sayıda ve mümkünse IT/DevOps ekibinde tutun.
-
Geliştirici, analist, iş birimi kullanıcılarına daha sınırlı yetkiler verin.
-
“Ortak kullanıcı” kullanmak yerine herkesin kendi hesabı olmasını sağlayın.
Loglama ve Yedekleme
-
Docker loglarını merkezi log yapısına (ELK, Loki vb.) aktarın.
-
PostgreSQL için düzenli backup (günlük / saatlik) alın.
-
/opt/n8n/dataklasörü veN8N_ENCRYPTION_KEYmutlaka yedeklenmelidir.
Güncelleme Stratejisi
-
n8nio/n8n:latestyerine sabit versiyon tag’leri (örn.n8nio/n8n:1.64.0) kullanın. -
Güncellemeden önce staging ortamında test edin.
-
Güncelleme adımları kısaca:
docker pull n8nio/n8n:1.xx.x
docker compose down
docker compose up -d
Monitoring ve Healthcheck
-
Nginx üzerinden bir health URL’i izleyin (örn.
/healthz). -
Prometheus + Grafana gibi araçlarla CPU, RAM, query, Redis ve n8n metriklerini takip edin.
-
Kritik workflow hataları için Slack / e-posta alarmları tanımlayın.
Güvenlik ve KVKK/GDPR Uyumlu Yapı
Kurumsal firmalar için n8n güvenliği en az kurulum kadar kritik bir konudur.
Güvenlik En İyi Uygulamalar (Best Practices)
-
HTTPS zorunlu: Tüm trafik SSL üzerinden geçmeli. HTTP → HTTPS yönlendirmesi Nginx ile şart.
-
Ek kimlik doğrulama:
-
Minimum:
N8N_BASIC_AUTH_ACTIVE=true -
İleri seviye: SSO, LDAP, SAML gibi yöntemler (Enterprise planlarda).
-
-
IP Whitelisting / Firewall:
-
443 portuna sadece belirli ofis IP’lerinden erişim sağlanabilir.
-
Webhook endpoint’leri için hem IP hem de token / signature kontrollü yapı kurulmalı.
-
-
Secrets Management:
-
API anahtarları, DB parolaları, OAuth client secret bilgileri kod içinde sabit yazılmamalı.
-
Env değişkenleri, Vault/Secrets Manager çözümleri tercih edilmeli.
-
-
Least Privilege (En Az Yetki):
-
n8n container’ı root olmayan kullanıcıyla çalışmalı.
-
n8n’in eriştiği sistemlerde (CRM, ERP, DB) sadece gerekli yetkiler verilmelidir.
-
KVKK / GDPR Perspektifi
-
Veri minimizasyonu:
Gereksiz kişisel verileri (TC no, hassas veriler, özel alanlar) hiç çekmemeye çalışın. -
Amaçla sınırlılık:
Bir workflow’un ne amaçla veri işlediğini iş birimleriyle birlikte tanımlayın ve dokümante edin. -
Saklama süresi:
-
EXECUTIONS_DATA_MAX_AGEile execution log’larının otomatik silinmesini sağlayın. -
Loglarda kişisel veri tutuluyorsa KVKK politikalarınıza uygun süreleri belirleyin.
-
-
Şifreleme:
-
n8n’de credential’lar encryption key ile şifrelenir. Bu key’in güvenliği hayati önem taşır.
-
Disk bazlı şifreleme (LUKS, cloud disk encryption) ekstra güvenlik katmanı sağlar.
-
-
Erişim kayıtları ve denetim:
-
Kim hangi workflow’u oluşturdu, güncelledi, çalıştırdı, mümkün olduğunca loglayın.
-
Erişim yetkilerini düzenli olarak gözden geçirin.
-
Performans ve Ölçeklenebilirlik (Queue Mode, Worker Mimarisi)
Kurumsal ölçekte n8n kullanırken, özellikle çok sayıda workflow veya yüksek hacimli veri işliyorsanız queue mode şiddetle tavsiye edilir.
Execution Mode Seçenekleri
Standart Mod (Main)
-
Tek instance hem UI’yi hem workflow yürütmeyi üstlenir.
-
Küçük hacimli senaryolar için uygundur.
-
Ağır job’larda tıkanma ve yavaşlama yaşanabilir.
Queue Mode (Redis + Main + Worker)
-
Main Instance: UI, API, webhook’ları alır; işleri Redis kuyruğuna atar.
-
Worker Instance(lar): Kuyruktan job alır ve workflow’ları çalıştırır.
-
Worker sayısını artırarak yatayda ölçekleme yapabilirsiniz.
Örnek env ayarları:
Main:
EXECUTIONS_MODE=queue
N8N_MODE=main
Worker:
EXECUTIONS_MODE=queue
N8N_MODE=worker
Her ikisinde de aynı Redis bilgileri bulunmalıdır:
QUEUE_BULL_REDIS_HOST=redis
QUEUE_BULL_REDIS_PORT=6379
Rate Limit, Batching, Retry ve Timeout Önerileri
-
API limitlerine takılmamak için
SplitInBatches+Waitnode’larını kullanın. -
Örneğin 10.000 kaydı 100’lük batch’lere bölüp aralarda 1–2 saniye beklemek iyi bir pratik.
-
HTTP Request node’larında:
-
3 denemeli retry, exponential backoff (1s, 3s, 9s) kullanın.
-
Timeout değerlerini makul (30–60 sn) aralıkta tutun.
-
-
Büyük JSON veri setleri yerine ID listeleri ve lazy fetch mantığı kullanın.
Kurumsal Örnek n8n Otomasyon Akışları
Aşağıda kurumsal firmalarda sık kullanılan üç n8n otomasyon senaryosu örnek node yapısıyla verilmiştir.
1) CRM → E-posta / Slack Bildirim Otomasyonu
Amaç: CRM’de yeni lead oluştuğunda veya fırsat (deal) kazanıldığında kaydı satış ekibine otomatik bildirmek.
Örnek Akış:
-
Webhook (Trigger)
-
CRM, “lead.created” veya “deal.won” event’lerinde n8n’e POST atar.
-
-
IF Node
-
lead_statusveyadeal_stagealanına göre filtre yapılır.
-
-
HTTP Request (CRM API)
-
Gerekirse lead / deal detayları yeniden çekilir.
-
-
Function / Set Node
-
Slack ve e-posta mesajı için metinler hazırlanır.
-
-
Slack Node
-
Satış ekibi kanalına özet bilgi gönderilir.
-
-
Email Node
-
İlgili satış temsilcisine veya yöneticilere detaylı e-posta gider.
-
-
Loglama (DB / Log Servisi)
-
Bildirimlerin ne zaman, kime gönderildiği kayıt altına alınır.
-
-
Error Handling
-
Slack/e-posta başarısız olursa ayrı bir hata workflow’u tetiklenir (örneğin IT ekibine alarm).
-
2) Form / Webhook → Veritabanı → Google Sheets / BI Raporlama
Amaç: Web sitesindeki teklif/form verilerini hem veritabanına kaydetmek hem de pazarlama/satış raporlarında kullanmak.
Örnek Akış:
-
Webhook Node
-
Web sitesi formu, n8n webhook’una POST atar.
-
-
Set / Function Node
-
name,email,phone,company,budget,utm_sourcevb. alanlar normalize edilir.
-
-
Postgres Node (Insert)
-
website_leadstablosuna kayıt eklenir.
-
-
Google Sheets Node (Append Row)
-
Raporlama sayfasına bir satır eklenir.
-
-
Slack / Email Node
-
Pazarlama/satış ekibine “Yeni lead geldi” bildirimi gönderilir.
-
-
Error Handling
-
DB insert veya Sheets append başarısız olursa hata log’lanır ve IT uyarılır.
-
3) ERP / Stok Sistemi → WhatsApp veya E-posta ile Otomatik Uyarı
Amaç: Stok belli bir seviyenin altına düştüğünde satınalma/depo ekibini otomatik bilgilendirmek.
Örnek Akış:
-
Cron Node (Trigger)
-
Örneğin her 15 dakikada bir çalışır.
-
-
HTTP Request (ERP API)
-
GET /api/low-stock?threshold=20gibi bir endpoint’ten kritik stoklar çekilir.
-
-
IF Node
-
Dönen liste boş mu? Boşsa workflow sonlandırılır.
-
-
SplitInBatches Node
-
Her stok kaydı ayrı ayrı işlenir.
-
-
Function / Set Node
-
Mesaj formatı hazırlanır.
-
-
HTTP Request (WhatsApp API) veya Email Node
-
Depo/satınalma ekibine otomatik ileti gönderilir.
-
-
Loglama (DB / Log Servisi)
-
Hangi ürüne, ne zaman, hangi kanaldan uyarı gittiği kaydedilir.
-
-
Error Handling
-
WhatsApp veya e-posta gönderilemezse Slack üzerinden IT’ye alarm gider.
-
n8n’de Arıza ve Sorun Giderme (Troubleshooting) İpuçları
Kurumsal ortamda n8n çalıştırırken sık karşılaşılan bazı sorunlar ve hızlı çözüm adımları:
-
Site açılmıyor / 502 Bad Gateway
-
docker psile n8n container çalışıyor mu kontrol edin. -
Nginx
proxy_passadresi doğru mu (127.0.0.1:5678)? -
Nginx error log’larını inceleyin.
-
-
Webhook çalışmıyor
-
Workflow aktif mi?
-
Production Webhook URL ile çağırdığınız URL birebir aynı mı?
-
HTTP method (GET/POST) uyumlu mu?
-
Firewall / WAF istekleri engelliyor olabilir.
-
-
Credential hata veriyor / kaybolmuş gibi görünüyor
-
N8N_ENCRYPTION_KEYdeğişti mi? -
Farklı ortamda (test/prod) açmaya çalışıyor olabilir misiniz?
-
Gerekirse credential’ı baştan tanımlayın.
-
-
Execution stuck / jobs takılı kalıyor (queue mode)
-
Redis çalışıyor mu (
redis-cli ping)? -
Main ve worker instance’larda Redis ayarları aynı mı?
-
Worker loglarında hata var mı?
-
Sonsuz döngüye giren workflow olup olmadığını kontrol edin.
-
-
Cron / Schedule tetiklenmiyor
-
Workflow aktif mi?
-
Sunucu saati ve timezone doğru mu?
-
Cron node ayarı (her X dakika / belirli saat) doğru yapılandırılmış mı?
-
-
Disk doluyor, n8n yavaşlıyor
-
EXECUTIONS_DATA_PRUNEveEXECUTIONS_DATA_MAX_AGEayarları doğru mu? -
Postgres log ve execution tablolarını düzenli temizliyor musunuz?
-
Kurumsal ölçekte n8n kurulum, bakım, güvenlik, KVKK uyumlandırma ve özel otomasyon akışları için profesyonel destek almak isterseniz Sora Yazılım ile iletişime geçebilir, firmanıza özel bir n8n otomasyon mimarisi tasarlatabilirsiniz.
Sık Sorulan Sorular (FAQ)
n8n nedir?
n8n; farklı yazılımları, API’leri ve veritabanlarını birbirine bağlayarak iş süreçlerini otomatikleştirmeyi sağlayan açık kaynaklı bir otomasyon ve entegrasyon platformudur.
n8n kurumsal firmalar için uygun mu?
Evet. Self-hosted kurulabilmesi, Docker desteği, queue mode (main + worker) mimarisi ve açık kaynak yapısı sayesinde kurumsal B2B şirketler için oldukça uygundur. KVKK/GDPR uyumlu mimari kurmak da mümkündür.
n8n’i bulutta mı yoksa kendi sunucumda mı kurmalıyım?
-
KVKK / veri yerelliği / iç ağ sistemlerine erişim öncelikliyse genellikle kendi sunucunuzda (on-prem veya VPS) kurmanız tavsiye edilir.
-
Daha hızlı başlamak isteyen ve veri hassasiyeti düşük olan ekipler için n8n Cloud alternatif olabilir.
n8n kurulumu için teknik destek alabilir miyim?
Evet. n8n kurulumu, Docker + Nginx reverse proxy yapılandırması, güvenlik ve otomasyon tasarımı konularında profesyonel destek için Sora Yazılım ile iletişime geçebilirsiniz.