Comment configurer HAProxy avec Keepalived pour une haute disponibilité

Comment Configurer Haproxy Avec Keepalived Pour Une Haute Disponibilite



Lorsque vous disposez d'un équilibreur de charge, un défi courant consiste à assurer la disponibilité, en particulier lorsque la disponibilité continue du service est requise. Même un équilibreur de charge peut échouer si vous n’avez pas intégré un moyen de garantir sa disponibilité, et c’est là que Keepalived entre en jeu.

Il s'agit d'un framework open source conçu pour que les systèmes Linux atteignent la fiabilité en gérant l'équilibrage de charge et le basculement IP. Keepalived est utilisé avec un équilibreur de charge tel que HAProxy pour assurer la continuité du service afin d'atteindre la fiabilité. Cet article présente Keepalived et passe en revue les étapes pour le configurer avec HAProxy.

Qu’est-ce que Keepalived ?

Un équilibreur de charge, tel que HAProxy, est pratique pour gérer le trafic vers votre site. Cependant, il peut arriver que la disponibilité ne soit pas garantie. Keepalived est un logiciel open source qui garantit une haute disponibilité en gérant le basculement IP avec votre équilibreur de charge et fonctionne de manière transparente avec HAProxy.







Certaines des fonctionnalités clés fournies par Keepalived sont les suivantes :



1. Gestion IP virtuelle

Tous les serveurs se voient attribuer une adresse IP virtuelle par Keepalived, ce qui leur permet de fonctionner comme une seule entité virtuelle. Keepalived transfère l'adresse IP virtuelle vers un serveur de sauvegarde en cas de basculement, évitant ainsi les temps d'arrêt.



2. Vérification de la santé

Keepalived est conçu de manière à pouvoir vérifier la santé de tous les services qu'il gère. Par exemple, si un serveur ne répond pas, il démarre immédiatement un basculement et trouve un serveur de sauvegarde. Avec cette fonctionnalité de vérification de l’état et de basculement, la disponibilité est garantie.





3. Équilibrage de charge

Bien que son objectif principal ne soit pas d’équilibrer la charge, il est possible de le configurer pour distribuer le trafic entrant vers différents serveurs. Cette fonctionnalité est combinée à un équilibreur de charge pour améliorer les performances du système.

Comment configurer HAProxy avec Keepalived

Nous avons déjà mentionné que Keepalived fonctionne avec un équilibreur de charge. Pour ce cas, nous avons mis en place HAProxy avec Keepalived pour une haute disponibilité. Par conséquent, nous devons d’abord installer HAProxy, puis le configurer. Suivez les étapes indiquées :



Étape 1 : Installer HAProxy

L'installation de HAProxy est un processus simple, d'autant plus que HAProxy est disponible à partir du référentiel Linux par défaut. Nous travaillons avec Ubuntu pour ce tutoriel, mais les étapes sont similaires à celles des autres distributions.

Avant d'installer HAProxy, mettez à jour rapidement le référentiel.

$ sudo mise à jour appropriée

Vous pouvez maintenant utiliser APT pour installer HAProxy.

$ sudo apt-get installer haproxy

Étape 2 : configurer HAProxy

Sur votre HAProxy, nous devons accéder au fichier de configuration, définir comment vous souhaitez recevoir le trafic entrant de vos appareils clients, puis définir sur quels serveurs distribuer le trafic.

Commencez par accéder au fichier de configuration HAProxy.

$ sudo nano / etc. / haproxy / haproxy.cfg

Pour ce cas, nous précisons que nous écouterons toutes les connexions entrantes via le port 80. Pour le backend, nous spécifions deux serveurs utilisant le round robin pour répartir le trafic. Assurez-vous de remplacer les adresses IP des serveurs pour qu'elles correspondent à vos serveurs réels.

Après avoir apporté les modifications requises au fichier de configuration, enregistrez-le et quittez. Enfin, redémarrez HAProxy.

Étape 3 : Installer Keepalived

Keepalived n'est pas préinstallé sous Linux. En tant que tel, nous devons l'installer à partir du référentiel par défaut en utilisant APT. Exécutez la commande suivante :

$ sudo apt-get installer rester en vie

Confirmez l'installation en appuyant sur « y » lorsque vous y êtes invité. Une fois l'installation terminée, vérifiez que Keepalived a été installé en vérifiant sa version.

Étape 4 : Configurer Keepalived

Pour configurer Keepalived, il faut accéder à son fichier de configuration qui se trouve dans « /etc/keepalived/keepalived.conf ». Ici, nous devons définir comment nous voulons que Keepalived offre une haute disponibilité à HAProxy.

Nous devons définir l'adresse IP virtuelle, la priorité des serveurs disponibles et le script pour vérifier la santé et l'état de HAProxy. Dans le fichier de configuration suivant, nous créons le script « chk_haproxy » pour évaluer l'état de HAProxy toutes les deux secondes. Nous le spécifions en utilisant « enp0s3 » comme interface réseau et créons une instance VRRP nommée « VI_1 ». Modifiez l'interface réseau en fonction de votre cas.

Néanmoins, définissez un ID de routeur qui fonctionne pour votre interface et définissez l'adresse IP virtuelle à utiliser. Vous devez également modifier le mot de passe d'authentification.

Étape 5 : Redémarrez Keepalived


Une fois votre configuration Keepalived définie, enregistrez le fichier et fermez l'éditeur de texte. Vous pouvez alors vérifier la validité du fichier de configuration et redémarrer le service Keepalived.

Enfin, assurez-vous que HAProxy et Keepalived sont démarrés.

C'est ça. Vous configurez HAProxy avec Keepalived pour une haute disponibilité. Vous pouvez utiliser l'adresse IP virtuelle définie pour vérifier que la configuration fonctionne comme prévu.

Conclusion

La configuration définie dans cet article garantit que votre équilibreur de charge est hautement disponible pour gérer le trafic entrant en le distribuant aux serveurs disponibles. De plus, Keepalived garantit qu'il gère le basculement et que vous n'aurez pas de cas de temps d'arrêt avec votre équilibreur de charge. Suivez les étapes et modifiez le fichier de configuration selon vos préférences.