Table of Contents

Principe de fonctionnement HAProxy

HAProxy reçoit le trafic entrant via ses “frontends”, Une fois le trafic reçu, HAProxy le distribue vers des “backends”. En cas de panne d'un serveur, HAProxy redirige automatiquement le trafic vers les serveurs restants, assurant ainsi une continuité de service.

La configuration de HAProxy se fait via le fichier de configuration haproxy.cfg situé à /etc/haproxy/haproxy.cfg

Il est constitué de 4 sections:

Cette section contient les paramètres globaux affectant le processus principal d'HAProxy, comme la journalisation et les droits d'accès.

Définissez ici les valeurs par défaut pour les autres sections, évitant ainsi la répétition de paramètres communs


Le Frontend et le Backend

Frontend

Un frontend dans HAProxy définit comment les connexions entrantes sont gérées. C'est le point d'entrée pour le trafic client et spécifie :

Par exemple, un frontend typique pourrait ressembler à ceci :

frontend front_webservers
    bind *:443
    default_backend backend_webservers
    option forwardfor

Dans cet exemple le frontend écoute sur le port 443 et dirige le trafic vers un backend nommé “backend_webservers”


Backend

Un backend dans HAProxy définit un groupe de serveurs qui traitent les requêtes reçues par le frontend. Il comprend :

Voici un exemple de configuration de backend :

backend backend_webservers
    balance roundrobin
    server srv-web-1 192.168.1.10:443 check
    server srv-web-2 192.168.1.11:443 check

Ce backend utilise l'algorithme roundrobin pour distribuer les requêtes entre deux serveurs web.


Exemples simples d'utilisation

URL Forwarding


Load balncing WEB


Load balancing TLS