Heim >System-Tutorial >LINUX >Haproxy auf Ubuntu: Lastausgleich und Failover für eine belastbare Infrastruktur

Haproxy auf Ubuntu: Lastausgleich und Failover für eine belastbare Infrastruktur

Joseph Gordon-Levitt
Joseph Gordon-LevittOriginal
2025-03-05 09:06:11603Durchsuche

HAProxy on Ubuntu: Load Balancing and Failover for Resilient Infrastructure

Einführung

In der heutigen schnelllebigen digitalen Umgebung ist die Sicherstellung der Verfügbarkeit und Leistung von Anwendungen von entscheidender Bedeutung. Die moderne Infrastruktur erfordert leistungsstarke Lösungen, um den Verkehr effizient zuzuweisen und die Verfügbarkeit von Service auch im Falle eines Serverausfalls beizubehalten. hraproxy als tatsächlicher Standard für Hochleistungslastausgleich und Failover, es wurde entstanden.

In diesem Artikel wird die Synergie zwischen Haproxy und Ubuntu, einer der beliebtesten Linux -Verteilungen, untersucht. Von der Installation bis zur erweiterten Konfiguration werden wir uns mit der Veränderung Ihrer Infrastruktur mit Lastausgleichs- und Failover -Funktionen befassen.

Detaillierte Erläuterung des Lastausgleichs

Lastausgleich ist der Prozess der Zuordnung eines eingehenden Netzwerkverkehrs für mehrere Server. Durch das Ausgleich der Last wird sichergestellt, dass kein einzelner Server überfordert ist, wodurch die Leistung, Zuverlässigkeit und Fehlertoleranz verbessert wird.

Hauptvorteile:

  • Skalierbarkeit: Trainingsverkehr durch Hinzufügen weiterer Server.
  • Zuverlässigkeit: Einfach die Auswirkungen des Serverausfalls durch Weiterleiten des Datenverkehrs auf einen normalen Server.
  • Leistung: Latenz reduzieren, indem die Workloads gleichmäßig verteilt werden.

Lastausgleichstyp:

  • Schicht 4 (Transportschicht): Verkehr nach IP- und Portinformationen verteilen.
  • Schicht 7 (Anwendungsschicht): Routing-Entscheidungen basierend auf Daten auf Anwendungsebene (z. B. HTTP-Header).

Failover -Konzept

Failover stellt die Kontinuität sicher, indem der Verkehr automatisch umgeleitet wird, um Ressourcen im Falle eines großen Ressourcenversagens zu sichern. Es ist der Eckpfeiler der hohen Verfügbarkeit (HA)

.

Mit Haproxy ist Failover nahtlos:
  • Wenn der Backend -Server nicht verfügbar ist, erkennt Haproxy ihn durch eine Gesundheitsprüfung.
  • Verkehr wird auf andere verfügbare Server umgeleitet, wodurch ein ununterbrochener Service beibehalten wird.

Haproxy auf Ubuntu

setzen

Beginnen wir mit der Installation und Konfiguration von Haproxy auf Ubuntu.

Voraussetzung:

  • ein Ubuntu -Server (empfohlen, 20.04 oder höher zu verwenden).
  • Mehrere Backend -Server zum Testen von Lastausgleich.
  • Grundlegende Linux -Befehlszeilenfähigkeiten.

Schritt 1: Installieren Sie Haproxy

  1. sudo apt update && sudo apt upgrade -y aktualisieren Sie Ihr System:
  2. sudo apt install haproxy -y Installieren von Haproxy:
  3. haproxy -v Installation überprüfen:

Schritt 2: Konfigurieren Sie Haproxy /etc/haproxy/haproxy.cfg Bearbeiten

Konfigurationsdatei:
<code>global
    log /dev/log local0
    log /dev/log local1 notice
    maxconn 2048
    daemon
defaults
    log global
    option httplog
    option dontlognull
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms
frontend http_front
    bind *:80
    default_backend http_back
