GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So konfigurieren Sie HAProxy auf Debian 9 / Ubuntu 16.04 Server

HAProxy ist eine kostenlose Open-Source-Lösung für Hochverfügbarkeit und Lastausgleich, sie kann auch für das Proxying von TCP- und HTTP-basierten Anwendungen verwendet werden. HAProxy kann auf Linux, Solaris &FreeBSD installiert und konfiguriert werden. HAProxy ist die am besten empfohlene Lösung für Websites mit großem Datenverkehr, da es die Leistung und Zuverlässigkeit des Servers durch Lastausgleich der Server und die Nutzung seiner Hochverfügbarkeitsfähigkeiten verbessert

HAProxy wird von einer Reihe der beliebtesten Websites verwendet, darunter GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter, und es wird auch im OpsWorks-Produkt von Amazon Web Services verwendet. In diesem Tutorial lernen wir, wie man Haproxy installiert und verwendet Debian 9 &auch für Ubuntu 16.04 Server. Wir beginnen zunächst mit der Installation von Haproxy auf Debian 9,

Installation von HAProxy auf Debian 9

Derzeit ist die neueste stabile Version von Haproxy, die von Debian 9 unterstützt wird, 1.8, wir werden nur diese installieren. Zuerst müssen wir das Backports-Repository auf Debian 9 aktivieren, verwenden Sie dazu den folgenden Befehl,

[[email protected] ~]# echo deb http://httpredir.debian.org/debian stretch-backports main | tee /etc/apt/sources.list.d/backports.list

Sobald dies erledigt ist, aktivieren wir ein dediziertes Repository mit dem folgenden Befehl,

[[email protected] ~]# curl https://haproxy.debian.net/bernat.debian.org.gpg | apt-key add -[[email protected] ~]# echo deb http://haproxy.debian.net stretch-backports-1.8 main | tee /etc/apt/sources.list.d/haproxy.list

Jetzt können wir Haproxy mit den oben hinzugefügten Repositories installieren,

[[email protected] ~]# apt-get update[[email protected] ~]# apt-get install haproxy -t stretch-backports\*

Dadurch wird der Haproxy auf dem Debian 9-System installiert, wir werden nun die Installation auf Ubuntu 16.04-Systemen besprechen.

Installation von HAProxy auf Ubuntu 16.04

HAProxy 1.8 ist auch die neueste Version für Ubuntu 16.04. Ubuntu hat dedizierte PPA zur Installation verfügbar, installieren Sie sie mit den folgenden Befehlen,

[[email protected] ~]$ sudo apt-get install software-properties-common[[email protected] ~]$ sudo add-apt-repository ppa:vbernat/haproxy-1.8

Nachdem die Repositorys hinzugefügt wurden, installieren Sie haproxy 1.8 mit dem folgenden Befehl:

[[email protected] ~]$ sudo apt-get update[[email protected] ~]$ sudo apt-get install haproxy

Jetzt haben wir Haproxy bereit. Für dieses Tutorial werden wir HAProxy konfigurieren, um die Anforderungen von einem Mailserver und einem Webserver auszugleichen.

Load Balancing eines Mailservers mit HAProxy

Für dieses Beispiel verwenden wir zwei SMTP-Server mit den IP-Adressen 192.168.1.10 bzw. 192.168.1.20.

Die IP-Adresse für den Haproxy-Server lautet 192.168.1.100.

Wir werden nun die Änderungen an der Hauptkonfigurationsdatei von HAProxy vornehmen, d. h. „/etc/haproxy/haproxy.cfg ‘ und nehmen Sie dann die Konfigurationsänderungen für den Lastenausgleich der beiden SMTP-Server vor,

 [[E -Mail geschützt] ~] $ sudo vi /etc/haproxy/haproxy.cfgglobal log/dev/local local0 log/dev/log local1 notal chroot/var/lib/haproxy user HAPROXY Group HAPROXY MaxConn 1024 DaemonDefaults Log Global Global Global Global Modus TCP -Option TCPlog Option dontLognullFrontend front_smtp bind 

Hier wurden die meisten Optionen standardmäßig eingestellt, die wichtigsten Dinge, die hier geändert werden müssen, sind ‘Frontend ‘ &‘Backend ‘Abschnitte.

frontend front_smtp

binden *:25

Modus TCP

default_backend back_smtp

Hier haben wir einen Namen für das Frontend definiert, z. B. front_smtp, und haben darum gebeten, alle Anfragen von Port 25 mit dem Bind-Parameter entgegenzunehmen. Zuletzt haben wir den Backend-Abschnitt mit dem Namen „back_smtp“ erwähnt, wo alle Anfragen verteilt werden.

backend back_smtp

Modus TCP

Balance-Roundrobin

server smtp1 192.168.1.10:25 prüfen

server smtp2 192.168.1.20:25 prüfen

In diesem Abschnitt haben wir einen Namen für das Backend festgelegt, z. B. back_smtp, und der Modus für die Übertragung wird TCP sein. Die zu verwendende Lastausgleichsmethode ist „Roundrobin ‘. Andere Load-Balancing-Methoden, die verwendet werden können, sind Weighted Round Robin , Dynamischer Round-Robin-Algorithmus ,Least Connection Algorithmus , Quelle. Zuletzt haben wir die Serveradressen für beide SMTP-Server erwähnt.

