So verarbeiten Sie UDP-Verkehr mit HAProxy

So Verarbeiten Sie Udp Verkehr Mit Haproxy



Wenn wir über HAProxy sprechen, arbeiten wir hauptsächlich mit TCP- oder HTTP-Verkehr, da diese die häufigste Art von Verkehr sind. Es kann jedoch vorkommen, dass Sie mit UDP arbeiten möchten, um einen Lastausgleich für verbindungs- und zustandslosen Datenverkehr durchzuführen.

Ursprünglich unterstützte HAProxy den UDP-Verkehr nicht. Veraltete HAProxy-Versionen unterstützen den UDP-Verkehr immer noch nicht. Um den UDP-Verkehr abzuwickeln, muss ein HAProxy ab Version 1.5 installiert sein. Vor diesem Hintergrund erfahren Sie in diesem Beitrag, wie Sie mit dem UDP-Verkehr mit HAProxy umgehen. Wir werden über die Bedeutung von HAProxy sprechen und welche Konfigurationen Sie vornehmen sollten, um den UDP-Verkehr zu verarbeiten. Lass uns anfangen!

Unterstützt HAProxy den UDP-Verkehr?

HAProxy ist ein kostenloser Load Balancer, der auch als Reverse Proxy funktioniert. Mit HAProxy können Sie konfigurieren, wie Ihre Webanwendung den Datenverkehr verarbeiten soll, indem sie ihn auf die verfügbaren Server verteilt. Auf diese Weise eliminieren Sie das Risiko einer Serverüberlastung, die zu Ausfallzeiten und Nichtverfügbarkeit führt.







Bisher unterstützten HAProxy-Versionen die Verarbeitung des UDP-Verkehrs nicht. Allerdings unterstützt HAProxy ab Version 1.5 die Abwicklung des UDP-Verkehrs. HAProxy funktioniert nur mit verbindungsorientiertem Datenverkehr, aber Sie können ihn jetzt so konfigurieren, dass er den verbindungslosen Datenverkehr wie UDP-Datenverkehr verarbeitet.



So handhaben Sie den UDP-Verkehr mit HAProxy

Die Abwicklung des UDP-Verkehrs mit HAProxy erfolgt nach den gleichen Schritten wie die Abwicklung des TCP- oder HTTP-Verkehrs. Sie müssen jedoch die UDP-Einstellungen im Frontend-Abschnitt Ihrer HAProxy-Konfigurationsdatei angeben, damit dieser den UDP-Verkehr erwartet und akzeptiert.



Beginnen Sie mit der Installation von HAProxy. Sie können HAProxy aus dem Standard-Repository abrufen, das das neueste verfügbare System installiert.





$ Sudo apt-get installieren haproxy

Vergewissern Sie sich nach der Installation, dass die installierte Version aktuell und höher als Version 1.5 ist, um UDP zu unterstützen.



$ haproxy --Ausführung

Wir haben für diesen Fall Version 2.4 installiert, was bedeutet, dass es den UDP-Verkehr problemlos bewältigen kann.

Nachdem wir nun die richtige HAProxy-Version überprüft haben, die den UDP-Verkehr verarbeiten kann, besteht die nächste Aufgabe darin, HAProxy zu konfigurieren. Öffnen Sie die HAProxy-Konfigurationsdatei mit einem Texteditor.

$ Sudo Nano / usw / haproxy / haproxy.cfg

Sobald die Datei geöffnet ist, lassen Sie den globalen Abschnitt unverändert.

Scrollen Sie nach unten zum Abschnitt „Standardeinstellungen“ und ändern Sie ihn, um anzugeben, wohin die Protokolldateien und Zeitüberschreitungen für verschiedene Aufgaben gesendet werden sollen, z. B. wie lange auf eingehende Verbindungen gewartet werden soll.

Wir müssen dann einen „Listen“-Abschnitt erstellen. In diesem Abschnitt definieren wir, wie auf Verbindungen gewartet wird. Wir müssen HAProxy angeben, auf den UDP-Verkehr zu lauschen, und dann festlegen, welchen UDP-Port wir binden und für den eingehenden UDP-Verkehr verwenden möchten. Schließlich können wir festlegen, wie der eingehende UDP-Verkehr ausgeglichen wird und welche Server zur Verteilung des UDP-Verkehrs verwendet werden sollen.

Hier ist ein Beispiel für einen „Listen“-Abschnitt, der den UDP-Verkehr verarbeitet.

Kopieren Sie dasselbe und fügen Sie es Ihrer HAProxy-Konfigurationsdatei hinzu. Stellen Sie sicher, dass Sie den Bindungsport so ändern, dass er Ihren idealen UDP-Port für die Verbindungen verwendet. Sie können einen anderen Algorithmus angeben, um den Datenverkehr auszugleichen. Ändern Sie abschließend die Servernamen und geben Sie Ihre tatsächlichen IP-Adressen für Ihre Server an.

Nachdem Sie die Änderungen vorgenommen haben, speichern Sie die Konfigurationsdatei und verlassen Sie den Texteditor. Sie können HAProxy jetzt neu starten, um sicherzustellen, dass es die neue Konfiguration erfasst.

Damit ist Ihr HAProxy so konfiguriert, dass er den UDP-Verkehr über den angegebenen Port verarbeitet und den Verkehr auf die einbezogenen Server verteilt. Stellen Sie sicher, dass Sie die UDP-Konfiguration testen, indem Sie den UDP-Verkehr an Ihre Anwendung senden und beobachten, wie der Verkehr gehandhabt wird.

Abschluss

Obwohl HAProxy hauptsächlich für die Verarbeitung von TCP- und HTTP-Verkehr konzipiert ist, kann HAProxy ab Version 1.5 so konfiguriert werden, dass es den UDP-Verkehr abhört und akzeptiert und dann die Last auf die verfügbaren Server verteilt. Um den UDP-Verkehr mit HAProxy abzuwickeln, stellen Sie sicher, dass Sie den „mode udp“ im Abschnitt „listen“ von HAProxy angeben. Legen Sie dann den Ausgleichsalgorithmus und die zu verwendenden Server fest. Lesen Sie diesen Beitrag durch, um zu verstehen, welche Schritte Sie befolgen müssen, und verweisen Sie auf das bereitgestellte Beispiel, um es richtig zu machen.