Sådan installeres, konfigureres og optimeres HAProxy på Centos 7/6/5

Dette indlæg viser dig, hvordan du installerer, konfigurerer & amp; optimer HAProxy på Centos 7/6/5 for at skabe en højtydende belastningsafbalancering med maksimal samtidig forbindelse til 10000.

HAProxy er en pålidelig TCP / HTTP-belastningsbalancer med høj ydeevne. Du kan læse mere om HAProxy her på sit officielle websted .

Den aktuelle stabile version af HAProxy på dette tidspunkt er 1,9 med denne officiel dokumentation .

Installer HAProxy

For at installere HAProxy kan du bruge denne kommando:

sudo yum install -y haproxy

Sådan starter du HAProxy:

sudo systemctl start haproxy

For at stoppe HAProxy:

sudo systemctl stop haproxy

Sådan kontrolleres HAProxy-status:

sudo systemctl status haproxy

For at aktivere HAProxy-kørsler ved opstart

sudo systemctl enable haproxy

Konfigurer HAProxy

Vores netværk vil se sådan ud:

user -----> haproxy:9000 -------->backend1 (172.16.10.20:5000)
                         -------->backend2 (192.168.5.19:6000)

I denne topologi vil HAProxy lytte til brugeranmodning på port 9000, al anmodning videresendes til 2 backends: backend1 (172.16.10.20:5000) og backend2 (192.168.5.19:6000)

Som standard vil HAProxy hovedkonfigurationsfil være på: /etc/haproxy/haproxy.cfg

Vi er nødt til at konfigurere HAProxy til at imødekomme vores behov. Først konfigureres HAProxy frontend-lytter. Rediger frontend lytteport i konfigurationsfilen hoved frontend sektion som følger:

---------------------------------------------------------------------
 main frontend which proxys to the backends
 ---------------------------------------------------------------------
 frontend  main *:9000
  acl url_static path_beg -i /static /images /javascript /stylesheets
  acl url_static path_end -i .jpg .gif .png .css .js
  use_backend static if url_static
 default_backend app

Derefter skal vi ændre vores backend-apps:

---------------------------------------------------------------------
 round robin balancing between the various backends
 ---------------------------------------------------------------------
 backend app
     balance     roundrobin
     server   backend1  172.16.10.20:5000 check
     server   backend2  192.168.5.19:6000 check
     #server  app1 127.0.0.1:5001 check
     #server  app2 127.0.0.1:5002 check
     #server  app3 127.0.0.1:5003 check
     #server  app4 127.0.0.1:5004 check

Inden genstart af HAProxy, skal vi validere, hvis vores konfigurationsfil har noget galt med denne kommando:

 haproxy -c -V -f /etc/haproxy/haproxy.cfg 

i denne kommando:

  • -c: Kontroller
  • -V: Verbose
  • -f: File
Related:  “Opdateringer blev afvist, fordi mærket allerede findes”, da man forsøgte at skubbe SourceTree ind

Hvis alt går godt, vil du se output som dette:

Configuration file is valid

Nu kan vi gemme vores konfigurationsfil og genstarte HAProxy for at anvende ændringer:

sudo systemctl restart haproxy

Kontroller status for HAProxy:

sudo systemctl status haproxy

Optimer HAProxy

Først og fremmest er vi nødt til at aktivere HAProxy-statistikside / sundhedstjek ved at tilføje disse linjer til slutningen af ​​hovedkonfigurationsfilen på: /etc/haproxy/haproxy.cfg

---------------------------------------------------------------------
 HAProxy Stats at: 171.244.5.195:8088/haproxy?stats
 --------------------------------------------------------------------
 listen  stats   *:8088
         mode            http
         log             global
        maxconn 10     
        timeout client  100s     
        timeout server  100s     
        timeout connect 100s     
        timeout queue   100s     
        stats enable     
        stats hide-version     
        stats refresh 30s     
        stats show-node     
        stats auth admin:config91231passwd    
        stats uri  /haproxy?stats