Nur für unsere Blog-Besucher: Zusätzlich 3 Monate gratis + 10 % Rabatt auf den Dreijahresplan YSBLOG10
Schnapp dir den Deal

Was ist ein Load Balancer auf einem Linux-Server? + Einrichtungsanleitung (2026)

Ein Load Balancer auf einem Linux-Server ist eine Software, die den eingehenden Datenverkehr auf mehrere Backend-Server verteilt, um Verfügbarkeit, Leistung und Zuverlässigkeit zu verbessern.

Es überwacht den Serverzustand, leitet jede Anfrage mithilfe von Algorithmen (Round-Robin, Least Connections) an das beste Ziel weiter und kann beenden. SSLInhalte zwischenspeichern, Sicherheit gewährleisten und horizontal zu geringen Kosten skalieren.

In diesem Leitfaden erfahren Sie, wie ein Load Balancer unter Linux funktioniert und worin der Unterschied zwischen Schicht 4 und Schicht 7 Vorgehensweisen, wann man HAProxy wählen sollte Nginxoder IPVS, und wie man mit Keepalived einen produktionsreifen, hochverfügbaren Load Balancer bereitstellt.

Wir verwenden praktische Beispiele, die Sie nachahmen können und die auf realen Hosting-Erfahrungen basieren.

Was ist ein Load Balancer auf einem Linux-Server?

Ein Linux-Loadbalancer ist typischerweise HAProxy. Nginxoder IPVS (LVS), das auf einer Linux-Distribution (Ubuntu, Debian, AlmaLinux, Rocky usw.) läuft.

Load Balancer auf einem Linux-Server

Es befindet sich vor mehreren Anwendungsservern und leitet den Datenverkehr intelligent weiter. Neben der Verteilung führt es auch Integritätsprüfungen und Sitzungspersistenz durch. SSL Entlastung und Verkehrsgestaltung.

Ebene 4 vs. Ebene 7 (Was Sie tatsächlich ausbalancieren)

Das Verständnis der verschiedenen Ebenen verdeutlicht Fähigkeiten und Kosten:

  • Schicht 4 (Transport)Funktioniert nur mit TCP/UDP. Schnell und effizient. Untersucht keine HTTP-Inhalte. Tools: IPVS (LVS), HAProxy im TCP-Modus.
  • Schicht 7 (Anwendung)Versteht HTTP/HTTPS-Header, Pfade, Cookies und Methoden. Ermöglicht erweitertes Routing, WAF, Caching, Komprimierung und Sticky Sessions. Tools: HAProxy HTTP-Modus. Nginx, Gesandter, Traefik.
  • HAProxy (L4/L7): Hohe Leistung, umfassende Integritätsprüfungen, TLS, Client-Verbindungen, Beobachtbarkeit. Hervorragende Standardeinstellung für Webanwendungen und APIs.
  • Nginx (L7): Reverse-Proxy mit ausgereiften HTTP-Funktionen, HTTP/2, Caching und statischer Auslagerung. Ideal für Web-Workloads und inhaltsreiche Websites.
  • LVS/IPVS (L4): Lastverteilung auf Kernel-Ebene für sehr hohen Durchsatz und extrem geringen Overhead.
  • Keepalived: Fügt HAProxy Hochverfügbarkeit (VRRP virtuelle IP) und zustandsbasiertes Failover hinzu.Nginx/IPVS.

Warum einen Linux Load Balancer verwenden? Vorteile und Anwendungsfälle

  • Hohe Verfügbarkeit: Ausfallende Server automatisch entfernen; für Failover eine Floating VIP verwenden.
  • Horizontale Skalierung: Hinzufügen oder Entfernen von Backend-Knoten ohne Ausfallzeiten.
  • SicherheitZentralisierung von TLS, Ratenbegrenzung, Bot-Filterung und grundlegenden WAF-Regeln.
  • Leistung: Verbindungspooling, HTTP/2, Caching, Komprimierung und TCP-Optimierungen.
  • KostenkontrolleOpen-Source- und Standard-Linux-Hardware schlägt viele managed Preismodelle pro GB in großem Umfang.

Gemeinsame Architekturen

Einzelner Reverse-Proxy (klein bis mittelgroß)

Ein HAProxy oder Nginx Ein Node-Front-Server steuert 2–5 Anwendungsserver an. Einfach zu bedienen. manageAllerdings stellt es ohne Snapshots und schnelle Wiederherstellung einen Single Point of Failure dar. Am besten geeignet für Entwicklungs-, Staging- oder kleinere Websites.

Aktiv–Standby mit Keepalived (Produktion)