backend http_back
    balance roundrobin
    server server1 192.168.1.101:80 check
    server server2 192.168.1.102:80 check</code>
  1. starten Sie Haproxy neu, um Änderungen anzuwenden: sudo systemctl restart haproxy
  2. Test durch Zugriff auf die IP -Adresse des Servers. Haproxy wird Anfragen zwischen Backends bereitstellen.

Erweiterte Konfiguration

Lastausgleich Algorithmus:

  • Umfrage: Nacheinander Anfragen zuweisen.
  • Anzahl der Verbindungen: mit den am wenigsten aktiven Verbindungen an den Server weitergeleitet.
  • Quelle: Stellen Sie sicher, dass der Client immer auf denselben Server weitergeleitet wird.

Aktualisieren Sie die balance -Richtlinie im Backend entsprechend.

Gesundheitsprüfung: Gesundheitsprüfung stellt sicher, dass der Datenverkehr nur an normale Server gesendet wird. check Die Anweisung führt regelmäßige Gesundheitskontrollen durch.

SSL -Beendigung: , um den Verkehr zu schützen, Haproxy so konfigurieren, dass sie die SSL -Beendigung bearbeiten.

  1. Holen Sie sich das SSL -Zertifikat.
  2. Konfiguration aktualisieren, um https zu verwenden: frontend https_front bind *:443 ssl crt /etc/haproxy/certs/example.pem default_backend http_back

Zugriffskontrollliste (ACL): Filterverkehr mit ACL:

Filterverkehr
<code>frontend http_front
    acl is_api path_beg /api
    use_backend api_back if is_api</code>

Aktivieren Sie die hohe Verfügbarkeit

vrrp mit keepalived: Um Failover zu ermöglichen, integrieren Sie Keepalived in Haproxy.

  1. Installieren von KeepAlived: sudo apt install keepalived -y
  2. Konfiguration KeepAlived (/etc/keepalived/keepalived.conf):
<code>vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass mypassword
    }
    virtual_ipaddress {
        192.168.1.100
    }
}</code>
  1. neu starten Sie Keepalived: sudo systemctl restart keepalived

KeepAlived stellt sicher, dass der Sekundärserver nahtlos übernimmt, wenn der primäre Server fehlschlägt.

Überwachung und Leistungsstimmung

Haproxy Statistics Panel: Aktivieren Sie das Panel für die Echtzeitüberwachung:

<code>listen stats
    bind *:8404
    stats enable
    stats uri /stats
    stats auth admin:password</code>

greifen Sie in http://<server-ip>:8404/stats</server-ip> darauf zu.

Optimierungsfähigkeiten:

  • Passen Sie die Einstellungen maxconn und timeout an.
  • Verwenden Sie die GZIP -Komprimierung für den HTTP -Verkehr.
  • Überwachen Sie Ausnahmen im Protokoll.

Benutzerfälle und tatsächliche Szenarien

  • Microservices: API -Anforderungen an mehrere Dienste zuweisen.
  • Webanwendung: Verwandte Verkehrspikes durch Erweiterung von Backend -Servern.
  • Datenbanklastausgleich: Optimieren Sie Lese- und Schreibvorgänge.

Fehlerbehebung von FAQs

Verbindungsproblem:

  • Überprüfen Sie die Firewall -Regeln.
  • Überprüfung der Servergesundheit.

Leistungs Engpass:

  • Fügen Sie den Ulimit des Dateideskriptors hinzu.
  • Backend Server -Konfiguration optimieren.

Wartung:

  • Backup -Konfiguration immer.
  • Aktualisierungen während des geringen Verkehrs anwenden.

Schlussfolgerung

Durch Kombination von Haproxy und Ubuntu erhalten Sie eine leistungsstarke Kombination, um den Verkehr zu verwalten und eine Betriebszeit zu gewährleisten. Mit den oben genannten Schritten können Sie eine belastbare Infrastruktur erstellen, die hohe Lasten und Serverausfälle verarbeiten kann.

Beginnen Sie jetzt mit Haproxy und schalten Sie das volle Potenzial der Ubuntu -Systemfunktionen frei.

Das obige ist der detaillierte Inhalt vonHaproxy auf Ubuntu: Lastausgleich und Failover für eine belastbare Infrastruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn