HAProxy est un puissant logiciel open source qui permet d’équilibrer les charges et de mettre en place des proxys pour les applications basées sur TCP et HTTP. Il est souvent utilisé dans les systèmes à haute disponibilité pour répartir efficacement les requêtes et ainsi améliorer la stabilité et les performances d’une application. HAProxy s’installe facilement sous Debian 12 : découvrez ici la marche à suivre.

Qu’est-ce que HAProxy ?

HAProxy (High Availability Proxy) est un load balancer et un reverse proxy performant et fiable, utilisé pour distribuer le trafic réseau et d’application. L’application prend en charge à la fois la couche 4 (la couche transport, par exemple TCP) et la couche 7 (la couche application, par exemple HTTP) du modèle OSI pour la répartition des charges. Grâce à sa faible latence, sa grande efficacité et ses nombreuses possibilités de configuration, HAProxy convient aux entreprises de toutes tailles.

Les entreprises et les développeurs utilisent HAProxy pour répartir la charge sur plusieurs serveurs backend, gérer les pannes de serveur et améliorer les performances générales des applications. Il joue un rôle central dans de nombreuses infrastructures Web, en particulier pour les applications hautement disponibles et évolutives. Ses principales fonctionnalités comprennent la terminaison SSL/TLS, les contrôles d’état des serveurs backend, la limitation de débit et les mécanismes de protection DDoS.

Serveurs dédiés
Performance et innovation

Profitez de votre propre serveur, avec hardware dédié, intégration Cloud, facturation à la minute et processeur Intel® Xeon® ou AMD.

Installation de HAProxy sur Debian 12 étape par étape

Étape 1 : mettre à jour le système

Avant d’installer HAProxy, votre distribution Linux doit être mise à jour. Cela permet de s’assurer que tous les paquets sont à jour et que l’installation se déroule sans problème.

La commande suivante met à jour les listes de paquets et installe toutes les mises à jour disponibles pour Debian 12 :

sudo apt update && sudo apt upgrade -y
bash

Étape 2 : installer HAProxy

Debian 12 inclut HAProxy dans ses sources de paquets officielles, l’installation peut donc se faire facilement avec apt, le gestionnaire de paquets intégré.

sudo apt install haproxy -y
bash

Cette commande télécharge et installe HAProxy avec toutes les dépendances nécessaires.

Étape 3 : vérifier la version de HAProxy

Après l’installation, vérifiez que HAProxy a été installé avec succès. Pour cela, exécutez la commande suivante pour afficher la version installée de HAProxy :

haproxy -v
bash

La sortie devrait ressembler à ceci :

Image: Capture d’écran de la version actuelle de HAProxy dans le terminal
Après avoir exécuté la commande, vous verrez la version actuellement installée de HAProxy dans votre terminal.

De cette manière, vous vous assurez que HAProxy a été correctement installé.

Étape 4 : activer HAProxy en tant que service

Pour que HAProxy démarre automatiquement au démarrage du système et fonctionne en permanence, le service doit être activé et lancé.

sudo systemctl enable haproxy
sudo systemctl start haproxy
bash

Enfin, pour vérifier que le service fonctionne correctement, utilisez la commande suivante :

sudo systemctl status haproxy
bash

Si HAProxy fonctionne correctement, une sortie comportant « active (running) » devrait apparaître, comme ci-dessous :

Image: Capture d’écran de l’état de HAProxy dans le terminal
Si l’état « active (running) » s’affiche dans le terminal, vous avez la confirmation que HAProxy fonctionne sans problème.

Étape 5 : configuration de base de HAProxy

Le fichier de configuration de HAProxy se trouve dans le chemin d’accès /etc/haproxy/haproxy.cfg. Avant d’y apporter des modifications, il est conseillé d’en faire une copie, dont vous pourrez vous servir en cas de doute ou d’erreur.

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak
bash

Vous pouvez maintenant éditer le fichier avec l’éditeur de votre choix (comme Vim ou encore nano) :

sudo nano /etc/haproxy/haproxy.cfg
bash

Voici un exemple de configuration simple de HAProxy :

global
	log /dev/log local0
	log /dev/log local1 notice
	chroot /var/lib/haproxy
	stats socket /run/haproxy/admin.sock mode 660 level admin
	stats timeout 30s
	user haproxy
	group haproxy
	daemon
defaults
	log global
	option httplog
	option dontlognull
	timeout connect 5000ms
	timeout client 50000ms
	timeout server 50000ms
frontend http_front
	bind *:80
	default_backend web_servers
backend web_servers
	balance roundrobin
	server server1 192.168.1.10:80 check
	server server2 192.168.1.11:80 check
txt

Cette configuration distribue les requêtes HTTP sur deux serveurs Web en utilisant la méthode Round Robin. Elle est divisée en plusieurs sections. Tout d’abord, la section globale définit les paramètres de base de HAProxy. Elle définit par exemple le compte d’utilisateur sous lequel HAProxy fonctionne et l’endroit où les journaux sont stockés. De plus, un répertoire chroot peut être défini afin d’exécuter HAProxy dans un environnement restreint et ainsi d’en améliorer la sécurité.

Après les paramètres globaux vient la section defaults, qui définit les valeurs par défaut pour toutes les configurations ultérieures. C’est ici, par exemple, que l’on détermine que HAProxy fonctionne en mode HTTP et que la journalisation HTTP est activée. Divers délais d’attente sont également définis.

Les autres sections du fichier de configuration, telles que frontend et backend, déterminent la gestion concrète du trafic. La section « frontend » détermine les ports sur lesquels HAProxy accepte les requêtes et la manière dont elles sont transmises. La section « backend » définit ensuite les serveurs vers lesquels le trafic est redirigé. Des algorithmes de load balancing peuvent être utilisés ici.

Après avoir modifié le fichier, vous devez l’enregistrer et redémarrer HAProxy :

sudo systemctl restart haproxy
bash

L’installation de HAProxy sur Debian 12 est maintenant terminée. La configuration peut être adaptée à tout moment en modifiant le fichier de configuration.

Serveurs GPU
Hardware dédié avec une puissante carte graphique

Utilisez la puissance de calcul GPU en toute flexibilité pour gérer de grandes quantités de données et payez uniquement les ressources utilisées.

Cet article vous a-t-il été utile ?
Aller au menu principal