{"id":89711,"date":"2020-07-25T13:42:31","date_gmt":"2020-07-25T11:42:31","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos"},"modified":"2020-07-25T13:42:31","modified_gmt":"2020-07-25T11:42:31","slug":"ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","title":{"rendered":"Instal\u0103m balansatorul de \u00eenc\u0103rcare HAProxy pe CentOS","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><strong><em>Articolul este tradus \u00een cadrul preg\u0103tirii pentru lansarea cursului <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/KbNT\/\">\u201eAdministrator Linux. Virtualizare \u0219i clusterizare\u201d<\/a><\/noindex><\/em><\/strong><\/p>\n<p><img decoding=\"async\" alt=\"Instal\u0103m balansatorul de \u00eenc\u0103rcare HAProxy pe CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/0383023d85d77710b1120e5b896a8433.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Balansarea \u00eenc\u0103rc\u0103rii este o solu\u021bie comun\u0103 pentru scalarea orizontal\u0103 a aplica\u021biilor web pe mai multe gazde, oferind utilizatorilor un singur punct de acces la serviciu. <noindex><a rel=\"nofollow\" href=\"http:\/\/www.haproxy.org\/\">HAProxy<\/a><\/noindex> este unul dintre cele mai populare programe de balansare a \u00eenc\u0103rc\u0103rii cu surs\u0103 deschis\u0103, care asigur\u0103, de asemenea, o disponibilitate ridicat\u0103 \u0219i func\u021bionalitate de proxy.<\/p>\n<p><\/p>\n<p>HAProxy \u00ee\u0219i propune s\u0103 optimizeze utilizarea resurselor, s\u0103 maximizeze l\u0103\u021bimea de band\u0103, s\u0103 minimizeze timpul de r\u0103spuns \u0219i s\u0103 evite suprasarcina fiec\u0103rei resurse \u00een parte. Poate fi instalat pe numeroase distribu\u021bii Linux, cum ar fi CentOS 8, pe care ne vom concentra \u00een acest ghid, precum \u0219i \u00een sisteme <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/haproxy-load-balancer-debian\/\">Debian 8<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/haproxy-load-balancer-ubuntu\/\">Ubuntu 16<\/a><\/noindex>.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Instal\u0103m balansatorul de \u00eenc\u0103rcare HAProxy pe CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/53bf7d1fa06f06f5d882e573f4984e4f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>HAProxy este deosebit de potrivit pentru site-uri web cu un trafic foarte mare \u0219i este, din acest motiv, frecvent folosit pentru a \u00eembun\u0103t\u0103\u021bi fiabilitatea \u0219i performan\u021ba configura\u021biilor de servicii web cu mai multe servere. \u00cen acest ghid, sunt prezentate pa\u0219ii pentru configurarea HAProxy ca balansor de \u00eenc\u0103rcare pe un gazduire cloud CentOS 8, care apoi direc\u021bioneaz\u0103 traficul c\u0103tre serverele dvs. web.<\/p>\n<p><\/p>\n<p>Ca o cerin\u021b\u0103 necesar\u0103 pentru a ob\u021bine cele mai bune rezultate, trebuie s\u0103 ave\u021bi cel pu\u021bin dou\u0103 servere web \u0219i un server pentru balansarea \u00eenc\u0103rc\u0103rii. Pe serverele web ar trebui s\u0103 ruleze cel pu\u021bin un serviciu web de baz\u0103, cum ar fi nginx sau httpd, pentru a putea verifica balansarea \u00eenc\u0103rc\u0103rii \u00eentre acestea.<\/p>\n<p><\/p>\n<h2 id=\"ustanovka-haproxy-na-centos-8\">Instalarea HAProxy pe CentOS 8<\/h2>\n<p><\/p>\n<p>Av\u00e2nd \u00een vedere c\u0103 HAProxy este o aplica\u021bie \u00een rapid\u0103 dezvoltare cu surs\u0103 deschis\u0103, distribu\u021bia disponibil\u0103 \u00een repozitoarele standard CentOS poate s\u0103 nu fie cea mai recent\u0103 versiune. Pentru a verifica versiunea actual\u0103, executa\u021bi urm\u0103toarea comand\u0103:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo yum info haproxy<\/code><\/pre>\n<p><\/p>\n<p>HAProxy ofer\u0103 \u00eentotdeauna trei versiuni stabile: dou\u0103 cele mai recente versiuni suportate \u0219i a treia, mai veche, care prime\u0219te \u00eenc\u0103 actualiz\u0103ri critice. Pute\u021bi verifica \u00eentotdeauna cea mai recent\u0103 versiune stabil\u0103 indicat\u0103 pe site-ul HAProxy \u0219i apoi decide cu ce versiune dori\u021bi s\u0103 lucra\u021bi.<\/p>\n<p><\/p>\n<p>\u00cen acest ghid, vom instala cea mai recent\u0103 versiune stabil\u0103 2.0, care nu a fost disponibil\u0103 \u00een repositoare standard la momentul scrierii ghidului. Vei trebui s\u0103 o instalezi din sursa original\u0103. Dar mai \u00eent\u00e2i, verific\u0103 dac\u0103 ai \u00eendeplinit cerin\u021bele necesare pentru a desc\u0103rca \u0219i compila programul.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo yum install gcc pcre-devel tar make -y<\/code><\/pre>\n<p><\/p>\n<p>Descarc\u0103 codul surs\u0103 folosind comanda de mai jos. Po\u021bi verifica dac\u0103 exist\u0103 o versiune mai recent\u0103 disponibil\u0103 pe <noindex><a rel=\"nofollow\" href=\"http:\/\/www.haproxy.org\/#down\">pagina de desc\u0103rcare HAProxy<\/a><\/noindex>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">wget http:\/\/www.haproxy.org\/download\/2.0\/src\/haproxy-2.0.7.tar.gz -O ~\/haproxy.tar.gz<\/code><\/pre>\n<p><\/p>\n<p>Dup\u0103 ce desc\u0103rcarea s-a finalizat, dezarhiveaz\u0103 fi\u0219ierele folosind comanda de mai jos:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">tar xzvf ~\/haproxy.tar.gz -C ~\/<\/code><\/pre>\n<p><\/p>\n<p>Acceseaz\u0103 directorul dezarhivat cu sursele:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">cd ~\/haproxy-2.0.7<\/code><\/pre>\n<p><\/p>\n<p>Apoi compileaz\u0103 programul pentru sistemul t\u0103u:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">make TARGET=linux-glibc<\/code><\/pre>\n<p><\/p>\n<p>\u0218i, \u00een final, instaleaz\u0103 HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo make install<\/code><\/pre>\n<p><\/p>\n<p>Acum HAProxy este instalat, dar sunt necesare c\u00e2teva manipul\u0103ri suplimentare pentru a-l face s\u0103 func\u021bioneze. S\u0103 continu\u0103m cu configurarea software-ului \u0219i serviciilor mai jos.<\/p>\n<p><\/p>\n<h2 id=\"nastroyka-haproxy-pod-vash-server\">Configurarea HAProxy pentru serverul t\u0103u<\/h2>\n<p><\/p>\n<p>Acum adaug\u0103 urm\u0103toarele directoare \u0219i fi\u0219ierul de statistic\u0103 pentru \u00eenregistr\u0103rile HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo mkdir -p \/etc\/haproxy\nsudo mkdir -p \/var\/lib\/haproxy\nsudo touch \/var\/lib\/haproxy\/stats<\/code><\/pre>\n<p><\/p>\n<p>Creeaz\u0103 un link simbolic pentru fi\u0219ierele binare, astfel \u00eenc\u00e2t s\u0103 po\u021bi executa comenzile HAProxy ca utilizator obi\u0219nuit:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo ln -s \/usr\/local\/sbin\/haproxy \/usr\/sbin\/haproxy<\/code><\/pre>\n<p><\/p>\n<p>Dac\u0103 vrei s\u0103 adaugi serverul proxy \u00een sistem ca un serviciu, copiaz\u0103 fi\u0219ierul haproxy.init din examples \u00een directorul t\u0103u \/etc\/init.d. Editeaz\u0103 permisiunile fi\u0219ierului astfel \u00eenc\u00e2t scriptul s\u0103 fie executabil, apoi re\u00eencarc\u0103 demonul systemd:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo cp ~\/haproxy-2.0.7\/examples\/haproxy.init \/etc\/init.d\/haproxy\nsudo chmod 755 \/etc\/init.d\/haproxy\nsudo systemctl daemon-reload<\/code><\/pre>\n<p><\/p>\n<p>Trebuie de asemenea s\u0103 permi\u021bi serviciului s\u0103 se reporneasc\u0103 automat la pornirea sistemului:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo chkconfig haproxy on<\/code><\/pre>\n<p><\/p>\n<p>Pentru comoditate, este recomandat s\u0103 adaugi un nou utilizator pentru a rula HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo useradd -r haproxy<\/code><\/pre>\n<p><\/p>\n<p>Dup\u0103 asta, po\u021bi verifica din nou num\u0103rul versiunii instalate folosind urm\u0103toarea comand\u0103:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">haproxy -v\nHA-Proxy version 2.0.7 2019\/09\/27 - https:\/\/haproxy.org\/<\/code><\/pre>\n<p><\/p>\n<p>\u00cen cazul nostru, versiunea ar trebui s\u0103 fie 2.0.7, a\u0219a cum este ar\u0103tat \u00een exemplul de mai sus.<\/p>\n<p><\/p>\n<p>\u00cen cele din urm\u0103, firewall-ul \u00een CentOS 8 este destul de restrictiv pentru acest proiect. Folose\u0219te comenzile de mai jos pentru a permite serviciile necesare \u0219i pentru a re\u00eenc\u0103rca firewall-ul:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo firewall-cmd --permanent --zone=public --add-service=http\nsudo firewall-cmd --permanent --zone=public --add-port=8181\/tcp\nsudo firewall-cmd --reload<\/code><\/pre>\n<p><\/p>\n<h2 id=\"nastroyka-balansirovschika-nagruzki\">Configurarea echilibratorului de \u00eenc\u0103rcare<\/h2>\n<p><\/p>\n<p>Configurarea HAProxy este un proces destul de simplu. Practic, tot ce trebuie s\u0103 face\u021bi este s\u0103 \u00eei spune\u021bi HAProxy ce conexiuni trebuie s\u0103 asculte \u0219i unde s\u0103 le retransmit\u0103.<\/p>\n<p><\/p>\n<p>Acest lucru se face prin crearea unui fi\u0219ier de configurare \/etc\/haproxy\/haproxy.cfg cu set\u0103rile necesare. Pute\u021bi citi despre parametrii de configurare HAProxy <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/2.0\/configuration.html\">pe pagina de documenta\u021bie<\/a><\/noindex>, dac\u0103 dori\u021bi s\u0103 afla\u021bi mai multe despre aceasta.<\/p>\n<p><\/p>\n<h2 id=\"balansirovka-nagruzki-na-transportnom-urovne-layer-4\">Echilibrarea \u00eenc\u0103rc\u0103turii la nivel de transport (layer 4)<\/h2>\n<p><\/p>\n<p>S\u0103 \u00eencepem cu configura\u021bia de baz\u0103. Crea\u021bi un nou fi\u0219ier de configurare, de exemplu, folosind <strong>vi<\/strong> cu comanda de mai jos:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo vi \/etc\/haproxy\/haproxy.cfg<\/code><\/pre>\n<p><\/p>\n<p>Ad\u0103uga\u021bi \u00een fi\u0219ier urm\u0103toarele sec\u021biuni. \u00cenlocui\u021bi <strong>server_name<\/strong> cu ceea ce ar trebui s\u0103 apar\u0103 pe serverele dvs. \u00een pagina de statistic\u0103, iar <strong>private_ip<\/strong> - cu IP-urile private ale serverelor c\u0103tre care dori\u021bi s\u0103 redirec\u021biona\u021bi traficul web. Pute\u021bi verifica IP-urile private <noindex><a rel=\"nofollow\" href=\"https:\/\/hub.upcloud.com\/networks\/private?_ga=2.194047085.1141044831.1595511160-752947894.1595511160\">\u00een panoul de control UpCloud<\/a><\/noindex> \u0219i pe tab-ul <em>Re\u021bea privat\u0103<\/em> din meniu <em>Re\u021bea<\/em>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">global\n   log \/dev\/log local0\n   log \/dev\/log local1 notice\n   chroot \/var\/lib\/haproxy\n   stats timeout 30s\n   user haproxy\n   group haproxy\n   daemon\n\ndefaults\n   log global\n   mode http\n   option httplog\n   option dontlognull\n   timeout connect 5000\n   timeout client 50000\n   timeout server 50000\n\nfrontend http_front\n   bind *:80\n   stats uri \/haproxy?stats\n   default_backend http_back\n\nbackend http_back\n   balance roundrobin\n   server server_name1 private_ip1:80 check\n   server server_name2 private_ip2:80 check<\/code><\/pre>\n<p><\/p>\n<p>Aceasta define\u0219te echilibratorul de \u00eenc\u0103rcare la nivel de transport (layer 4) cu numele extern http_front, care ascult\u0103 pe portul 80 \u0219i apoi redirec\u021bioneaz\u0103 traficul c\u0103tre backend-ul implicit numit http_back. Statistica suplimentar\u0103 \/haproxy?stats conecteaz\u0103 pagina de statistic\u0103 la adresa specificat\u0103.<\/p>\n<p><\/p>\n<h2 id=\"razlichnye-algoritmy-balansirovki-nagruzki\">Diferitele algoritme de echilibrare a \u00eenc\u0103rc\u0103turii.<\/h2>\n<p><\/p>\n<p>Specifica\u021bia serverelor \u00een sec\u021biunea backend permite HAProxy s\u0103 utilizeze aceste servere pentru echilibrarea \u00eenc\u0103rc\u0103turii conform algoritmului de rotire, atunci c\u00e2nd este posibil.<\/p>\n<p><\/p>\n<p>Algoritmii de echilibrare a \u00eenc\u0103rc\u0103turii sunt utiliza\u021bi pentru a determina pe care server din backend se va trimite fiecare conexiune. Iat\u0103 c\u00e2teva dintre op\u021biunile utile:<\/p>\n<p><\/p>\n<ul>\n<li><strong>Roundrobin:<\/strong> fiecare server este folosit pe r\u00e2nd conform greut\u0103\u021bii sale. Acesta este cel mai fluid \u0219i corect algoritm, atunci c\u00e2nd timpul de procesare al serverelor r\u0103m\u00e2ne distribuit uniform. Acest algoritm este dinamic, permi\u021b\u00e2nd ajustarea greut\u0103\u021bii serverului \u00een timp real.<\/li>\n<li><strong>Leastconn:<\/strong> se alege serverul cu cel mai mic num\u0103r de conexiuni. Se efectueaz\u0103 o selec\u021bie ciclic\u0103 \u00eentre serverele cu sarcini egale. Utilizarea acestui algoritm este recomandat\u0103 pentru sesiuni lungi, cum ar fi LDAP, SQL, TSE etc., dar nu este foarte potrivit\u0103 pentru sesiuni scurte, cum ar fi HTTP.<\/li>\n<li><strong>Primul:<\/strong> primul server cu sloturi disponibile pentru conectare prime\u0219te conexiunea. Serverele sunt selectate de la cel mai mic identificator numeric la cel mai mare, care, \u00een mod implicit, corespunde pozi\u021biei serverului \u00een ferm\u0103. Odat\u0103 ce serverul atinge valoarea maxconn, se utilizeaz\u0103 urm\u0103torul server.<\/li>\n<li><strong>Sursa:<\/strong> Adresa IP surs\u0103 este hashat\u0103 \u0219i \u00eemp\u0103r\u021bit\u0103 la greutatea total\u0103 a serverelor active pentru a determina care server va primi cererea. Astfel, aceea\u0219i adres\u0103 IP a clientului va fi \u00eentotdeauna livrat\u0103 aceluia\u0219i server, \u00een timp ce serverele r\u0103m\u00e2n neschimbate.<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"nastroyka-balansirovki-nagruzki-na-prikladnom-urovne-layer-7\">Configurarea echilibr\u0103rii \u00eenc\u0103rc\u0103rii la nivel de aplica\u021bie (layer 7)<\/h2>\n<p><\/p>\n<p>O alt\u0103 op\u021biune disponibil\u0103 este configurarea unui echilibror de \u00eenc\u0103rcare pentru a func\u021biona la nivel de aplica\u021bie (layer 7), ceea ce este util atunci c\u00e2nd p\u0103r\u021bile aplica\u021biei web sunt situate pe diferite gazde. Acest lucru poate fi realizat prin reglementarea transferului de conexiune, de exemplu, dup\u0103 URL.<\/p>\n<p><\/p>\n<p>Deschide\u021bi fi\u0219ierul de configurare HAProxy cu un editor de text:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo vi \/etc\/haproxy\/haproxy.cfg<\/code><\/pre>\n<p><\/p>\n<p>Apoi, configura\u021bi segmentele frontend \u0219i backend conform exemplului de mai jos:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">frontend http_front\n   bind *:80\n   stats uri \/haproxy?stats\n   acl url_blog path_beg \/blog\n   use_backend blog_back if url_blog\n   default_backend http_back\n\nbackend http_back\n   balance roundrobin\n   server server_name1 private_ip1:80 check\n   server server_name2 private_ip2:80 check\n\nbackend blog_back\n   server server_name3 private_ip3:80 check<\/code><\/pre>\n<p><\/p>\n<p>Frontendul declar\u0103 o regul\u0103 ACL numit\u0103 url_blog, care se aplic\u0103 tuturor conexiunilor cu c\u0103ile care \u00eencep cu \/blog. Use_backend determin\u0103 c\u0103 conexiunile care corespund condi\u021biei url_blog trebuie s\u0103 fie gestionate de backendul numit blog_back, iar toate celelalte cereri sunt procesate de backendul implicit.<\/p>\n<p><\/p>\n<p>Din partea backend-ului, configura\u021bia stabile\u0219te dou\u0103 grupuri de servere: http_back, ca \u0219i \u00eenainte, \u0219i noul, numit blog_back, care gestioneaz\u0103 conexiunile cu example.com\/blog.<\/p>\n<p><\/p>\n<p>Dup\u0103 modificarea set\u0103rilor, salva\u021bi fi\u0219ierul \u0219i reporni\u021bi HAProxy cu urm\u0103toarea comand\u0103:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl restart haproxy<\/code><\/pre>\n<p><\/p>\n<p>Dac\u0103 \u00een timpul pornirii a\u021bi primit orice avertiz\u0103ri sau mesaje de eroare, verifica\u021bi configura\u021bia pentru a le identifica \u0219i asigura\u021bi-v\u0103 c\u0103 a\u021bi creat toate fi\u0219ierele \u0219i folderele necesare, apoi \u00eencerca\u021bi din nou s\u0103 reporni\u021bi.<\/p>\n<p><\/p>\n<h2 id=\"testirovanie-nastroyki\">Testarea configura\u021biei<\/h2>\n<p><\/p>\n<p>C\u00e2nd HAProxy este configurat \u0219i pornit, deschide\u021bi adresa IP public\u0103 a serverului de echilibrare a \u00eenc\u0103rc\u0103rii \u00een browser pentru a verifica dac\u0103 v-a\u021bi conectat corect la backend. Parametrul stats uri din configura\u021bie genereaz\u0103 o pagin\u0103 de statistic\u0103 la adresa specificat\u0103.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip\/haproxy?stats<\/code><\/pre>\n<p><\/p>\n<p>C\u00e2nd \u00eenc\u0103rca\u021bi pagina de statistic\u0103, dac\u0103 toate serverele dvs. sunt afi\u0219ate \u00een verde, atunci configura\u021bia a fost reu\u0219it\u0103!<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Instal\u0103m balansatorul de \u00eenc\u0103rcare HAProxy pe CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/ce912c5824d0294537b984fe04bdcc8b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Pagina de statistic\u0103 con\u021bine informa\u021bii utile pentru monitorizarea host-urilor dvs. web, inclusiv timpul de func\u021bionare \/ oprire \u0219i num\u0103rul de sesiuni. Dac\u0103 un server este marcat cu ro\u0219u, asigura\u021bi-v\u0103 c\u0103 serverul este activ \u0219i c\u0103 \u00eel pute\u021bi pinge de pe ma\u0219ina de echilibrare a \u00eenc\u0103rc\u0103rii.<\/p>\n<p><\/p>\n<p>Dac\u0103 echilibratorul dvs. de \u00eenc\u0103rcare nu r\u0103spunde, asigura\u021bi-v\u0103 c\u0103 conexi\u021bile HTTP nu sunt blocate de un firewall. De asemenea, verifica\u021bi c\u0103 HAProxy func\u021bioneaz\u0103 cu comanda de mai jos:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl status haproxy<\/code><\/pre>\n<p><\/p>\n<h2 id=\"zaschita-stranicy-statistiki-s-pomoschyu-parolya\">Protec\u021bia paginii de statistic\u0103 cu parol\u0103<\/h2>\n<p><\/p>\n<p>Totu\u0219i, dac\u0103 pagina de statistic\u0103 este pur \u0219i simplu expus\u0103 \u00een frontend, aceasta este deschis\u0103 pentru observa\u021bie public\u0103, ceea ce nu este neap\u0103rat o idee bun\u0103. \u00cen schimb, pute\u021bi aloca un num\u0103r de port propriu, ad\u0103ug\u00e2nd exemplul de mai jos la sf\u00e2r\u0219itul fi\u0219ierului dvs. haproxy.cfg. \u00cenlocui\u021bi <strong>username<\/strong> \u0219i <strong>parola<\/strong> cu ceva sigur:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">listen stats\n   bind *:8181\n   stats enable\n   stats uri \/\n   stats realm Haproxy Statistics\n   stats auth username:password<\/code><\/pre>\n<p><\/p>\n<p>Dup\u0103 ce a\u021bi ad\u0103ugat noua grup\u0103 de ascult\u0103tori, elimina\u021bi referin\u021ba veche la stats uri din grupul frontend. C\u00e2nd a\u021bi terminat, salva\u021bi fi\u0219ierul \u0219i reporni\u021bi HAProxy.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl restart haproxy<\/code><\/pre>\n<p><\/p>\n<p>Apoi, redeschide\u021bi echilibratorul de \u00eenc\u0103rcare cu noul num\u0103r de port \u0219i conecta\u021bi-v\u0103 cu numele de utilizator \u0219i parola pe care le-a\u021bi specificat \u00een fi\u0219ierul de configurare.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip:8181<\/code><\/pre>\n<p><\/p>\n<p>Asigura\u021bi-v\u0103 c\u0103 toate serverele dvs. sunt \u00een continuare afi\u0219ate \u00een verde, apoi deschide\u021bi doar IP-ul echilibratorului de \u00eenc\u0103rcare f\u0103r\u0103 niciun num\u0103r de port \u00een browserul dvs.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip\/<\/code><\/pre>\n<p><\/p>\n<p>Dac\u0103 ave\u021bi o oarecare diversitate de pagini \u021bint\u0103 pe serverele dvs. interne, ve\u021bi observa c\u0103 de fiecare dat\u0103 c\u00e2nd re\u00eenc\u0103rca\u021bi pagina, primi\u021bi un r\u0103spuns de la un alt gazd\u0103. Pute\u021bi \u00eencerca diverse algoritmi de balansare \u00een sec\u021biunea de configurare sau s\u0103 consulta\u021bi <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/\">documenta\u021bia complet\u0103<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie-balansirovschik-nagruzki-haproxy\">Concluzie: balansorul de \u00eenc\u0103rcare HAProxy<\/h2>\n<p><\/p>\n<p>Felicit\u0103ri pentru configurarea cu succes a balansorului de \u00eenc\u0103rcare HAProxy! Chiar \u0219i cu o configura\u021bie de baz\u0103 a balans\u0103rii sarcinilor, pute\u021bi \u00eembun\u0103t\u0103\u021bi semnificativ performan\u021ba \u0219i disponibilitatea aplica\u021biei dvs. web. Acest ghid este doar o introducere \u00een balansarea \u00eenc\u0103rc\u0103turii cu HAProxy, care poate realiza mult mai mult dec\u00e2t ceea ce se poate descrie \u00eentr-un scurt manual de configurare. V\u0103 recomand\u0103m s\u0103 experimenta\u021bi cu diferite configura\u021bii folosind <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/2.0\/configuration.html\">documenta\u021bia extins\u0103<\/a><\/noindex>, disponibil\u0103 pentru HAProxy, \u0219i apoi s\u0103 \u00eencepe\u021bi s\u0103 planifica\u021bi balansarea \u00eenc\u0103rc\u0103turii pentru mediul dvs. de produc\u021bie.<\/p>\n<p><\/p>\n<p>Folosind mai multe gazde pentru a proteja serviciul dvs. web cu un surplus de putere, balansorul de \u00eenc\u0103rcare \u00een sine poate reprezenta totu\u0219i un punct de e\u0219ec. Pute\u021bi \u00eembun\u0103t\u0103\u021bi \u0219i mai mult disponibilitatea ridicat\u0103 prin configurarea unui IP flotant \u00eentre mai multe balansori de \u00eenc\u0103rcare. Pute\u021bi afla mai multe despre acest lucru \u00een <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/floating-ip-addresses\/\">articolul nostru despre IP-urile flotante de pe UpCloud<\/a><\/noindex>.<\/p>\n<p>Mai multe detalii despre curs <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/KbNT\/\">\u201eAdministrator Linux. Virtualizare \u0219i clusterizare\u201d<\/a><\/noindex>***<\/p>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/512238\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u044f\u00bb \u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u2014 \u044d\u0442\u043e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u0445\u043e\u0441\u0442\u0430\u043c \u0441 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0435\u0434\u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0443. HAProxy \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0434\u043b\u044f \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":89713,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-89711","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 HAProxy \u043d\u0430 CentOS | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-25T11:42:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-25T11:42:31+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Instal\u0103m balansorul de \u00eenc\u0103rcare HAProxy pe CentOS | ProHoster","description":"Traducerea articolului a fost preg\u0103tit\u0103 \u00een perspectiva \u00eenceperii cursului \u201eAdministrator Linux.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 HAProxy \u043d\u0430 CentOS | ProHoster","og:description":"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-25T11:42:31+00:00","article:modified_time":"2020-07-25T11:42:31+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"89711","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:05:27","updated":"2022-10-04 12:00:44","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/89711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=89711"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/89711\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/89713"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=89711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=89711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=89711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}