Comment installer, configurer et optimiser HAProxy sur Centos 7/6/5

Cet article vous explique comment installer, configurer & amp; optimisez HAProxy sur Centos 7/6/5 pour créer un équilibreur de charge hautes performances avec une connexion simultanée maximale de 10000.

HAProxy est un équilibreur de charge TCP / HTTP fiable et hautes performances. Vous pouvez en savoir plus sur HAProxy ici: son site officiel .
La version stable actuelle de HAProxy au moment de la publication de ce message est la 1.9 avec cette documentation officielle .

Installer HAProxy

Pour installer HAProxy, vous pouvez utiliser cette commande:

sudo yum install -y haproxy

Pour démarrer HAProxy:

sudo systemctl start haproxy

Pour arrêter HAProxy:

sudo systemctl stop haproxy

Pour vérifier le statut de HAProxy:

sudo systemctl status haproxy

Pour activer HAProxy s’exécute au démarrage

sudo systemctl enable haproxy

Configurer HAProxy

Notre réseau ressemblera à cela:

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

Dans cette topologie, HAProxy écoutera les demandes des utilisateurs sur le port 9000; toutes les demandes seront transférées vers deux backends: backend1 (172.16.10.20:5000) et backend2 (192.168.5.19:6000)

Par défaut, le fichier de configuration principal de HAProxy sera à: /etc/haproxy/haproxy.cfg

Nous devons configurer HAProxy pour répondre à nos besoins. Commencez par configurer l’écouteur frontal HAProxy. Modifiez le port d’écoute frontal dans la section principale principale du fichier de configuration comme suit:

---------------------------------------------------------------------
 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

Nous devons ensuite modifier nos applications principales:

---------------------------------------------------------------------
 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

Avant de redémarrer HAProxy, nous devons valider si notre fichier de configuration présente un problème avec cette commande:

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

dans cette commande: