0% ont trouvé ce document utile (0 vote)
30 vues7 pages

Comprendre le Load Balancing et ses Types

Transféré par

Skander Chabbouh
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
30 vues7 pages

Comprendre le Load Balancing et ses Types

Transféré par

Skander Chabbouh
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Load Balancer

1- Définition du load balancing

Un Load Balancer (ou équilibreur de charge) est un système qui répartit automatiquement
le trafic réseau ou les requêtes d’utilisateurs sur plusieurs serveurs afin de :
✅ éviter la surcharge d’un seul serveur
✅ améliorer la performance
✅ garantir la disponibilité du service (haute disponibilité)

Exemple simple :

Imagine un restaurant très fréquenté .


S’il n’y a qu’un seul serveur pour tout le monde, il sera vite débordé.
Mais si le manager (le load balancer) répartit les clients entre plusieurs serveurs de table,
tout le monde est servi plus vite et personne n’attend trop longtemps.
Le manager = Load Balancer
Les serveurs = Serveurs web ou d’application

2- Types de load balancers


Il existe plusieurs types de load balancers, chacun répondant à des besoins différents :
 load balancers matériels : dispositifs physiques utilisés dans les centres de données à haute
performance.

 load balancers logiciels : solutions logicielles installées sur des serveurs ou des conteneurs,
offrant une plus grande flexibilité.

 load balancers cloud : solutions cloud fournis par des fournisseurs de solutions cloud, offrant
une évolutivité, une facilité d'utilisation et une réduction des frais généraux pour le load
balancing dans le cloud.

3- Les algorithmes utilisés


Un équilibreur de charge utilise différents algorithmes pour déterminer la manière dont doit être
réparti le trafic entrant entre les serveurs.
Voici quelques-uns des algorithmes les plus couramment utilisés :
 Round Robin : C’est le plus simple. Il distribue les requêtes de manière cyclique à chaque
serveur de la liste, un à la fois.
 Weighted Round Robin : Cet algorithme est une variante du Round Robin. Chaque serveur
se voit attribuer un poids en fonction de sa puissance ou de sa capacité.
Les serveurs avec un poids plus élevé reçoivent plus de requêtes que ceux avec un poids plus
faible.
👉 Exemple : un serveur deux fois plus performant qu’un autre recevra environ deux fois plus
de trafic.

 Least Connections : Cet algorithme dirige les nouvelles requêtes vers le serveur avec le
moins de connexions actives. C’est utile lorsque tous les serveurs n’ont pas la même capacité.
 Weighted Least Connections : Similaire au Least Connections, mais en tenant compte du
poids de chaque serveur.
Les requêtes sont dirigées vers le serveur ayant le moins de connexions actives par rapport à
sa capacité totale.
👉 Utile lorsque les serveurs n’ont pas la même puissance de traitement.

 IP Hash : Il utilise l’adresse IP d’origine et de destination pour déterminer à quel serveur


envoyer la requête. C’est utile pour assurer une persistance de session.
 Least Response Time : L’algorithme choisit le serveur qui présente le temps de réponse le
plus court et le moins de connexions actives.
👉 permet une distribution plus dynamique basée sur les performances réelles des serveurs.

 Random : Comme son nom l’indique, les requêtes sont distribuées de manière aléatoire parmi
les serveurs disponibles.
👉 Avantage : très simple à mettre en œuvre.
👉 Inconvénient : ne tient pas compte de la charge réelle des serveurs.

 Resource-Based (ou Dynamic Load Balancing) : Le répartiteur surveille en temps réel l’état
de chaque serveur (CPU, RAM, bande passante, etc.) et envoie les requêtes au serveur le plus
disponible.
👉 Avantage : distribution très précise basée sur la charge réelle.
👉 Inconvénient : nécessite une supervision continue des ressources.

 Least Bandwidth : L’algorithme choisit le serveur qui utilise actuellement le moins de bande
passante.
👉 Utile pour équilibrer le trafic dans les environnements où la consommation réseau varie
fortement.
4- Comment fonctionne un load balancer ?
Un load balancer reçoit les demandes entrantes et les distribue en fonction de sa configuration.
L'opération type consiste à :
 Gestion des requêtes des clients : le load balancer reçoit les requêtes des appareils clients.

 Distribution du trafic : le load balancer distribue les demandes à l'aide d'un algorithme
sélectionné.

 Vérification de l'état de santé : le load balancer vérifie l'état de santé des serveurs avant
d'acheminer les demandes.

 Routage des requêtes et réponse : le load balancer transmet la requête au serveur choisi, qui
la traite et renvoie la réponse au client.
5- Avantages d’un load balancer
Les principaux avantages d’une bonne répartition des charges sont les suivants :
 Des temps d’accès optimisés : la répartition du trafic sur plusieurs serveurs permet de réduire
les temps d’accès, même lors de nombreuses requêtes simultanées.

 Une plus grande fiabilité : un load balancer garantit une meilleure protection contre les
pannes, puisque le trafic provenant d’un serveur trop lent est automatiquement transféré vers
d’autres serveurs du cluster. Même si un serveur n’est pas accessible, le site Web hébergé
reste disponible.

 Une maintenance simplifiée du système : les configurations et les mises à jour peuvent être
effectuées pendant le fonctionnement des serveurs, sans perte de performance notable. Le load
balancer détecte l’état de maintenance et redirige les requêtes en conséquence.

 Amélioration de la sécurité : Les load balancers masquent l'identité des serveurs dorsaux, ce
qui renforce la sécurité en empêchant les attaquants de cibler des serveurs individuels. Ils
peuvent également prendre en charge le traitement SSL, ce qui réduit la charge des serveurs
dorsaux.

6- Outils et Solutions de Load Balancing

Divers outils sont disponibles pour mettre en œuvre le load balancing. Parmi eux, on trouve :

 Nginx: Un serveur web très performant avec des fonctionnalités avancées d’équilibrage de
charge.

 AWS Elastic Load Balancing: Une solution cloud robuste permettant d’une distribution
automatique du trafic sur plusieurs instances EC2.

7- Problèmes du Load Balancing

Lorsqu’on utilise un load balancer, certaines difficultés peuvent apparaître, surtout dans le cas des
sites e-commerce.
Exemple :

Un client ajoute des articles dans son panier. Si le load balancer envoie ses requêtes vers
différents serveurs, le panier peut être perdu, car chaque serveur ne partage pas forcément la
même session utilisateur.

Solution :

 IP Hashing :
Le load balancer redirige toujours les requêtes venant de la même adresse IP vers le même
serveur.

 Session persistante (Sticky Session) :


Le load balancer lit un identifiant de session (par exemple dans un cookie) et oriente la requête
vers le serveur associé à cette session.

Vous aimerez peut-être aussi