- Authors

- Name
- Phillip Pham
- @ddppham
Nginx: Webserver, Reverse Proxy und Kubernetes Ingress Controller
TL;DR
- Nginx ist die Software, die hinter einem Großteil des modernen Webs steckt — vom simplen Webserver über Reverse Proxy bis zum Kubernetes-Ingress-Controller. Eine Software, drei Rollen.
- Webserver: beantwortet Browser-Anfragen — auch bei Millionen Anfragen performant, besonders bei statischen Inhalten.
- Reverse Proxy: Load Balancing, Caching, SSL/TLS, Security und Kompression — der einzige öffentlich erreichbare Einstiegspunkt.
- Kubernetes Ingress Controller: das Pendant für den Cluster — nimmt Traffic an, routet intelligent zu Services.
- Der Ingress Controller ist nicht direkt öffentlich erreichbar — er lebt im Cluster-Netz und wird vom Cloud-Load-Balancer gefüttert. Das ist die entscheidende Sicherheits-Ebene.
Drei Rollen, eine Software
Nginx wurde als Webserver-Software geboren und hat sich zur universellen Proxy-/Traffic-Schicht entwickelt. Die Reise:
- Webserver: Browser → eine Server-Maschine → Webseite zurück.
- Skalierung: Millionen Anfragen → 10 Nginx-Server + Nginx als Load Balancer davor.
- Mehr Funktionen: Caching, Security, TLS, Kompression.
- Kubernetes: Nginx als Ingress Controller — Reverse Proxy für den Cluster.
Rolle 1: Webserver — der Ursprung
Der Browser fragt eine Webseite an, der Nginx-Webserver stellt sie zusammen und liefert sie zurück. Die Stärke liegt in hoher Performance bei statischen Inhalten und vielen gleichzeitigen Verbindungen:
server {
listen 80;
server_name example.com;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
Rolle 2: Reverse Proxy & Load Balancer — die Skalierungs-Stufe
Als die Web-Auslastung stieg, brauchte man mehrere Server:
- Load Balancing: Nginx verteilt Anfragen (Round-Robin oder Least-Busy) auf mehrere Webserver.
- Caching: Eine statische Ressource einmal zusammenstellen, allen ausliefern — spart DB-Zugriffe und Bandbreite.
- Security: Nginx ist der einzige öffentlich erreichbare Einstiegspunkt — statt 100 Server abzusichern, sichert man einen. Reduziert die Angriffsfläche enorm.
- TLS: Nginx akzeptiert nur verschlüsselten Traffic, terminiert SSL, erzwingt HTTPS.
- Kompression: Große Dateien komprimieren und in Chunks senden — spart Bandbreite auf beiden Seiten.
- Intelligentes Routing: nach Headers, Cookies, URL-Pfad — z. B. „/payment → Payment-Service".
upstream backend_servers {
server 10.0.0.1:8080;
server 10.0.0.2:8080;
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/tls/fullchain.pem;
ssl_certificate_key /etc/nginx/tls/privkey.pem;
location / {
proxy_pass http://backend_servers;
proxy_set_header Host $host;
}
}
Alles ist deklarativ konfigurierbar — und klar erkennbar: Proxy-Funktionen haben den proxy_-Präfix, leicht zu unterscheiden von Webserver-Direktiven.
Nginx vs. Express (Node) & Apache
| Nginx | Express (Node) | Apache | |
|---|---|---|---|
| Rolle | Hochleistungs-Webserver + Reverse Proxy | Minimalistisches Web-Framework | Webserver + Proxy |
| Stärke | Statische Inhalte, Konkurrenz, Konfiguration | Dynamische Apps/APIs | Weit verbreitet, flexibel |
| In Produktion | Vorne (static, LB, SSL) | Dahinter (dynamisch) | Älter, weniger performant bei statischen Massen |
Nginx-Vorteile: schneller, leichtgewichtiger, exzellent bei statischen Dateien, klare Konfiguration, stark im Container-Umfeld. In Produktion werden Nginx (vorne) und Express (dahinter, für dynamische Logik) oft kombiniert.
Rolle 3: Kubernetes Ingress Controller
In Kubernetes übernimmt Nginx die Rolle des Reverse Proxy für den Cluster:
- Cloud Load Balancer (z. B. AWS ELB) = öffentlicher Einstieg → Nginx Ingress Controller im Cluster.
- Der Ingress Controller nimmt Traffic an und routet intelligent — z. B. URL-Pfad → Microservice.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: shop
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
ingressClassName: nginx
tls:
- hosts:
- shop.example.com
secretName: shop-tls
rules:
- host: shop.example.com
http:
paths:
- path: /payment
pathType: Prefix
backend:
service:
name: payment-service
port:
number: 8080
- path: /
pathType: Prefix
backend:
service:
name: web-service
port:
number: 80
Wichtig: Der Ingress Controller ist nicht direkt öffentlich erreichbar — er lebt im Cluster-Netz und wird vom Cloud-Load-Balancer gefüttert. Das ist die entscheidende Sicherheits-Ebene: Eine Ebene öffentlich (Cloud-LB), eine Ebene intelligent im Cluster (Ingress), das Backend bleibt privat.
Warum professioneller Nginx-Betrieb wichtig ist
Nginx ist mächtig — aber seine Konfiguration ist auch eine Fehlerquelle:
- Falsches Routing führt zu Ausfällen oder falschen Backends.
- TLS-Fehler (falsche Terminierung oder Weiterleitung) öffnen Sicherheitslücken.
- Security über einen Einstiegspunkt funktioniert nur, wenn wirklich alles durch den Proxy geht — sonst ist die Angriffsfläche nicht reduziert.
- Ingress-Konfiguration in Kubernetes ist Betriebsarbeit: Routing, TLS, Policies müssen laufend gepflegt werden.
- Leistung braucht korrektes Setup: Caching, Kompression und LB-Algorithmen müssen zum Workload passen.
Genau hier unterscheidet sich professioneller Betrieb von „irgendwie lauffähig": Die Ingress-Architektur (Cloud LB + Nginx Ingress), intelligentes Routing, TLS-Terminierung, reduzierte Angriffsfläche und WAF-Integration gehören in ein betriebenes Setup — mit Konfiguration, Updates, Monitoring und Skalierung aus einer Hand.
Fazit
Nginx ist eine der vielseitigsten und schnellsten Komponenten der Web-Architektur:
- Webserver — performant bei statischen Inhalten und Millionen Verbindungen.
- Reverse Proxy — Load Balancing, Caching, TLS, Security, Kompression.
- Ingress Controller — der Reverse Proxy für Kubernetes, mit intelligentem Routing.
- Sicherheits-Ebenen trennen — Cloud-LB außen, Ingress innen, Backend privat.
Wer Nginx versteht und korrekt betreibt, hat ein Fundament, das von der kleinen Website bis zum Kubernetes-Cluster trägt.
FAQ
Ist Nginx ein Webserver oder ein Proxy? Beides — und mehr. Es ist eine Software, die je nach Konfiguration als Webserver, Reverse Proxy, Load Balancer oder Kubernetes-Ingress-Controller arbeitet.
Warum brauche ich Nginx, wenn die Cloud einen Load Balancer hat? Der Cloud-LB ist der äußere Einstieg; der Nginx-Ingress macht das intelligente Routing, TLS und Security im Cluster. Beide Ebenen gehören zusammen.
Nginx oder Express? Beide — in Kombination. Nginx vorne (static, LB, SSL), Express dahinter (dynamische Logik).
Ist der Ingress Controller direkt aus dem Internet erreichbar? Nein. Er lebt im Cluster-Netz und wird vom Cloud-Load-Balancer gefüttert — das ist die entscheidende Sicherheits-Ebene.
Verwandte Artikel
📖 Verwandte Artikel
Weitere interessante Beiträge zu ähnlichen Themen
Proxy, Reverse Proxy & Load Balancer auf Kubernetes erklärt
Proxy, Reverse Proxy & Load Balancer erklärt: wer schützt welche Seite, wie Lastverteilung funktioniert und wie Kubernetes Ingress beide Ebenen verbindet.
Netzwerk-Grundlagen für DevOps & Kubernetes: die Fundamente, die jeder beherrschen muss
Netzwerk-Grundlagen für DevOps & Kubernetes: IP, DNS, Ports, Routing & Network Policies. Vom physischen Server über Cloud, Docker bis zum K8s-Cluster — in 5 Phasen erklärt.
Kubernetes Service Discovery: DNS & Service Mesh (2026)
Kubernetes Service Discovery: CoreDNS, ClusterIP, Headless Services und Service Mesh (Istio, Linkerd). Wann braucht ihr was? Praxis-Empfehlungen.
Agentic AI auf Kubernetes: Was in der Praxis zählt
Agentic AI auf Kubernetes: Warum K8s das Substrat bleibt, welche Schichten (Inference bis Agents) zählen und wo Sandbox, Scheduling und Kosten knifflig werden.
AI auf Kubernetes starten: Plattform statt Roh-Cluster
AI auf Kubernetes starten: Warum K8s flexibel genug ist — und warum ohne Plattform-Schicht (Scheduling, Serving, APIs) Training und Inference scheitern.
GPU in Kubernetes: CDI, Sharing und DRA
GPUs unter Kubernetes verstehen: CDI statt NVIDIA-Docker, Time-Slicing vs. MPS vs. MIG und DRA als flexible Alternative zu den Device-Plugins.
Kubernetes AI at Scale: DRA, LLMD und Inference
Kubernetes wird Accelerator Native: DRA, LLMD, Disaggregated Serving und Inference Gateway für produktive GenAI-Workloads — was Plattform-Teams jetzt brauchen.
KubeVirt: Multi-Tenant-GPU-Clouds auf Kubernetes
KubeVirt als Tenancy-Layer für GPU-Clouds: VMs und Container auf einem Control Plane, DRA für Passthrough/vGPU/MIG sowie NUMA für Performance.