So stellen Sie HAProxy in einem Docker-Container bereit

So Stellen Sie Haproxy In Einem Docker Container Bereit



Mit HAProxy können Sie es in einem Docker-Container bereitstellen, anstatt es als Paket auf Ihrem System auszuführen. Die Verwendung von Docker stellt sicher, dass Sie andere Pakete nicht beeinträchtigen und ist eine Möglichkeit, eine abgeschiedene Umgebung zu schaffen, in der Sie HAProxy als Reverse-Proxy oder für andere Zwecke ausführen können. Das Ausführen von HAProxy auf Docker ist eine unkomplizierte Aufgabe. In diesem Beitrag werden die folgenden Schritte erläutert. Weiter lesen!

Bereitstellen von HAProxy in einem Docker-Container

Bei der Arbeit mit Ihren Anwendungen oder Servern ist HAProxy praktisch, da es Ihnen die Kontrolle des Datenverkehrs ermöglicht, um eine hohe Leistung und Skalierbarkeit zu erreichen. Darüber hinaus bietet Ihnen Docker eine Plattform zur nahtlosen Bereitstellung und Skalierung Ihrer Anwendung. Wenn Sie beides kombinieren, werden Ihre Skalierbarkeits- und anderen Bereitstellungsanforderungen optimal erfüllt.







Darüber hinaus haben HAProxy-Technologien eine Reihe von Docker-Images erstellt, die Sie zum Bereitstellen von HAProxy in einem Docker-Container verwenden können. Im Folgenden finden Sie die Schritte, die Sie befolgen sollten.



Schritt 1: Starten Sie Docker



Auf Ihrem System muss Docker installiert sein, damit Sie es starten können, bevor Sie HAProxy bereitstellen. Stellen Sie je nach verwendeter Distribution sicher, dass Sie Docker installiert haben. Für dieses Tutorial arbeiten wir mit Ubuntu und überprüfen die Docker-Version, um sicherzustellen, dass sie auf unserem System installiert ist.






Sobald Sie den Docker installiert haben, überprüfen Sie seinen Status, um sicherzustellen, dass er ausgeführt wird. Sie können es mit dem folgenden Befehl starten und dann seinen Status überprüfen:

$ Sudo systemctl startet Docker




Schritt 2: Holen Sie sich das offizielle Docker-Image von HAProxy

Das offizielle HAProxy Docker-Image ist im Docker-Hub verfügbar. Sie können es herunterladen, indem Sie es mit dem folgenden Befehl abrufen:

$ Sudo Docker Pull Haproxy


Bestätigen Sie, dass wir HAProxy heruntergeladen haben, indem Sie die verfügbaren Docker-Images überprüfen.

$ Sudo Docker-Bilder


Schritt 3: Erstellen Sie ein Docker-Netzwerk

Da wir die Webanwendungen verwenden werden, die wir mit HAProxy verknüpfen möchten, ist ein Bridge-Netzwerk erforderlich. Darüber hinaus hilft die Schaffung eines Netzwerks auch dabei, die Container zu trennen, sodass jeder seinen eigenen verwendet.

Um ein überbrücktes Netzwerk zu erstellen, verwenden Sie die folgende Syntax:

$ Sudo Docker-Netzwerk erstellt Netzwerkname


Überprüfen Sie schnell, ob das Netzwerk erstellt wurde, indem Sie die verfügbaren Netzwerke in Ihrem Docker-Container auflisten.

$ Sudo Docker-Netzwerk ls


Wir haben unser „Netzwerk1a“ erstellt und es erscheint in der folgenden Ausgabe:


Schritt 4: Erstellen Sie die Backend-Webanwendungen

Wir erstellen zwei Webinstanzen, die wir mit unserem Load Balancer für die Demonstration verwenden. Docker verfügt über verschiedene Instanzen, die Sie verwenden können. In diesem Fall verwenden wir ein Nginx-Image, um die Webanwendungen zu erstellen.

$ Sudo Docker-Lauf -D --Name < Web-App-Name > --Netzwerk < Netzwerkname > Nginx


Erstellen Sie die andere Instanz.


Wir haben jetzt zwei Webanwendungsinstanzen auf unserem Docker. Überprüfen Sie dies, indem Sie den Befehl „docker ps“ ausführen.


Schritt 5: Erstellen Sie Ihre Konfigurationsdatei

Sie müssen eine HAProxy-Konfigurationsdatei erstellen, die Sie mit Ihrem Docker verwenden. Wählen Sie aus, wo Ihre Konfigurationsdatei gespeichert werden soll. Öffnen Sie es dann mit einem Texteditor. Wir verwenden für diesen Fall Nano und haben unsere Konfigurationsdatei in „/opt/haproxy/haproxy.cfg“ gespeichert.


Unsere Konfigurationsdatei sieht wie folgt aus. Beachten Sie, wie jeder Abschnitt zeigt, wie HAProxy die Last auf unsere Webanwendungen/Server verteilen soll:


Auch hier verwenden wir Port 80 für die Frontend-Verbindungen und Port 8404 für die Listener.


Stellen Sie sicher, dass Sie im Backend-Abschnitt der Konfigurationsdatei den richtigen Namen für Ihre Webanwendung hinzugefügt haben. Sie können für Ihre Webanwendungen auch die IP-Adressen anstelle der Hostnamen verwenden. Speichern und beenden Sie abschließend die Datei. Anschließend können Sie HAProxy neu starten.


Anstatt eine Konfigurationsdatei zu erstellen, können Sie eine Docker-Datei erstellen, die eine vorhandene Konfigurationsdatei kopiert und dann den Container erstellt. Nutzen Sie ruhig die Methode, die für Sie am besten geeignet ist.

Schritt 6: Stellen Sie HAProxy bereit

Wir müssen nun einen HAProxy-Container erstellen, ihn ausführen und seinen Port dem Port zuordnen, den wir in die Konfigurationsdatei aufgenommen haben. Wir nennen unseren Container „haproxycontainer2“ und ordnen die Ports 80 und 8404 vom Host denen des Docker-Containers zu.


Damit ist es Ihnen gelungen, HAProxy in einem Docker-Container bereitzustellen. Sie können jetzt auf Ihre Webanwendungen/Server zugreifen. Der an sie weitergeleitete Datenverkehr wird mithilfe von HAProxy verteilt, um sicherzustellen, dass der Lastausgleich erfolgt.

Abschluss

HAProxy hilft beim Lastausgleich und anderen Anwendungen. Bei der Arbeit mit Docker ist es möglich, HAProxy so bereitzustellen, dass Ihre Webanwendungen oder Entwicklungsumgebung eine bequeme Möglichkeit zum Lastausgleich erhält. In diesem Beitrag wurden die Schritte zum Bereitstellen von HAProxy in einem Docker-Container beschrieben. Befolgen Sie diese und tun Sie dasselbe für Ihren Fall.