Après la réplication des bases de données et la réplication des fichiers, passons maintenant à la mise en place d’un load balancer avec keepalived
et une IP flottante.
Voici le principe général de ce que nous cherchons à accomplir, avec une petite animation:
Voici ce dont vous avez besoin pour ce tutoriel:
- deux serveurs, VPS, ou Droplets si chez Digital Ocean;
- une IP flottante (gratuite chez DO).
Installation et paramétrage de keepalived
Keepalived
est une application de routage qui permet de fournir un moyen simple et robuste de mettre en place des solutions de load balancing et de haute disponibilité sur des systèmes Linux. Cela se passe au niveau de la couche 4 du modèle OSI :
Concrètement, keepalived
va vérifier toutes les quelques secondes que notre serveur de fichier est bien actif sur notre serveur MASTER
. Si jamais le serveur est down, l’IP flottante sera assignée au serveur BACKUP
. L’enregistrement DNS A du site doit pointer vers l’IP flottante. Cela permet de rediriger le trafic automatiquement et de manière transparente sur le serveur BACKUP
.
Sur le serveur MASTER
1. On installe donc keepalived
:
apt-get install keepalived
Code language: JavaScript (javascript)
et on édite sa configuration init
:
nano /etc/init/keepalived.conf
On y ajoute :
description "load-balancing and high-availability service"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec /usr/local/sbin/keepalived --dont-fork
Code language: JavaScript (javascript)
2. On obtient l’adresse IP privée du serveur:
curl http://169.254.169.254/metadata/v1/interfaces/private/0/ipv4/address && echo
Code language: JavaScript (javascript)
Résultat:
10.134.23.164
Code language: CSS (css)