GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

HAProxy unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

HAProxy ist ein kostenloser HTTP/TCP-Load-Balancer und Proxy-Server mit hoher Verfügbarkeit. Es verteilt Anfragen auf mehrere Server, um Probleme zu mindern, die sich aus einem Ausfall eines einzelnen Servers ergeben. HA Proxy wird von einer Reihe hochkarätiger Websites verwendet, darunter GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter und Tuenti, und wird im OpsWorks-Produkt von Amazon Web Services verwendet.

Hier bei LinuxAPT helfen wir unseren Kunden im Rahmen unserer Server Management Services regelmäßig dabei, entsprechende HAProxy-Konfigurationsabfragen durchzuführen.

In diesem Zusammenhang werden wir untersuchen, wie Sie HAProxy auf Ihrem CentOS 8-System installieren.


Schritte zum Installieren und Konfigurieren von HAProxy unter CentOS 8

1. Systemaktualisierung durchführen

Lassen Sie uns zunächst sicherstellen, dass Ihr System auf dem neuesten Stand ist:

$ sudo alles bereinigen 
$ sudo dnf update


2. HAProxy auf dem System installieren

HAProxy ist auf dem standardmäßigen CentOS 8 verfügbar. Verwenden Sie nun den folgenden dnfa-Befehl, um HAProxy zu installieren:

$ sudo dnf install haproxy

Als nächstes müssen wir überprüfen, ob HAProxy jedes Mal startet, wenn wir unseren Server neu starten. Wir können das mit dem folgenden chkconfig-Befehl erreichen:

$ chkconfig Haproxy ein


3. HAProxy konfigurieren

Wir werden eine Konfigurationsdatei /etc/haproxy/haproxy.cfg erstellen, die die notwendigen Einstellungen und Konfigurationen enthält:

$ sudo nano /etc/haproxy/haproxy.cfg

Geben Sie Folgendes in die Datei ein:

global 
log 127.0.0.1 local2
chroot /var/lib/haproxy
PID-Datei /var/run/haproxy.pid
maxconn 4000
Benutzer haproxy
Gruppenhaproxy
Dämon
Statistik-Socket /var/lib/haproxy/stats
ssl-default-bind-ciphers PROFILE=SYSTEM
ssl-default-server-chiffren PROFILE=SYSTEM
Voreinstellungen
Modus http
global protokollieren
Option httplog
Option dontlognull
Option http-server-close
Option forwardfor außer 127.0.0.0/8
Option Redispatch
Wiederholungen 3
Timeout http-Request 10s
Timeout-Warteschlange 1m
Zeitüberschreitung verbinden 10s
Zeitüberschreitung Client 1m
Timeout-Server 1m
timeout http-keep-alive 10s
Timeout-Prüfung 10s
maxconn3000
Frontend Haupt
binden *:5000
acl url_static path_beg -i /static /images /javascript /stylesheets
acl url_static path_end -i .jpg .gif .png .css .js
use_backend static wenn url_static
default_backend-App
Backend statisch
Balance-Roundrobin
Server statisch 127.0.0.1:4331 prüfen
Backend-App
Balance-Roundrobin
Server-App1 127.0.0.1:5001 prüfen
Server-App2 127.0.0.1:5002 prüfen
Server-App3 127.0.0.1:5003 prüfen
server app4 127.0.0.1:5004 prüfen

Sie können die Konfigurationsdetails und weitere Informationen unter dieser URL anzeigen. Sobald Sie HAProxy konfiguriert haben, ist es an der Zeit, den Dienst zu starten:

$ sudo systemctl starte haproxy 
$ sudo systemctl aktiviert Haproxy


4. Firewall konfigurieren

Wir werden den HAProxy zur CentOS 8-Firewall hinzufügen und die Regeln mit den folgenden Befehlen aktualisieren:

$ sudo firewall-cmd --add-port=8088/tcp --permanent 
$ sudo firewall-cmd --reload


5. HAProxy-Protokollierung konfigurieren

Um die HAProxy-Standardprotokollierung zu konfigurieren, bearbeiten Sie /etc/rsyslog.conf und aktivieren Sie den UDP-Syslog-Empfang auf Port 514:

$ sudo nano /etc/rsyslog.conf
...
# Bietet UDP-Syslog-Empfang
# Parameter siehe http://www.rsyslog.com/doc/imudp.html
module(load="imudp") # muss nur einmal gemacht werden
Eingabe (Typ ="imudp" Port ="514")
...
*.info;mail.none;authpriv.none;cron.none,local2.none /var/log/messages
local2.* /var/log/haproxy.log
...

Speichern Sie dann die Konfigurationsdatei und führen Sie den folgenden Befehl aus, um nach Fehlern zu suchen:

$ rsyslogd -N1 
$ sudo systemctl rsyslog haproxy neu starten


6. Konfigurieren Sie Apache X-Forwarded-For Logging auf Backend-Servern

Jetzt melden wir uns bei den Backend-Servern an und konfigurieren Apache so, dass X-Forwarded-For-Header protokolliert werden. Die Standardzeile, die wir ändern, ist:

...
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" kombiniert
LogFormat "%h %l %u %t \"%r\" %>s %b" üblich
...

Bearbeiten Sie diese Zeile so, dass sie folgendermaßen aussieht:

...
LogFormat "\"%{X-Forwarded-For}i\" %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i \"" kombiniert
LogFormat "%h %l %u %t \"%r\" %>s %b" üblich
...

Speichern Sie die Datei und starten Sie Apache neu:

$ apachectl configtest 
$ sudo systemctl startet httpd neu


Wie teste ich HAProxy Load Balancer?

Um zu überprüfen, ob HAProxy in der Lage ist, die HTTP-Anforderungen auszugleichen, navigieren Sie zum Browser und greifen Sie entweder über den Hostnamen oder die IP-Adresse auf HAProxy zu.


Wie starte ich HAProxy neu?

Nachdem Sie entweder Layer 4 oder Layer 7 konfiguriert haben, starten Sie HAProxy mit dem folgenden Befehl neu:

$ systemctl Haproxy neu starten

Ein erfolgreicher Neustart führt zu keiner Ausgabe, was bedeutet, dass HAProxy mit den gerade implementierten Änderungen betriebsbereit ist.



Cent OS
  1. Grafana unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  2. FreeIPA unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  3. OrangeScrum auf CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  4. Installieren Sie Rar / Unrar auf Centos 8 - Schritt-für-Schritt-Anleitung?

  5. ClamAV unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung ?

Schritt-für-Schritt-Anleitung zur Installation von CentOS 8 (mit Screenshots)

Mattermost unter CentOS 8 installieren – Eine Schritt-für-Schritt-Anleitung?

Installieren Sie Microsoft SQL Server auf CentOS 8 – eine Schritt-für-Schritt-Anleitung?

Installieren Sie Vtiger CRM auf CentOS 8 - Eine Schritt-für-Schritt-Anleitung?

Gparted unter CentOS 8 installieren - Eine Schritt-für-Schritt-Anleitung?

So installieren Sie HAProxy unter CentOS 8