Sobald die Änderungen vorgenommen wurden, speichern Sie die Datei und starten Sie den Haproxy-Dienst neu, um die Änderungen zu implementieren,

[[email protected] ~]$ sudo service haproxy restart

Unser Haproxy-Server ist jetzt bereit, als Load Balancer für den Mailserver zu arbeiten. Anstatt die SMTP-Serveradressen zu verwenden, müssen wir jetzt die Serveradresse für HAPROXY verwenden, d. h. 192.168.1.100:25, damit Haproxy-Lastausgleich funktioniert.

Um zu überprüfen, ob der Lastausgleich für unseren SMTP-Server funktioniert, können wir Telnet verwenden,

Die Ausgabe des Telnet-Befehls sollte in etwa so aussehen:

[[email protected] ~]$ telnet 192.168.1.100 25Versuche 192.168.1.100..Verbunden mit 192.168.1.100.Escape-Zeichen ist „^]“.220 smtp1.linuxtechi.com ESMTP Postfix

Führen Sie nun erneut den Telnet-Befehl aus,

[[email protected] ~]$ telnet 192.168.1.100 25Versuche 192.168.1.100..Verbunden mit 192.168.1.100.Escape-Zeichen ist „^]“.220 smtp2.linuxtechi.com ESMTP Postfix

Beachten Sie die Änderung des Servers der Mailserver in beiden Ausgaben, was zeigt, dass der Lastausgleich gut funktioniert. Lassen Sie uns nun ein Harpoxy-Beispiel für den Lastenausgleich eines Webservers besprechen.

Load-Balancing eines Webservers mit HAProxy

Dieselbe Datei wird „/etc/haproxy/haproxy.cfg“ bearbeitet. Wir werden zwei Webserver (192.168.1.10 &192.168.1.20) im Backend verwenden. Die IP-Adresse für den Haproxy-Server lautet 192.168.1.100.

Öffnen Sie die Haproxy-Hauptkonfigurationsdatei und nehmen Sie die folgenden Änderungen vor,

 [[E -Mail geschützt] ~] $ sudo vi /etc/haproxy/haproxy.cfgglobal log/dev/local local0 log/dev/log local1 notal chroot/var/lib/haproxy user HAPROXY Group HAPROXY MaxConn 1024 DaemonDefaults Log Global Global Global Global mode    http        option  httplog        option  dontlognullfrontend www-http   bind *:80    mode http    default_backend apachebackend apache     mode http    balance roundrobin      server web1 192.168.1.10     server web2 192.168.1.20

Speichern Sie die Datei und starten Sie den Haproxy-Dienst neu, um die Änderungen zu implementieren,

[[email protected] ~]$ sudo service haproxy restart

Um zu testen, ob das Load-Balancing funktioniert, können wir zwei verschiedene Webseiten auf beiden Servern platzieren. So können wir zum Beispiel index.html auf Webserver 1 modifizieren,

[[email protected] ~]$ sudo vi /var/www/html/index.htmlDas ist WEB SERVER 1

&ähnlich können wir auf Webserver 2 die index.html bearbeiten, um zu sagen,

[[email protected] ~]$ sudo vi /var/www/html/index.htmlDas ist WEB SERVER 2

Vergessen Sie nicht, den Webdienst neu zu starten, um die vorgenommenen Änderungen zu implementieren.

Verwenden Sie jetzt die Haproxy-IP-Adresse 192.168.1.100 und greifen Sie mit einem Webbrowser darauf zu.

Jedes Mal, wenn wir den Browser aktualisieren, sollten wir abwechselnd Webseiten von beiden Webservern anzeigen.

Dies zeigt, dass unser Webserver-Load-Balancing ebenfalls einwandfrei funktioniert. Damit beenden wir unser Tutorial zur Installation und Verwendung von HAProxy unter Debian 9 und Ubuntu 16.04. Bitte zögern Sie nicht, Ihre Fragen oder Vorschläge über das Kommentarfeld unten zu senden


Ubuntu
  1. So installieren Sie OpenLDAP Server auf Debian oder Ubuntu

  2. So installieren und konfigurieren Sie den DHCP-Server unter Ubuntu 20.04

  3. So richten Sie einen Ubuntu/Debian LAMP-Server ein

  4. So konfigurieren Sie den DHCP-Server unter CentOS 7 / Ubuntu 18.04 / 16.04 / Debian 9

  5. So installieren und konfigurieren Sie den HAProxy-Load-Balancer unter Ubuntu 20.04

So generieren Sie sosreport auf Ubuntu 18.04 / Debian 9 Server

So installieren und konfigurieren Sie Nginx unter Ubuntu 18.04 / Debian 9

So konfigurieren Sie den Bacula-Server unter Ubuntu 16.04

So konfigurieren Sie OSSEC unter Ubuntu – Teil 2

So konfigurieren Sie OpenVPN unter Ubuntu 16.04

So installieren Sie HAProxy unter Ubuntu 18.04 LTS