AWS Elastic Load Balancer (ELB) distribue automatiquement le trafic entrant des vos applications web vers différentes cibles, telles que des instances EC2, des conteneurs ou encore des adresses IP, dans une seule ou plusieurs zones de disponibilité.
ELB vous permet de surveiller l’état de santé de vos différentes cibles et redirige le trafic uniquement vers les cibles saines. Il se met également à l’échelle automatiquement en fonction du trafic entrant au fil du temps.
Les différents types d’ELB
Le tableau comparatif suivant vous permettra de comprendre les différences entre les équilibreurs de charges proposés par AWS ELB.
Application Load Balancer (ALB) | Network Load Balancer (NLB) | Classic Load Balancer (CLB) | Gateway Load Balancer (GWLB) | |
---|---|---|---|---|
Trafic pris en charge |
|
|
|
|
Répartition de charge | Couche applicative (layer 7) | Couche transport (layer 4) | Couche transport ou applicative (layers 4 / 7) | Couche réseau (layer 3) |
Fonctionnalités avancées |
|
|
|
|
Flexibilité | Routage basé sur les URL, les en-têtes, méthodes et codes de statut HTTP | Routage basé sur l’IP et le port de destination | Routage basé sur les règles de répartition de charge | Routage basé sur les règles de trafic et d’acheminement |
Mise à l’échelle |
|
|
|
|
Prix | Facturation basée sur le nombre de requêtes | Facturation basée sur le nombre d’heures d’utilisation et de données transférées | Facturation basée sur le nombre de requêtes | Facturation basée sur le nombre de connexions d’accès distant et la quantité de données transférées, avec un tarif d’utilisation minimale |
Notons néanmoins que le GWLB est conçu pour les applications qui ont besoin d’un accès distant sécurisé, tandis que les autres sont destinés à l’équilibrage de charge pour les applications web, ou applications de couche 4 ou 7.
Ecoutes et groupes de cibles : 2 concepts clés
Les listeners et les target groups sont 2 concepts clés d’ELB :
- Les listeners sont des points d’entrées pour le trafic entrant, configurés pour écouter sur un port spécifique et également pour accepter un protocole de transport spécifique. Lorsqu’un listener reçoit une requête, il l’achemine vers un target group en fonction des règles de routage configurées pour ce listener.
- Les target groups, quant à eux, sont des groupes d’instances cibles qui reçoivent le trafic acheminé par les listeners. Il peut s’agir d’instances EC2, de conteneurs Amazon ECS ou EKS, ou alors de fonctions Lambda. Un target group est configuré pour utiliser un certain type de protocole et de port pour communiquer avec les instances cibles.
Ces concepts primordiaux dans l’utilisation d’ELB vous permettront de configurer des scénarios d’acheminement de trafic avancés pour votre application, comme la distribution de charge sur plusieurs cibles, la prise en charge de plusieurs protocoles et ports, ou encore le trafic vers des groupes de cibles en fonction de certaines conditions de la requête.
Amazon Elastic Load Balancer : La solution idéale ?
Amazon Elastic Load Balancer est une solution idéale pour la répartition de charge sur votre ou vos application(s). Le choix du type de répartiteur de charge sera fonction des exigences de votre application, comme la scalabilité (mise à l’échelle), la sécurité ou la gestion des connexions.