Hur man distribuerar HAProxy i en Docker Container

Hur Man Distribuerar Haproxy I En Docker Container



Med HAProxy kan du distribuera den i en Docker-behållare istället för att köra den som ett paket på ditt system. Att använda Docker säkerställer att du inte stör andra paket och är ett sätt att ha en avskild miljö för att köra HAProxy som din omvänd proxy eller för andra ändamål. Att köra HAProxy på Docker är en enkel uppgift. Det här inlägget diskuterar stegen att följa. Läs vidare!

Distribuera HAProxy i en Docker Container

När du arbetar med dina applikationer eller servrar är HAProxy praktiskt för att låta dig styra trafiken för att uppnå hög prestanda och skalbarhet. Dessutom ger Docker dig en plattform för att distribuera och skala din applikation sömlöst. Genom att kombinera de två kommer din skalbarhet och andra implementeringsbehov att vara väl tillgodosedda.







Dessutom har HAProxy-teknologier byggt en uppsättning Docker-bilder som du kan använda för att distribuera HAProxy i en Docker-behållare. Följande är stegen som du bör följa.



Steg 1: Starta Docker



Ditt system måste ha Docker installerat för att du ska kunna starta det innan HAProxy distribueras. Beroende på vilken distro du använder, se till att du har installerat Docker. För den här handledningen kommer vi att arbeta med Ubuntu och kontrollera Docker-versionen för att bekräfta att den är installerad på vårt system.






När du har installerat Docker, kontrollera dess status för att säkerställa att den körs. Du kan starta den med följande kommando och sedan kontrollera dess status:

$ sudo systemctl starta docker




Steg 2: Skaffa HAProxy Official Docker Image

Den officiella HAProxy Docker-bilden är tillgänglig från Docker-hubben. Du kan ladda ner den genom att dra den med följande kommando:

$ sudo docker pull haproxy


Bekräfta att vi har laddat ner HAProxy genom att kontrollera tillgängliga Docker-bilder.

$ sudo docker-bilder


Steg 3: Skapa ett Docker-nätverk

Eftersom vi kommer att använda de webbapplikationer som vi vill länka till HAProxy krävs ett bryggnätverk. Dessutom hjälper att skapa ett nätverk också att separera behållarna så att var och en använder sina egna.

För att skapa ett överbryggat nätverk, använd följande syntax:

$ sudo docker-nätverk skapa nätverksnamn


Verifiera snabbt att nätverket har skapats genom att lista de tillgängliga nätverken i din Docker-behållare.

$ sudo hamnarnätverk ls


Vi har skapat vårt 'nätverk1a' och det visas i följande utdata:


Steg 4: Skapa Backend-webbapplikationer

Vi skapar två webbinstanser att använda med vår lastbalanserare för demonstrationen. Docker har olika instanser som du kan använda. I det här fallet använder vi en Nginx-bild för att skapa webbapplikationerna.

$ sudo hamnarkörning -d --namn < webbapp-namn > --nätverk < nätverksnamn > nginx


Skapa den andra instansen.


Vi har nu två webbapplikationsinstanser på vår Docker. Verifiera detta genom att köra kommandot 'docker ps'.


Steg 5: Skapa din konfigurationsfil

Du måste skapa en HAProxy-konfigurationsfil som du kommer att använda med din Docker. Välj var du vill spara din konfigurationsfil. Öppna den sedan med en textredigerare. Vi använder nano för det här fallet och har vår konfigurationsfil lagrad i '/opt/haproxy/haproxy.cfg'.


Vår konfigurationsfil ser ut som följer. Lägg märke till hur varje avsnitt visar hur vi vill att HAProxy ska fördela belastningen på våra webbapplikationer/servrar:


Återigen använder vi port 80 för frontend-anslutningarna och port 8404 för lyssnarna.


Se till att du har lagt till rätt namn för din webbapplikation under backend-delen av konfigurationsfilen. Du kan också använda IP-adresserna för dina webbapplikationer istället för deras värdnamn. Slutligen, spara och avsluta filen. Du kan sedan starta om HAProxy.


Istället för att skapa en konfigurationsfil kan du skapa en Docker-fil som kopierar en befintlig konfigurationsfil och sedan bygga behållaren. Använd gärna den metod som fungerar bäst för dig.

Steg 6: Implementera HAProxy

Vi måste nu skapa en HAProxy-behållare, köra den och mappa dess port till den som vi inkluderade i konfigurationsfilen. Vi namnger vår behållare som 'haproxycontainer2' och mappar portarna 80 och 8404 från värden till de på Docker-behållaren.


Med det lyckades du distribuera HAProxy i en Docker-behållare. Du kan nu komma åt dina webbapplikationer/servrar. All trafik som kanaliseras till dem kommer att distribueras med HAProxy för att säkerställa att lastbalanseringen sker.

Slutsats

HAProxy hjälper till med lastbalansering och andra applikationer. När du arbetar med Docker är det möjligt att distribuera HAProxy så att dina webbapplikationer eller utvecklingsmiljö får ett bekvämt sätt att balansera lasten. Det här inlägget delade stegen för att distribuera HAProxy i en Docker-behållare. Följ dem och gör samma sak för ditt fall.