Installation von HAProxy 1.7 unter Debian 9.1 (Stretch)

HAProxy ist eine Netzwerksoftwareanwendung, die Hochverfügbarkeit, Lastausgleich und Proxy für TCP- und HTTP-Netzwerkanwendungen bietet. Es ist für stark frequentierte Websites geeignet und unterstützt viele beliebte Websites im Internet. Dieser Artikel zeigt Ihnen, wie Sie HAProxy unter Debian 9.1 installieren und konfigurieren.

Obwohl HAProxy über mehrere herausragende Funktionen verfügt, konzentriert sich dieser Artikel darauf, wie Sie HAProxy so einrichten, dass Ihre Webanwendung "Proxy" wird.

Bedarf

  • Mindestens zwei Vultr-Server (für Lastausgleichsfunktionen), auf denen Ihre Website oder Webanwendung bereitgestellt ist.

HAProxy installieren

Debian 9 wird bereits mit HAProxy 1.7 (neueste stabile Version zum Zeitpunkt des Schreibens) ausgeliefert, und wir können es einfach installieren mit apt-get:

# apt-get update
# apt-get install haproxy

Wenn die vorherigen Befehle erfolgreich waren, haben Sie HAProxy installiert und können mit dem nächsten Schritt fortfahren.

HAProxy konfigurieren

Die HAProxy-Konfigurationsdatei ist in zwei Abschnitte unterteilt - "global" und "Proxys". Eine befasst sich mit der prozessweiten Konfiguration, während die letztere aus Standardkonfigurations-, Frontend- und Backend-Abschnitten besteht.

Globale Sektion

Öffnen Sie mit Ihrem bevorzugten Texteditor /etc/haproxy/haproxy.cfgdie vordefinierten Abschnitte "global" und "default" und beachten Sie sie. Das erste, was Sie möglicherweise tun möchten, ist, die maxconnGröße auf eine angemessene Größe zu erhöhen , da dies Auswirkungen auf die Verbindungen hat, die HAProxy zulässt. Zu viele Verbindungen können dazu führen, dass Ihr Webdienst aufgrund vieler Anforderungen abstürzt. Sie müssen die Größe anpassen, um zu sehen, was für Sie funktioniert. Im globalen Bereich haben wir einen maxconnWert von ausgewählt 3072.

global
    daemon
    maxconn 3072

Fügen Sie im Standardabschnitt die folgende Zeile unter Modus hinzu http:

option forwardfor

Dadurch werden X-Forwarded-Forjeder Anforderung Header hinzugefügt, sodass Ihre Backend-Server die ursprüngliche IP-Adresse des Benutzers ermitteln können.

Fügen Sie diese Zeile hinzu, um den HTTP-Verbindungsschließmodus auf der Serverseite zu aktivieren und gleichzeitig die HTTP-Keep-Alive-Funktion auf der Clientseite zu unterstützen. Dies reduziert die Latenz auf der Clientseite und hilft, Serverressourcen zu schonen:

option http-server-close

Wenn Sie Keep-Alive sowohl auf Client- als auch auf Serverseite verwenden möchten, können Sie option http-keep-alivestattdessen verwenden. Diese Option ist besonders nützlich, wenn die Kosten für den Aufbau einer neuen Verbindung zum Server im Vergleich zu den Kosten für das Abrufen der angeforderten Ressource erheblich sind.

Schließlich sieht die resultierende Konfigurationsdatei ungefähr so ​​aus:

defaults
    mode http
    option forwardfor
    option http-server-close
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms

Proxies Abschnitt

Um Ihren Proxy einzurichten, müssen Sie der Konfigurationsdatei zwei Abschnitte hinzufügen, um die beiden Teile des Proxys zu definieren: das Frontend und das Backend.

Frontend-Konfiguration

Das Frontend übernimmt Ihre HTTP-Verbindungen. Fügen Sie am Ende Ihrer haproxy.cfgDatei Folgendes hinzu :

frontend http-frontend
    bind public_ip:80
    reqadd X-Forwarded-Proto:\ http
    default_backend wwwbackend

Stellen Sie sicher, dass public_ipSie die öffentliche IP-Adresse oder den Domainnamen Ihres Servers verwenden.

Backend-Konfiguration

Richten Sie Ihr Backend ein, indem Sie am Ende Ihrer Konfigurationsdatei die folgenden Zeilen hinzufügen:

backend wwwbackend
    server 1-www server1_ip:80 check
    server 2-www server2_ip:80 check
    server 3-www server3_ip:80 check

Die hier verwendete Backend-Konfiguration erstellt 3 Verbindungen mit dem Namen X-www. ( Xist 1, 2 oder 3.) Jeder von ihnen entspricht einer serverX_ip:80 Adresse. (Ersetzen serverX_ipSie sie durch die IP-Adressen Ihrer Vultr-Instanzen.) Auf diese Weise können Sie den Lastausgleich zwischen den einzelnen Servern im angegebenen Serversatz durchführen (vorausgesetzt, jede IP-Adresse entspricht einem anderen Server). Mit dieser checkOption führt der Load Balancer Integritätsprüfungen auf dem Server durch.

Speichern Sie die Konfigurationsdatei und starten Sie HAProxy neu:

service haproxy restart

Wenn alles funktioniert, können Sie eine Verbindung herstellen http://public_ip/(durch Ihre öffentliche IP-Adresse oder Ihren Domainnamen ersetzen, wie im Frontend-Schritt konfiguriert) und Ihre Website anzeigen.

Fehlerbehebung

Wenn sich Ihre HAProxy-Instanz nach Ihren Änderungen weigert, zu starten, liegt möglicherweise irgendwo in der Konfigurationsdatei ein Fehler vor. Um eindeutige Meldungen zu dem Problem in der Konfigurationsdatei zu erhalten, können Sie versuchen, HAProxy manuell mit diesem Befehl zu starten:

# haproxy -f /etc/haproxy/haproxy.cfg

Wenn Sie beispielsweise eine Ausgabe wie folgt sehen:

[ALERT] 234/195612 (2561) : parsing [/etc/haproxy/haproxy.cfg:48] : server 1-www has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.
[ALERT] 234/195612 (2561) : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg
[ALERT] 234/195612 (2561) : Fatal errors found in configuration.

Dann haben Sie vergessen, die Portnummer für den Server anzugeben 1-www.

Einen Kommentar hinterlassen

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.