So installierst du HAProxy unter Debian 11
HAProxy ist eine kostenlose, quelloffene und zuverlässige Lösung für Hochverfügbarkeit und Lastausgleich. Sie verteilt die Last auf mehrere Anwendungsserver und vereinfacht die Bearbeitung von Anfragen. Sie kann auf allen gängigen Linux-Betriebssystemen installiert werden. Sie ist aufgrund ihrer Effizienz, Zuverlässigkeit und ihres geringen Speicher- und CPU-Bedarfs beliebt.
In diesem Beitrag erklären wir dir, wie du HAProxy auf einem Debian 11 System installierst.
Voraussetzungen
- Ein Server, auf dem Debian 11 für HAProxy läuft.
- Zwei Server, auf denen Debian 11 für den Apache Backend Server läuft.
- Auf allen Servern ist ein Root-Passwort eingerichtet.
Backend-Webserver einrichten
Für diesen Lehrgang musst du zwei Backend-Apache-Server einrichten.
Auf dem ersten Backend-Server installierst du das Apache-Paket mit dem folgenden Befehl:
apt-get install apache2 -y
Sobald der Apache installiert ist, erstellst du mit folgendem Befehl eine Apache-Indexseite als Beispiel:
echo "<H1>Welcome to the first Apache Server</H1>" | tee /var/www/html/index.html
Auf dem zweiten Backend-Server installierst du das Apache-Paket mit folgendem Befehl:
apt-get install apache2 -y
Als Nächstes erstellst du mit folgendem Befehl eine Apache-Indexseite:
echo "<H1>Welcome to the second Apache Server</H1>" | tee /var/www/html/index.html
Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
HAProxy installieren
Standardmäßig ist HAProxy im Standard-Repository von Debian 11 enthalten. Du kannst es mit folgendem Befehl installieren:
apt-get install haproxy -y
Sobald HAProxy installiert ist, starte den HAProxy-Dienst und aktiviere ihn so, dass er beim Neustart des Systems gestartet wird:
systemctl start haproxy systemctl enable haproxy
Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
HAProxy konfigurieren
Als Nächstes musst du die HAProxy-Standardkonfigurationsdatei bearbeiten und die Backend-Webserver definieren.
nano /etc/haproxy/haproxy.cfg
Füge die folgenden Zeilen hinzu:
frontend apache_front # Frontend listen port - 80 bind *:80 # Set the default backend default_backend apache_backend_servers # Enable send X-Forwarded-For header option forwardfor # Define backend backend apache_backend_servers # Use roundrobin to balance traffic balance roundrobin # Define the backend servers server backend01 192.168.1.10:80 check server backend02 192.168.1.11:80 check
Speichere und schließe die Datei, wenn du fertig bist.
Wo: 192.168.1.10 ist die IP-Adresse des ersten Apache-Backend-Servers und 192.168.1.11 ist die IP-Adresse des zweiten Apache-Backend-Servers.
Starte anschließend den HAProxy-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart haproxy
Du kannst nun den Status des HAProxy mit dem folgenden Befehl überprüfen:
systemctl status haproxy
Du erhältst die folgende Ausgabe:
? haproxy.service - HAProxy Load Balancer Loaded: loaded (/lib/systemd/system/haproxy.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2021-11-07 03:47:14 UTC; 9s ago Docs: man:haproxy(1) file:/usr/share/doc/haproxy/configuration.txt.gz Process: 86678 ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q $EXTRAOPTS (code=exited, status=0/SUCCESS) Main PID: 86680 (haproxy) Tasks: 3 (limit: 4679) Memory: 34.2M CPU: 61ms CGroup: /system.slice/haproxy.service ??86680 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock ??86682 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock Nov 07 03:47:14 debian11 systemd[1]: Starting HAProxy Load Balancer... Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 systemd[1]: Started HAProxy Load Balancer. Nov 07 03:47:14 debian11 haproxy[86680]: [NOTICE] 310/034714 (86680) : New worker #1 (86682) forked Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started.
Verify HAProxy
Jetzt ist HAProxy konfiguriert und läuft. Jetzt ist es an der Zeit, den HAProxy zu testen.
Öffne deinen Webbrowser und gib die URL http://your-haproxy-ip ein. Du wirst sehen, dass der HAProxy nach jeder Aktualisierung eine Anfrage nach der anderen an die Backend-Server sendet.
Fazit
Glückwunsch! Du hast HAProxy erfolgreich auf Debian 11 installiert. Jetzt kannst du HAProxy in der Produktionsumgebung einsetzen, um die Leistung und Verfügbarkeit deiner Webanwendung zu erhöhen.