Cum să implementați HAProxy într-un container Docker

Cum Sa Implementati Haproxy Intr Un Container Docker



Cu HAProxy, îl puteți implementa într-un container Docker în loc să îl rulați ca pachet pe sistemul dvs. Utilizarea Docker vă asigură că nu interferați cu alte pachete și este o modalitate de a avea un mediu izolat pentru a rula HAProxy ca proxy invers sau în alte scopuri. Rularea HAProxy pe Docker este o sarcină simplă. Această postare discută pașii de urmat. Citește mai departe!

Implementarea HAProxy într-un container Docker

Când lucrați cu aplicațiile sau serverele dvs., HAProxy este la îndemână pentru a vă permite să controlați traficul pentru a obține o performanță și o scalabilitate ridicate. Mai mult, Docker vă oferă o platformă pentru a vă implementa și scala aplicația fără probleme. Combinând cele două, nevoile dvs. de scalabilitate și alte implementări vor fi bine îndeplinite.







În plus, tehnologiile HAProxy au creat un set de imagini Docker pe care le puteți utiliza pentru a implementa HAProxy într-un container Docker. Următorii sunt pașii pe care ar trebui să îi urmați.



Pasul 1: Porniți Docker



Sistemul dvs. trebuie să aibă instalat Docker pentru a-l porni înainte de a implementa HAProxy. În funcție de distribuția pe care o utilizați, asigurați-vă că ați instalat Docker. Pentru acest tutorial, vom lucra cu Ubuntu și vom verifica versiunea Docker pentru a confirma că este instalată pe sistemul nostru.






După ce ați instalat Docker, verificați starea acestuia pentru a vă asigura că rulează. Puteți să-l porniți cu următoarea comandă și apoi să-i verificați starea:

$ sudo systemctl start docker




Pasul 2: Obțineți imaginea oficială Docker HAProxy

Imaginea oficială HAProxy Docker este disponibilă din hub-ul Docker. Îl puteți descărca trăgându-l cu următoarea comandă:

$ sudo docker pull haproxy


Confirmați că avem HAProxy descărcat verificând imaginile Docker disponibile.

$ sudo imagini docker


Pasul 3: Creați o rețea Docker

Deoarece vom folosi aplicațiile web pe care dorim să le conectăm la HAProxy, este necesară o rețea bridge. În plus, crearea unei rețele ajută și la separarea containerelor, astfel încât fiecare să-și folosească propriile sale.

Pentru a crea o rețea cu punte, utilizați următoarea sintaxă:

$ sudo docker network create network_name


Verificați rapid dacă rețeaua a fost creată, listând rețelele disponibile în containerul dvs. Docker.

$ sudo rețeaua docker ls


Avem „network1a” creat și apare în următoarea ieșire:


Pasul 4: Creați aplicațiile web backend

Creăm două instanțe web pentru a le folosi cu echilibrul de încărcare pentru demonstrație. Docker are diferite instanțe pe care le puteți utiliza. În acest caz, folosim o imagine Nginx pentru a crea aplicațiile web.

$ sudo docker run -d --Nume < nume-aplicație-web > --reţea < numele retelei > nginx


Creați cealaltă instanță.


Acum avem două aplicații web pe Docker. Verificați acest lucru rulând comanda „docker ps”.


Pasul 5: Creați fișierul de configurare

Trebuie să creați un fișier de configurare HAProxy pe care îl veți folosi cu Docker. Alegeți unde să salvați fișierul de configurare. Apoi, deschideți-l cu un editor de text. Folosim nano pentru acest caz și avem fișierul nostru de configurare stocat în „/opt/haproxy/haproxy.cfg”.


Fișierul nostru de configurare arată după cum urmează. Observați cum fiecare secțiune arată cum vrem ca HAProxy să distribuie încărcarea pe aplicațiile/serverele noastre web:


Din nou, folosim portul 80 pentru conexiunile frontend și portul 8404 pentru ascultători.


Asigurați-vă că ați adăugat numele corect pentru aplicația dvs. web în secțiunea backend a fișierului de configurare. De asemenea, puteți utiliza adresele IP pentru aplicațiile dvs. web în loc de numele lor de gazdă. În cele din urmă, salvați și ieșiți din fișier. Apoi puteți reporni HAProxy.


În loc să creați un fișier de configurare, puteți crea un fișier Docker care să copieze un fișier de configurare existent și apoi să construiți containerul. Simțiți-vă liber să utilizați metoda care funcționează cel mai bine pentru dvs.

Pasul 6: Implementați HAProxy

Acum trebuie să creăm un container HAProxy, să-l rulăm și să mapam portul acestuia cu cel pe care l-am inclus în fișierul de configurare. Numim containerul nostru ca „haproxycontainer2” și mapăm porturile 80 și 8404 de la gazdă la cele de pe containerul Docker.


Cu asta, ați reușit să implementați HAProxy într-un container Docker. Acum puteți accesa aplicațiile/serverele dvs. web. Orice trafic care este canalizat către ei va fi distribuit folosind HAProxy pentru a se asigura că are loc echilibrarea sarcinii.

Concluzie

HAProxy ajută la echilibrarea încărcării și la alte aplicații. Când lucrați cu Docker, este posibil să implementați HAProxy astfel încât aplicațiile dvs. web sau mediul de dezvoltare să obțină o modalitate convenabilă de echilibrare a sarcinii. Această postare a împărtășit pașii pentru implementarea HAProxy într-un container Docker. Urmați-le și faceți același lucru pentru cazul dvs.