Un équilibreur de charge permet de distribuer le trafic réseau de manière dynamique entre les ressources (sur site ou dans le cloud) pour prendre en charge une application.
Un équilibreur de charge est une solution qui agit comme un proxy de trafic et distribue le trafic réseau ou applicatif sur plusieurs points de terminaison sur plusieurs serveurs. Les équilibreurs de charge sont utilisés pour répartir la capacité pendant les heures de pointe de trafic et pour augmenter la fiabilité des applications. Ils améliorent les performances globales des applications en diminuant la charge sur les services ou les clouds individuels et répartissent la demande sur différentes surfaces de calcul pour aider à maintenir les sessions d'application et de réseau.
Les applications modernes doivent traiter des millions de sessions simultanément et renvoyer le texte, les vidéos, les images et autres données corrects à chaque utilisateur de manière rapide et fiable. Pour gérer des volumes de trafic aussi élevés, la plupart des applications disposent de nombreux serveurs de ressources contenant des données en double.
L'équilibrage de charge répartit le trafic réseau de manière dynamique sur un réseau de ressources prenant en charge une application . Un équilibreur de charge est le périphérique ou le service qui se trouve entre l'utilisateur et le groupe de serveurs et agit comme un facilitateur invisible, garantissant que tous les serveurs de ressources sont utilisés de manière égale. Un équilibreur de charge contribue à augmenter la fiabilité et la disponibilité, même en période de forte utilisation et de forte demande, et garantit une disponibilité accrue et une meilleure expérience utilisateur.
Dans certains cas, il est essentiel que toutes les requêtes d'un client soient envoyées au même serveur pendant toute la durée d'une session, par exemple lorsqu'un client met des articles dans un panier puis finalise l'achat. Le maintien de la connexion entre le client et le serveur est connu sous le nom de persistance de session . Sans persistance de session, les informations doivent être synchronisées entre les serveurs et potentiellement récupérées plusieurs fois, ce qui crée des inefficacités en termes de performances.
Les utilisateurs et les clients dépendent de la capacité en temps quasi réel à trouver des informations et à effectuer des transactions. Les temps de latence ou les réponses peu fiables et incohérentes, même pendant les périodes de pointe de la demande et d'utilisation, peuvent détourner un client pour toujours. Et des pics élevés de besoins de calcul peuvent causer des ravages sur un serveur interne ou un système de serveur si la demande entrante (ou « charge ») est trop élevée pour être facilement prise en charge.
Les avantages de l’utilisation d’un équilibreur de charge incluent :
Il existe deux types d'algorithmes d'équilibrage de charge en termes de fonctionnement : statique et dynamique. L'équilibrage de charge statique mesure la charge entrante sur un serveur à l'aide d'algorithmes contenant des informations sur la capacité de performance des serveurs existants dans le réseau distribué. L'équilibrage de charge dynamique peut identifier de manière dynamique la quantité de charge qui doit être supprimée pendant l'exécution et le système qui doit supporter la charge. Il est conçu pour les systèmes avec de fortes fluctuations de charge entrante.
Voici quelques-uns des types courants d’algorithmes d’équilibrage de charge.
L'équilibrage de charge fonctionne en répondant de manière statique ou dynamique à une demande d'utilisateur et en distribuant cette demande à l'un des serveurs principaux capables de répondre à la demande. Si l’un des serveurs tombe en panne, l’équilibreur de charge redirige le trafic vers les serveurs en ligne restants.
Un exemple d’équilibrage de charge statique : Une entreprise héberge un site Web dont le contenu est en grande partie statique. Ce scénario serait idéal pour un équilibreur de charge statique, car les besoins en trafic sont prévisibles et cohérents. L'entreprise peut utiliser deux (ou plusieurs) serveurs Web identiques sur lesquels l'équilibreur de charge statique peut répartir le trafic.
Un exemple d’équilibrage de charge dynamique : Une entreprise connaît des pics, des hausses et des baisses de trafic. Certains sont prévisibles et d’autres non. Ces organisations bénéficieraient d’ un équilibrage de charge dynamique . Ces entreprises peuvent inclure un détaillant en ligne annonçant les heures et les dates du Black Friday ; une société de soins de santé qui vient d’annoncer qu’elle peut planifier des rendez-vous en ligne pour un vaccin saisonnier ; une agence gouvernementale pour l’emploi qui exige que les bénéficiaires de l’assurance chômage déposent une demande hebdomadaire un certain jour de la semaine ; une organisation de secours qui peut avoir besoin de réagir rapidement en ligne à une catastrophe naturelle. Certaines de ces augmentations et de ces pics de trafic et de demande peuvent être planifiées, mais d’autres ne le sont pas. Dans ces scénarios, un algorithme d’équilibrage de charge dynamique contribuera à garantir l’accès aux applications et aux ressources lorsque les clients et les utilisateurs en ont le plus besoin.
Différents types d’équilibreurs de charge dotés de capacités différentes résident dans l’architecture appelée modèle Open System Interconnection (OSI) . Dans ce modèle, il y a sept couches. Les pare-feu réseau se situent aux niveaux un à trois (L1-câblage physique, L2-liaison de données et L3-réseau). Pendant ce temps, l'équilibrage de la charge se produit aux couches quatre à sept (L4-transport, L5-session, L6-présentation et L7-application). Les équilibreurs de charge sont généralement utilisés au niveau des couches 4 et 7 .
Les équilibreurs de charge basés sur le cloud ne sont pas seulement des contrôleurs de trafic pour les pics de trafic et pour optimiser l'utilisation du serveur. Les équilibreurs de charge natifs du cloud peuvent également fournir des analyses prédictives pour vous aider à visualiser les goulots d'étranglement du trafic avant qu'ils ne se produisent. Cela fournit à son tour des informations exploitables pour aider toute entreprise à optimiser ses solutions informatiques.
Équilibrage de la charge des applications : Alors que les entreprises s’appuient de plus en plus sur les performances et la disponibilité des applications, l’équilibrage de la charge applicative peut les aider à évoluer, à rationaliser leurs opérations et à économiser de l’argent.
Équilibrage global de la charge du serveur : Avec des utilisateurs et des clients partout dans le monde, les entreprises peuvent améliorer la disponibilité de leur charge grâce à l'équilibrage de la charge du serveur global , qui envoie les utilisateurs vers le point de terminaison le plus proche d'eux.
Équilibrage de charge DNS : La pratique consistant à configurer un domaine dans le système de noms de domaine (DNS) de sorte que les demandes des utilisateurs adressées au domaine soient réparties sur un groupe de machines serveurs est appelée équilibrage de charge DNS .
Équilibrage de la charge réseau : Les contrôleurs de distribution d'applications (ADC), des appareils physiques ou virtuels fonctionnant comme des proxys pour les serveurs physiques, gèrent les fonctions d'application ou de réseau et s'appuient sur une solution d'équilibrage de charge réseau pour les prendre en charge. Les ADC utilisent également d’autres techniques, notamment la mise en cache, la compression et le déchargement du traitement SSL, pour améliorer les performances des applications Web. Dans la configuration habituelle, l'ADC se trouve devant un groupe de serveurs Web et d'applications et assure la médiation des requêtes et des réponses entre eux et leurs clients, donnant ainsi au groupe l'apparence d'un seul serveur virtuel pour l'utilisateur final.
Équilibrage de charge HTTP(S) : La technique de répartition du trafic sur plusieurs groupes de serveurs Web ou d'applications afin d'optimiser l'utilisation des ressources est appelée équilibrage de charge HTTP(S) .
Équilibrage de charge interne : Un équilibreur de charge interne est attribué à un sous-réseau privé et n'a pas d'adresse IP publique. Cela fonctionne généralement au sein d’une ferme de serveurs.
Diamètre: Un équilibreur de charge de diamètre distribue le trafic de signalisation sur plusieurs serveurs d'un réseau. L’un des moyens les plus rentables pour y parvenir est de mettre à l’échelle le plan de contrôle du diamètre plutôt que la couche de transport de données. (L'équilibrage de la charge de diamètre peut également être statique ou dynamique.)
Il existe d’autres types de solutions d’équilibrage de charge, qui peuvent être utilisées seules ou dans un réseau avec des équilibreurs de charge natifs du cloud. Voici quelques types notables.
Équilibreur de charge matériel : Un équilibreur de charge matériel est un périphérique physique doté d'un système d'exploitation spécialisé qui peut être programmé pour répartir le trafic Web sur plusieurs serveurs d'applications, généralement sur site.
Équilibreur de charge logiciel : Un équilibreur de charge logiciel fonctionne comme un équilibreur de charge physique, mais il s'exécute sur des programmes logiciels . Le logiciel maintient les applications disponibles malgré tous les types de demandes de trafic, en utilisant un équilibrage de charge statique et dynamique pour éliminer les points de défaillance uniques.
Équilibreur de charge virtuel : Un type d’équilibreur de charge qui combine des équilibreurs de charge matériels et logiciels est un équilibreur de charge virtuel. Il utilise un logiciel de contrôleur de distribution d'applications qui permet de répartir la charge du trafic réseau entre les serveurs principaux matériels.
LIVRE BLANC
Équilibrage de charge 101 : Écrous et boulons ›
CAS D'UTILISATION
Équilibrage de la charge de vos applications ›