QU'EST-CE QUE L'ÉQUILIBRAGE DE CHARGE?
Équilibrage de charge est une solution réseau de base utilisée pour distribuer le trafic sur plusieurs
serveurs dans une batterie de serveurs.
Les équilibreurs de charge améliorent la disponibilité et la réactivité des applications et préviennent
la surcharge du serveur. Chaque équilibreur de charge se trouve entre les périphériques clients et les
serveurs backend, recevant puis distribuant les demandes entrantes à tout serveur disponible
capable de les satisfaire.
Comment fonctionnent les équilibreurs de charge?
Un équilibreur de charge peut être:
Un périphérique physique, une instance virtualisée s'exécutant sur du matériel spécialisé ou
un processus logiciel
Incorporé dans des contrôleurs de livraison d'applications (ADC) conçus pour améliorer plus
largement les performances et la sécurité des applications Web et microservices à trois
niveaux, quel que soit l'endroit où ils sont hébergés
Capable de tirer parti de nombreux algorithmes d'équilibrage de charge possibles, y compris
le round robin, le temps de réponse du serveur et la méthode de connexion minimale pour
distribuer le trafic conformément aux exigences actuelles
Les équilibreurs de charge détectent la santé des ressources backend et n'envoient pas de trafic vers
des serveurs qui ne sont pas en mesure de répondre aux demandes. Qu'il s'agisse de matériel ou de
logiciel, ou de l'algorithme(s) qu'il utilise, un équilibreur de charge distribue le trafic vers différents
serveurs Web dans le pool de ressources pour s'assurer qu'aucun serveur ne soit surchargé et par la
suite peu fiable. Il minimise efficacement le temps de réponse du serveur et maximise le débit.
Le rôle d'un équilibreur de charge est parfois assimilé à celui d'un agent de la circulation, car il est
destiné à acheminer systématiquement les demandes aux bons endroits à un moment donné, évitant
ainsi des goulots d'étranglement coûteux et des incidents imprévus. Les équilibreurs de charge
devraient en fin de compte fournir les performances et la sécurité nécessaires au maintien
d'environnements informatiques complexes, ainsi que les flux de travail complexes qui s'y
produisent.
L'équilibrage de charge est la méthodologie la plus évolutive pour traiter la multitude de demandes
provenant de workflows multi-applications et multi-appareils modernes. Parallèlement aux plates-
formes qui permettent un accès transparent aux nombreuses applications et bureaux dans les
espaces de travail numériques d'aujourd'hui, l'équilibrage de charge prend en charge une expérience
utilisateur plus cohérente et fiable pour les employés.
Pourquoi l'équilibrage de charge est-il nécessaire?
Un ADC avec des capacités d'équilibrage de charge aide les départements IT à assurer l'évolutivité et
la disponibilité des services. Sa fonctionnalité avancée de gestion du trafic peut aider une entreprise
à orienter plus efficacement les demandes vers les ressources appropriées pour chaque utilisateur
final. Un ADC offre de nombreuses autres fonctions (telles que le cryptage, l'authentification et le
pare-feu des applications Web) qui peuvent fournir un point de contrôle unique pour sécuriser, gérer
et surveiller les nombreuses applications et services dans tous les environnements et assurer la
meilleure expérience utilisateur.
Équilibreurs de charge matériels vs logiciels
Les équilibreurs de charge matériels fonctionnent comme suit:
Ce sont généralement des appareils haute performance, capables de traiter en toute sécurité
plusieurs gigabits de trafic provenant de différents types d'applications.
Ces appliances peuvent également contenir des capacités de virtualisation intégrées, qui
consolident de nombreuses instances d'équilibrage de charge virtuel sur le même matériel.
Cela permet des architectures multi-locataires plus flexibles et une isolation complète des
locataires, entre autres avantages.
En revanche, les équilibreurs de charge logiciels:
Peut remplacer complètement le matériel d'équilibrage de charge tout en offrant des
fonctionnalités analogues et une flexibilité supérieure
Peut fonctionner sur des hyperviseurs communs, dans des conteneurs ou en tant que
processus Linux avec un minimum de frais généraux sur des serveurs bare-metal
Sont hautement configurables en fonction des cas d'utilisation et des exigences techniques
en question
Peut économiser de l'espace et réduire les dépenses matérielles
Les équilibreurs de charge L4, L7 et GSLB, expliqués
L'expérience quotidienne d'un employé dans un espace de travail numérique peut être très variable.
Leur productivité peut fluctuer en réponse à tout, des mesures de sécurité sur leurs comptes à la
performance variable des nombreuses applications qu'ils utilisent—un problème qui peut être
aggravé par une mauvaise réactivité en raison d'un équilibrage de charge insuffisant.
En d'autres termes, les espaces de travail numériques sont fortement axés sur les applications. Alors
que la demande simultanée d'applications logicielles en tant que service (SaaS) en particulier
continue d'augmenter, leur livraison fiable aux utilisateurs finaux peut devenir un défi si un
équilibrage de charge approprié est mis en place. Les employés qui ont déjà du mal à naviguer dans
plusieurs systèmes, interfaces et exigences de sécurité supporteront le fardeau supplémentaire des
ralentissements et des pannes de performance.
Pour favoriser une plus grande cohérence et suivre la demande en constante évolution des
utilisateurs, les ressources du serveur doivent être facilement disponibles et la charge équilibrée aux
couches 4 et/ou 7 du modèle Open Systems Interconnection (OSI):
Les équilibreurs de charge de couche 4 (L4) fonctionnent au niveau du transport. Cela signifie
qu'ils peuvent prendre des décisions de routage basées sur les ports TCP ou UDP que les
paquets utilisent avec leurs adresses IP source et de destination. Les équilibreurs de charge
L4 effectuent la traduction d'adresses réseau (NAT) mais n'inspectent pas le contenu réel de
chaque paquet.
Les équilibreurs de charge de couche 7 (L7) agissent au niveau de l'application, le plus élevé
dans le modèle OSI. Ils peuvent évaluer un plus large éventail de données que les
homologues L4, y compris les en-têtes HTTP et les ID de session SSL, au moment de décider
comment distribuer les requêtes sur la batterie de serveurs.
L'équilibrage de charge est plus intensif en calcul à L7 qu'à L4, mais il peut également être plus
efficace à L7, en raison du contexte supplémentaire dans la compréhension et le traitement des
demandes des clients aux serveurs. En plus de l'équilibrage de charge L4 et L7 de base, l'équilibrage
de charge du serveur global (GSLB) peut étendre les capacités de l'un ou l'autre type sur plusieurs
centres de données afin que de grands volumes de trafic puissent être distribués efficacement sans
dégradation du service pour l'utilisateur final.
Comme les applications sont de plus en plus hébergées dans des centres de données cloud situés
dans plusieurs zones géographiques, GSLB permet aux organisations IT de fournir des applications
avec une plus grande fiabilité et une latence plus faible à tout appareil ou emplacement. Cela
garantit une expérience plus cohérente pour les utilisateurs finaux quand ils naviguent dans plusieurs
applications et services dans un espace de travail numérique.
Quelles sont certaines des solutions courantes d'équilibrage de charge?
Un équilibreur de charge, ou l'ADC qui l'inclut, suivra un algorithme pour déterminer comment les
demandes sont réparties dans la batterie de serveurs. Il y a beaucoup d'options à cet égard, allant du
très simple au très complexe.
Équilibrage de charge rond
Round robin est une solution d'équilibrage de charge simple pour s'assurer qu'un serveur virtuel
transfère chaque demande client à un serveur différent en fonction d'une liste rotative. Il est facile à
implémenter pour les équilibreurs de charge, mais ne prend pas en compte la charge déjà sur un
serveur. Il y a un risque qu'un serveur reçoive beaucoup de requêtes gourmandes en processeur et
devienne surchargé.
Méthode du temps de réponse le moins long
Plus sophistiquée que la méthode de moindre connexion, la méthode de moindre temps de réponse
repose sur le temps mis par un serveur pour répondre à une requête de surveillance de la santé. La
vitesse de la réponse est un indicateur de la charge du serveur et de l'expérience utilisateur globale
attendue. Certains équilibreurs de charge tiendront également compte du nombre de connexions
actives sur chaque serveur.
Méthodes de hachage
Les méthodes de cette catégorie prennent des décisions basées sur un hachage de diverses données
du paquet entrant. Cela inclut les informations de connexion ou d'en-tête, telles que l'adresse IP
source/destination, le numéro de port, l'URL ou le nom de domaine.
Méthode de connexion minimale
Alors que le round robin ne tient pas compte de la charge actuelle sur un serveur (seulement sa place
dans la rotation), la méthode de connexion la moins fait cette évaluation et, par conséquent, elle
offre généralement des performances supérieures. Les serveurs virtuels qui suivent la méthode de
connexion la plus faible chercheront à envoyer des requêtes au serveur avec le moins de connexions
actives.
Méthode de bande passante minimale
Un algorithme relativement simple, la méthode de bande passante la moins recherche pour le
serveur servant actuellement le moins de trafic tel que mesuré en mégabits par seconde (Mbps). De
même, la méthode des moindres paquets sélectionne le service qui a reçu le moins de paquets dans
une période de temps donnée.
Méthode de chargement personnalisée
La méthode de charge personnalisée permet à l'équilibreur de charge d'interroger la charge sur des
serveurs individuels via SNMP. L'administrateur peut définir la charge de serveur d'intérêt pour
interroger—CPU utilisation, mémoire et temps de réponse— et ensuite les combiner pour répondre
à leurs demandes.