HAProxy : Reverse Proxy & Load Balancing

HAProxy
HAProxy
WAN 192.168.43.240 / LAN 10.1.43.1
Backends
Web1 (10.1.43.2) + Web2 (10.1.43.3)
HAProxyApache2Round Robin Health CheckNATiptablesDNAT

Objectif

Mettre en place un reverse proxy avec HAProxy pour répartir la charge entre deux serveurs web Apache2, assurer la haute disponibilité avec bascule automatique (failover) et superviser l'état des backends via la page /stats.

"Cluster web derrière HAProxy avec équilibrage Round Robin 50/50, supervision /stats et simulation de panne d'un backend."

Architecture

Client (192.168.43.X) HAProxy (192.168.43.240:80) Web1 (10.1.43.2) | Web2 (10.1.43.3)

Configuration HAProxy (extrait)

listen cluster_web
  bind 192.168.43.240:80
  balance roundrobin
  option httpclose
  server web1 10.1.43.2:80 check
  server web2 10.1.43.3:80 check
  stats enable
  stats auth admin:admin
  stats uri /stats

Tests réalisés

Scénarios validés
  • Alternance Web1/Web2 vérifiée par rafraîchissement HTTP
  • Page /stats : état UP/DOWN des backends en temps réel
  • Test de panne : arrêt Apache2 sur Web1 → bascule automatique vers Web2

Résultats

  • Répartition de charge opérationnelle entre 2 serveurs
  • Haute disponibilité basique (failover) en cas de panne d'un backend
  • Supervision simple via /stats avec authentification
Retour aux Projets