HAProxy auf Debian 12 installieren: Schritt für Schritt

HAProxy ist eine leistungsfähige Open-Source-Software, die Lastverteilung und die Einrichtung von Proxys für TCP- und HTTP-basierte Anwendungen ermöglicht. Sie kann unter Debian 12 in wenigen Schritten installiert werden und wird häufig in hochverfügbaren Systemen eingesetzt, um Anfragen effizient zu verteilen und somit die Stabilität und Performance einer Anwendung zu verbessern.

Was ist HAProxy?

HAProxy (High Availability Proxy) ist ein performanter und zuverlässiger Load Balancer und Reverse Proxy, der für die Verteilung von Netzwerk- und Anwendungsverkehr genutzt wird. Die Anwendung unterstützt sowohl Layer 4 (Transport Layer, z. B. TCP) als auch Layer 7 (Application Layer, z. B. HTTP) des OSI-Modells hinsichtlich des Load Balancings. Dank seiner geringen Latenz, hohen Effizienz und umfassenden Konfigurationsmöglichkeiten ist HAProxy für Unternehmen jeder Größe geeignet.

Unternehmen sowie Entwicklerinnen und Entwickler nutzen HAProxy, um die Last auf mehrere Backend-Server zu verteilen, Serverausfälle abzufangen und die allgemeine Anwendungsleistung zu verbessern. Die Software spielt eine zentrale Rolle in vielen Webinfrastrukturen, insbesondere bei hochverfügbaren und skalierbaren Anwendungen. Zu ihren Hauptfunktionen gehören SSL/TLS-Terminierung, Health-Checks für Backend-Server, Rate Limiting und DDoS-Schutzmechanismen.

Dedicated Server
Dedizierte Server mit modernsten Prozessoren
  • 100 % Enterprise-Hardware
  • Minutengenaue Abrechnung
  • Nur bei uns: Cloud-Funktionen

Schritt-für-Schritt-Installation von HAProxy auf Debian 12

Schritt 1: System aktualisieren

Bevor HAProxy installiert wird, sollte Ihre Linux-Distribution aktualisiert werden. Dies stellt sicher, dass alle Pakete aktuell sind und die Installation reibungslos funktioniert.

Folgender Befehl aktualisiert die Paketlisten und installiert alle verfügbaren Updates für Debian 12:

sudo apt update && sudo apt upgrade -y
bash

Schritt 2: HAProxy installieren

Debian 12 enthält HAProxy in seinen offiziellen Paketquellen, sodass die Installation einfach mit dem integrierten Paketmanager apt erfolgen kann.

sudo apt install haproxy -y
bash

Dieser Befehl lädt HAProxy herunter und installiert es mit allen benötigten Abhängigkeiten.

Schritt 3: HAProxy-Version überprüfen

Nach der Installation sollte überprüft werden, ob HAProxy erfolgreich installiert wurde. Dies können Sie tun, indem Sie die installierte Version von HAProxy abrufen:

haproxy -v
bash

Die Ausgabe sollte in etwa so aussehen:

Screenshot der aktuellen HAProxy-Version im Terminal
Nachdem Sie den Befehl ausgeführt haben, wird Ihnen die aktuell installierte Version von HAProxy in Ihrem Terminal angezeigt.

Damit ist sichergestellt, dass HAProxy korrekt installiert wurde.

Schritt 4: HAProxy als Dienst aktivieren

Damit HAProxy automatisch beim Systemstart startet und dauerhaft läuft, muss der Dienst aktiviert und gestartet werden.

sudo systemctl enable haproxy
sudo systemctl start haproxy
bash

Um schließlich zu überprüfen, ob der Dienst erfolgreich läuft, kann folgender Befehl genutzt werden:

sudo systemctl status haproxy
bash

Wenn HAProxy korrekt läuft, sollte eine Ausgabe mit active (running) erscheinen, die in etwa folgendermaßen aussieht:

Screenshot des aktuellen HAProxy-Status im Terminal
Sie erkennen in der Terminalausgabe am Status „active (running)“, dass HAProxy jetzt ohne Probleme funktioniert.

Schritt 5: Grundlegende Konfiguration von HAProxy

Die Konfigurationsdatei von HAProxy befindet sich unter dem Dateipfad /etc/haproxy/haproxy.cfg. Bevor Änderungen vorgenommen werden, ist es ratsam, eine Sicherungskopie zu erstellen, auf die Sie im Zweifel bei Fehlerfällen zurückgreifen können:

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak
bash

Nun kann die Datei mit einem Editor Ihrer Wahl (wie zum Beispiel Vim oder nano) bearbeitet werden:

sudo nano /etc/haproxy/haproxy.cfg
bash

Eine einfache HAProxy-Konfiguration könnte so aussehen:

global
	log /dev/log local0
	log /dev/log local1 notice
	chroot /var/lib/haproxy
	stats socket /run/haproxy/admin.sock mode 660 level admin
	stats timeout 30s
	user haproxy
	group haproxy
	daemon
defaults
	log global
	option httplog
	option dontlognull
	timeout connect 5000ms
	timeout client 50000ms
	timeout server 50000ms
frontend http_front
	bind *:80
	default_backend web_servers
backend web_servers
	balance roundrobin
	server server1 192.168.1.10:80 check
	server server2 192.168.1.11:80 check
txt

Diese Konfiguration verteilt HTTP-Anfragen auf zwei Webserver im Round-Robin-Verfahren. Sie ist in mehrere Abschnitte unterteilt. Zunächst gibt es den globalen Abschnitt, der grundlegende Einstellungen für HAProxy definiert. Hier wird beispielsweise festgelegt, unter welchem Benutzerkonto HAProxy läuft, wie viele gleichzeitige Verbindungen erlaubt sind und wo die Logs gespeichert werden. Zudem kann ein chroot-Verzeichnis definiert werden, um HAProxy in einer eingeschränkten Umgebung auszuführen und so die Sicherheit zu erhöhen.

Nach den globalen Einstellungen folgt der defaults-Abschnitt, in dem Standardwerte für alle nachfolgenden Konfigurationen festgelegt werden. Hier wird beispielsweise bestimmt, dass HAProxy im HTTP-Modus arbeitet und HTTP-Logging aktiviert ist. Außerdem werden diverse Timeouts definiert.

Die weiteren Abschnitte der Konfigurationsdatei, wie frontend und backend, steuern den eigentlichen Datenverkehr. Im Frontend-Abschnitt wird festgelegt, auf welchen Ports HAProxy Anfragen annimmt und wie diese weitergeleitet werden. Der Backend-Abschnitt definiert dann die Server, an die der Traffic weitergeleitet wird. Hier können Load-Balancing-Algorithmen verwendet werden.

Nach dem Bearbeiten müssen Sie die Datei speichern und HAProxy neu starten:

sudo systemctl restart haproxy
bash

Die Installation von HAProxy auf Debian 12 ist nun abgeschlossen. Die Konfiguration lässt sich durch Änderungen an der Konfigurationsdatei jederzeit anpassen.

GPU Server
Dedizierte Hardware mit hochperformanter Grafikkarte

Greifen Sie beim Handling großer Datenmengen flexibel auf GPU-gestützte Rechenleistung zurück. Mit Pay-as-you-go zahlen Sie nur, wenn Sie die Ressourcen tatsächlich benötigen – minutengenau abgerechnet.

War dieser Artikel hilfreich?
Page top