Zwei Load Balancer teilen sich eine virtuelle IP-Adresse (VIP) über VRRP. Fällt der primäre Load Balancer aus, übernimmt der sekundäre automatisch. Dies ist das gängigste Produktionsmuster für Web- und E-Commerce-Anwendungen.

IPVS auf L4 für extremen Durchsatz

Kernelbasierter Lastausgleich mit IPVS ermöglicht Millionen gleichzeitiger Verbindungen mit minimalem Aufwand. CPU Verwendung. Wird für APIs mit extrem hohem Datenverkehr, Gaming oder Streaming verwendet, oft in Kombination mit Keepalived für VIP-Failover.

Wie man die richtige Wahl trifft: HAProxy vs. Nginx vs. IPVS

  • Wählen Sie HAProxy. Wenn Sie erweiterte Gesundheitsprüfungen, TCP- und HTTP-Unterstützung, detaillierte Metriken, Adhäsion, ACLs und Zuverlässigkeit auf Unternehmensebene für APIs und Anwendungen benötigen.
  • Wählen Nginx Wenn Sie einen leistungsstarken HTTP-Reverse-Proxy mit Caching, statischer Auslagerung und einfacher Integration in Web-Stacks benötigen.
  • Wählen Sie IPVS Wenn Sie reine Layer-4-Geschwindigkeit mit minimalem Overhead wünschen und kein inhaltsbasiertes Routing benötigen.

Schritt für Schritt: Einen produktionsreifen Linux-Load-Balancer einrichten

Voraussetzungen und Netzwerkplan

  • Zwei Linux-VMs für Load Balancer (LB1, LB2) und 2+ Backend-Anwendungsserver (APP1, APP2).
  • Privates Netzwerk (z. B. 10.0.0.0/24). VIP: 10.0.0.100.
  • DNS Eintrag für Ihre Domain, der auf den VIP (A/AAAA) verweist.
  • Die Firewall erlaubt den Datenverkehr über Port 80/443 zum VIP und über Port 80/443 vom Load Balancer zu den Backends.

Option A: HAProxy (L7) – Installieren und Konfigurieren

Auf Ubuntu/Debian:

sudo apt update && sudo apt install -y haproxy
sudo systemctl enable --now haproxy

Minimales HTTPS-Offloading + Integritätsprüfungen + persistente Sitzungen:

# /etc/haproxy/haproxy.cfg
global
  log /dev/log local0
  maxconn 10000
  tune.ssl.default-dh-param 2048

defaults
  log global
  mode http
  option httplog
  option dontlognull
  timeout connect 5s
  timeout client  30s
  timeout server  30s

frontend web_in
  bind *:80
  bind *:443 ssl crt /etc/ssl/private/example.pem alpn h2,http/1.1
  http-request redirect scheme https unless { ssl_fc }
  default_backend app_pool

backend app_pool
  balance roundrobin
  option httpchk GET /health
  http-check expect status 200
  cookie SRV insert indirect nocache
  server app1 10.0.0.11:80 check cookie A
  server app2 10.0.0.12:80 check cookie B

# reload
# sudo haproxy -c -f /etc/haproxy/haproxy.cfg && sudo systemctl reload haproxy

APIs, berücksichtigen balance leastconn, Fügen option http-buffer-request und die Timeout-Werte basierend auf der Anfrage-/Antwortgröße anpassen.

Option B: Nginx (L7) — Lastverteilung für Reverse-Proxys

sudo apt update && sudo apt install -y nginx
sudo systemctl enable --now nginx

Grundlegende Upstream-Funktionen mit HTTPS und HTTP/2:

# /etc/nginx/conf.d/loadbalancer.conf
upstream app_upstream {
  least_conn;
  server 10.0.0.11:80 max_fails=3 fail_timeout=10s;
  server 10.0.0.12:80 max_fails=3 fail_timeout=10s;
  keepalive 64;
}

server {
  listen 80;
  server_name example.com;
  return 301 https://$host$request_uri;
}

server {
  listen 443 ssl http2;
  server_name example.com;

  ssl_certificate     /etc/ssl/certs/fullchain.pem;
  ssl_certificate_key /etc/ssl/private/privkey.pem;

  location / {
    proxy_pass http://app_upstream;
    proxy_http_version 1.1;
    proxy_set_header Connection "";
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }

  location /health {
    return 200 'ok';
  }
}

# test and reload
# sudo nginx -t && sudo systemctl reload nginx

Option C: IPVS (L4) – Ultraschneller Kernel-Lastausgleich

Installieren Sie die Tools und erstellen Sie einen virtuellen Dienst im NAT-Modus:

sudo apt install -y ipvsadm keepalived

# Create VIP 10.0.0.100:80 with round robin
sudo ipvsadm -A -t 10.0.0.100:80 -s rr
sudo ipvsadm -a -t 10.0.0.100:80 -r 10.0.0.11:80 -m
sudo ipvsadm -a -t 10.0.0.100:80 -r 10.0.0.12:80 -m

# View stats
ipvsadm -Ln --stats

IPVS unterstützt Direct Routing (DR) und vollständiges NAT. DR bietet eine höhere Leistung, erfordert jedoch eine ARP-/Realserver-Optimierung; NAT ist einfacher zu bedienen.

Hochverfügbarkeit mit Keepalived (VRRP) hinzufügen

Keepalived stellt einen Floating VIP bereit, der automatisch zwischen LB1 und LB2 umschaltet.

# /etc/keepalived/keepalived.conf (LB1)
vrrp_script chk_haproxy {
  script "/usr/bin/pgrep haproxy"
  interval 2
  fall 2
  rise 2
}

vrrp_instance VI_1 {
  state MASTER
  interface eth0
  virtual_router_id 51
  priority 150
  advert_int 1
  authentication {
    auth_type PASS
    auth_pass 42secret
  }
  virtual_ipaddress {
    10.0.0.100/24 dev eth0
  }
  track_script {
    chk_haproxy
  }
}

# LB2: set state BACKUP and priority 100
# sudo systemctl enable --now keepalived

Tausche das Gesundheitsskript aus, um zu prüfen Nginx oder IPVS nach Bedarf (z.B. pgrep nginx oder ein HTTP-Prüfskript).

Grundlagen der Leistungsoptimierung

Kernel- und Dateideskriptor-Optimierung

# /etc/sysctl.d/99-lb.conf
net.core.somaxconn=65535
net.ipv4.ip_local_port_range=1024 65000
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_fin_timeout=15
net.core.netdev_max_backlog=250000
net.ipv4.tcp_max_syn_backlog=262144
fs.file-max=1000000

# Apply
# sudo sysctl --system

# Increase nofile for HAProxy/Nginx
# /etc/security/limits.d/99-nofile.conf
haproxy soft nofile 500000
haproxy hard nofile 500000
nginx   soft nofile 500000
nginx   hard nofile 500000

TLS- und HTTP-Optimierungen

  • Aktivieren Sie HTTP/2 und moderne Verschlüsselungsverfahren; verwenden Sie OCSP-Stapling.
  • Verwenden Sie Keep-Alive für Backends und optimieren Sie die Wiederverwendungseinstellungen.
  • Bevorzugen Mindestverbindungen bei ungleichen Anfragezeiten; verwenden Round Robin für homogene Arbeitslasten.
  • gzip/brotli aktivieren (Nginx) und erwägen Sie das Caching statischer Assets.

Checkliste zur Sicherheitshärtung

  • TLS auf dem Load Balancer beenden; HSTS und starke Verschlüsselungen erzwingen.
  • Missbrauchende IPs sollen beschränkt und grundlegende Bot-Schutzmaßnahmen hinzugefügt werden.
  • Implementieren Sie eine WAF (Nginx ModSecurity oder HAProxy ACLs) für gängige Angriffsmuster.
  • Beschränken Sie die Admin-/Statusseiten nach IP-Adresse oder Authentifizierung.
  • Halten Sie Betriebssystem und Pakete auf dem neuesten Stand; automatisieren Sie Aktualisierungen und Konfigurationen unbeaufsichtigt. management.

Fehlerbehebung: Schnellbefehle

  • Hörer überprüfen: ss -lntp | egrep '80|443'
  • Serviceprotokolle prüfen: journalctl -u haproxy -f or journalctl -u nginx -f
  • Endpunkte für die Gesundheitsprüfung: curl -I http://APP:80/health
  • Erreichbarkeit von VIPs: curl -I -k https://VIP
  • IPVS-Statistiken: ipvsadm -Ln --stats
  • Paketerfassung: sudo tcpdump -ni eth0 host VIP and port 443

Kosten und Skalierbarkeit: Selbst gehostet vs. Cloud

  • Selbst gehostet (Linux + HAProxy/Nginx/IPVS)Niedrige Softwarekosten, volle Kontrolle, hervorragende Leistung. Sie manage HA, Skalierung, Patching.
  • Cloud-Load-Balancing (ELB, Cloud Load Balancing)Verwaltet und flexibel mit stündlichen und datenverarbeitungsbezogenen Kosten. Weniger Kontrolle, einfache Multi-AZ/Region-Verwaltung.
  • HybridAus Kostengründen und hinsichtlich der Flexibilität sollten Cloud-LBs am Edge und Linux-LBs innerhalb von Clustern eingesetzt werden.

Wenn Sie es vorziehen managed Infrastruktur ohne Leistungseinbußen, YouStable managed Server und Load Balancer Setups können HAProxy bereitstellen/Nginx Mit Keepalived, Überwachung und gehärtetem TLS für Sie – ideal, wenn Sie Ergebnisse und nicht nur technische Details wollen.

Praxistipps aus der Produktion

  • Fangen Sie einfach anL7 HAProxy mit zwei Backends löst 80% der Fälle.
  • Gesundheitschecks sind wichtig: Verwenden Sie Prüfungen auf Anwendungsebene (z. B. /health), die Abhängigkeiten wie Datenbank und Cache überprüfen.
  • Plan-HaftungFür sitzungsgebundene Anwendungen sollten Sie HAProxy-Cookies verwenden oder Nginx IP-Hash. Bevorzugen Sie nach Möglichkeit zustandslose Sitzungen mit einem gemeinsamen Speicher.
  • Beobachten Sie alles: HAProxy exportieren/Nginx Metriken an Prometheus senden und mit Grafana visualisieren. Baselines verhindern Überraschungen.
  • Test-Failover: Üben Sie das Ziehen des Steckers an LB1, um das VRRP-Failover und das Verhalten der Clientsitzung zu überprüfen.

Häufig gestellte Fragen – Load Balancer auf Linux-Servern

Is Nginx Ein Load Balancer oder nur ein Webserver?

Nginx Es ist beides. Als Reverse-Proxy verteilt es HTTP/HTTPS-Traffic mithilfe von Algorithmen wie Round Robin und Least Connections, unterstützt HTTP/2, Caching, Komprimierung und grundlegende WAF-Funktionen. Es wird häufig als L7-Loadbalancer vor Anwendungsservern eingesetzt.

Welches System eignet sich besser für den Linux-Lastausgleich: HAProxy oder Nginx?

Für reines Load Balancing mit umfassenden Integritätsprüfungen, Verbindungsverwaltung und erweiterten Zugriffskontrolllisten (ACLs) ist HAProxy im Allgemeinen führend. Benötigen Sie neben dem Proxying auch die Bereitstellung und das Caching statischer Dateien, Nginx ist überzeugend. Viele Stacks nutzen HAProxy am Edge und Nginx auf App-Knoten.

Worin besteht der Unterschied zwischen einem Reverse-Proxy und einem Load Balancer?

Ein Reverse-Proxy befindet sich vor den Servern und leitet Anfragen weiter; ein Load Balancer ist ein Reverse-Proxy, der den Datenverkehr auf mehrere Backends verteilt und Integritätsprüfungen sowie Failover durchführt. Alle Load Balancer sind Reverse-Proxys, aber nicht alle Reverse-Proxys führen Load Balancing durch.

Benötige ich Sticky Sessions für meine App?

Verwenden Sie Sticky Sessions, wenn Ihre App den Benutzerstatus im Arbeitsspeicher speichert und nicht extern teilen kann. Andernfalls sind zustandslose Sessions mit Redis oder datenbankgestützten Speichern vorzuziehen. Zustandslose Architekturen skalieren besser und reduzieren eine ungleichmäßige Lastverteilung.

Wie kann ich meinen Linux-Loadbalancer hochverfügbar machen?

Setzen Sie zwei Load-Balancer-Knoten ein und nutzen Sie Keepalived (VRRP) zur gemeinsamen Nutzung einer virtuellen IP-Adresse. Fügen Sie Integritätsprüfungen hinzu, um einen ausgefallenen primären Knoten herabzustufen, die Konfigurationen synchron zu halten und das Failover regelmäßig zu testen. Optional können Sie die Knoten in verschiedenen Verfügbarkeitszonen betreiben.

Fazit - Load Balancer auf einem Linux-Server

Das Einrichten eines Load Balancers auf einem Linux-Server ist unkompliziert und leistungsstark. Beginnen Sie mit HAProxy oder NginxFügen Sie Keepalived für Hochverfügbarkeit hinzu und optimieren Sie Kernel, TLS und Observability. Wenn Sie dies lieber nicht möchten. manage die Nuancen, YouStable Wir können eine sichere, leistungsstarke Load-Balancing-Schicht entwerfen, bereitstellen und betreiben, die auf Ihre Arbeitslast zugeschnitten ist.

Teilen per:

Sanjeet Chauhan

Sanjeet Chauhan ist Blogger und SEO-Experte und unterstützt Webseiten dabei, organisch zu wachsen. Er teilt praktische Strategien, umsetzbare Tipps und Erkenntnisse, um den Traffic zu steigern, das Ranking zu verbessern und die Online-Präsenz zu maximieren.

Hinterlasse einen Kommentar

E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind MIT * gekennzeichnet. *

Nach oben scrollen