Groupes cibles et vérifications de l’état
Enregistrez des instances EC2, des adresses IP ou des fonctions Lambda comme cibles, puis configurez les chemins, seuils et intervalles des vérifications de l’état.
Groupes cibles et vérifications de l’état est une leçon Cloud & IT Cert Prep gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cloud & IT Cert Prep, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Que sont les groupes cibles ?
Un groupe cible est un ensemble logique de cibles vers lesquelles l’équilibreur de charge route les demandes. Chaque groupe cible possède un type de cible, un protocole/port et une configuration de vérification d’état. L’équilibreur de charge distribue les demandes aux cibles enregistrées du groupe cible qui réussissent les vérifications d’état.
Les groupes cibles sont associés aux écouteurs de l’équilibreur de charge par l’intermédiaire de règles d’écouteur. Un écouteur peut router vers plusieurs groupes cibles selon les attributs de la demande. C’est le mécanisme central du routage fondé sur le chemin et sur l’hôte dans ALB.
# Create a target group for an ALB
aws elbv2 create-target-group \
--name my-web-targets \
--protocol HTTP \
--port 80 \
--vpc-id vpc-12345678 \
--target-type instance \
--health-check-path /health \
--health-check-interval-seconds 30Types de cibles : instance, IP, Lambda
Les groupes cibles prennent en charge trois types de cibles :
- instance : route vers des instances EC2 par ID d’instance ; l’équilibreur de charge envoie le trafic vers l’interface réseau principale de l’instance sur le port indiqué
- ip : route vers des adresses IP privées — utile pour les cibles dans des conteneurs (ECS/EKS), les serveurs sur site accessibles via VPN/Direct Connect ou les IP secondaires d’instances EC2
- lambda : route vers une seule fonction Lambda (ALB uniquement) ; ALB convertit la demande HTTP en événement JSON et appelle la fonction de manière synchrone
Le type de cible IP est requis pour les tâches ECS utilisant le mode réseau awsvpc (chaque tâche obtient sa propre IP), pour les pods EKS et pour les architectures hybrides avec des cibles sur site.
Enregistrement des cibles
Vous enregistrez les cibles dans un groupe cible manuellement (dans la console ou via la CLI) ou automatiquement (en associant un Auto Scaling Group ou en configurant un service ECS). Les cibles enregistrées manuellement restent dans le groupe jusqu'à ce que vous les désenregistriez explicitement.
Pour les ASG, vous associez l'ASG à un groupe cible, puis l'ASG enregistre automatiquement les instances nouvellement lancées et désenregistre celles qui sont arrêtées. Cette intégration étroite avec l'ASG est le modèle standard pour les niveaux de calcul élastiques : les nouvelles instances deviennent disponibles et commencent à recevoir du trafic dès qu'elles réussissent la vérification de l'état.
# Register EC2 instances with a target group
aws elbv2 register-targets \
--target-group-arn arn:aws:elasticloadbalancing:us-east-1:123456789:targetgroup/my-web-targets/abc123 \
--targets Id=i-1234567890abcdef0 Id=i-0987654321fedcba0
# Register IP targets (for containers/ECS awsvpc)
aws elbv2 register-targets \
--target-group-arn arn:aws:elasticloadbalancing:us-east-1:123456789:targetgroup/my-ip-targets/def456 \
--targets Id=10.0.0.5,Port=8080 Id=10.0.0.6,Port=8080Configuration de la vérification de l'état
Chaque groupe cible possède une vérification de l'état associée, que l'équilibreur de charge utilise pour déterminer si une cible est saine et peut recevoir du trafic. La vérification de l'état envoie régulièrement des requêtes à chaque cible et évalue la réponse :
- Protocol : HTTP, HTTPS ou TCP (pour NLB)
- Chemin : chemin URL à demander (par exemple,
/healthou/ping) - Port : port à vérifier (par défaut, le port du groupe cible)
- Seuil de bon état : nombre de réussites consécutives avant de déclarer la cible saine
- Seuil de mauvais état : nombre d'échecs consécutifs avant de déclarer la cible défaillante
- Intervalle : nombre de secondes entre les vérifications de l'état (5–300)
- Délai d'expiration : nombre de secondes à attendre une réponse
Codes de réussite de la vérification de l'état
Pour les vérifications de l'état HTTP/HTTPS, vous indiquez quels codes de réponse HTTP signalent qu'une cible est saine. La valeur par défaut est 200, mais vous pouvez configurer des plages telles que 200-299 ou des valeurs séparées par des virgules telles que 200,301,302.
Bonne pratique : créez dans votre application un point de terminaison /health dédié qui renvoie 200 uniquement lorsque toutes les dépendances critiques sont disponibles (connectivité à la base de données, cache, service en aval). N'utilisez pas l'URL racine (/) comme chemin de vérification de l'état si elle effectue des opérations coûteuses ou nécessite une authentification.
# Modify health check to accept 200-299
aws elbv2 modify-target-group \
--target-group-arn arn:aws:elasticloadbalancing:us-east-1:123456789:targetgroup/my-web-targets/abc123 \
--health-check-path /health \
--matcher HttpCode=200-299 \
--healthy-threshold-count 2 \
--unhealthy-threshold-count 3 \
--health-check-interval-seconds 15États des cibles : initial, saine, défaillante
Après son enregistrement, une cible passe par les états suivants :
- initial : ELB effectue les premières vérifications de l'état
- healthy : la cible a réussi le nombre requis de vérifications consécutives ; elle reçoit du trafic
- unhealthy : la cible a échoué au nombre requis de vérifications consécutives ; elle est retirée de la rotation
- draining : le désenregistrement est en cours ; les connexions existantes peuvent se terminer, mais aucune nouvelle connexion n'est envoyée
- unused : la cible est enregistrée dans le groupe, mais aucune règle d'écoute ne redirige actuellement le trafic vers ce groupe
Surveillez les métriques CloudWatch UnHealthyHostCount et HealthyHostCount pour détecter les problèmes dans votre parc de cibles.
Délai de désenregistrement (drainage des connexions)
Le délai de désenregistrement (anciennement appelé drainage des connexions) correspond au temps pendant lequel ELB attend la fin des connexions existantes avant de désenregistrer définitivement une cible. La valeur par défaut est de 300 secondes (5 minutes). Pendant cette période, aucune nouvelle requête n'est envoyée à la cible en cours de désenregistrement, mais les requêtes en cours sont autorisées à se terminer.
Pour les déploiements rapides et les arrêts liés à la mise à l'échelle automatique, vous pouvez réduire cette durée à 30–60 secondes si votre application traite rapidement les requêtes. Pour les opérations longues (envoi de fichiers, traitement vidéo), conservez une durée suffisante pour qu'elles puissent se terminer sans interruption.
# Reduce deregistration delay to 30 seconds
aws elbv2 modify-target-group-attributes \
--target-group-arn arn:aws:elasticloadbalancing:us-east-1:123456789:targetgroup/my-web-targets/abc123 \
--attributes Key=deregistration_delay.timeout_seconds,Value=30Algorithmes d'équilibrage de charge
Les groupes cibles prennent en charge différents algorithmes d'équilibrage de charge :
- Tourniquet (valeur par défaut d'ALB) : les requêtes sont distribuées équitablement à tour de rôle — idéal lorsque toutes les cibles sont équivalentes
- Nombre minimal de requêtes en cours (ALB) : chaque nouvelle requête est envoyée à la cible qui comporte le moins de requêtes en cours — mieux adapté aux charges de travail de durée variable, lorsque certaines requêtes prennent plus de temps que d'autres
- Hachage du flux (NLB) : la distribution repose sur le protocole, les adresses IP source et destination, les ports source et destination et le numéro de séquence TCP — cela garantit que tous les paquets d'un flux TCP/UDP sont envoyés à la même cible
Pour les applications utilisant des sessions, lorsque toutes les requêtes d'un utilisateur doivent atteindre la même cible, activez les sessions persistantes au lieu de compter sur une distribution en tourniquet.
Plusieurs groupes cibles et routage pondéré
Une seule règle d'écoute ALB peut distribuer le trafic entre plusieurs groupes cibles avec des groupes cibles pondérés. Par exemple, vous pouvez diriger 90 % du trafic vers un groupe cible stable et 10 % vers un groupe cible canari pour des déploiements bleu-vert, sans utiliser le routage pondéré de Route 53.
Les groupes cibles pondérés sont configurés au niveau de la règle d'écoute. Les pondérations sont relatives : une répartition 90/10 envoie 90 % au premier groupe et 10 % au second. Cela diffère du routage pondéré entre plusieurs ALB : ici, la répartition s'effectue au sein d'une seule règle d'écoute ALB.
Groupes cibles et intégration avec ECS
Lors du déploiement de services ECS derrière un ALB, chaque tâche ECS est enregistrée auprès du groupe cible de l'ALB à l'aide du type de cible IP (pour le mode réseau awsvpc). Le service ECS gère automatiquement l'enregistrement et le désenregistrement : les nouvelles tâches sont enregistrées après avoir réussi les vérifications de l'état, et l'arrêt des tâches déclenche le délai de désenregistrement avant leur terminaison.
Chaque service ECS peut être enregistré avec une surcharge de port spécifique, ce qui permet à plusieurs services ECS de partager un seul ALB via différentes règles d'écoute (basées sur le chemin ou sur l'hôte) avec différents groupes cibles — un modèle courant pour les microservices.
Vérifications de l'état avec NLB
Le comportement des vérifications de l'état diffère entre NLB et ALB :
- NLB prend en charge les protocoles de vérification de l'état TCP, HTTP et HTTPS, quel que soit le protocole d'écoute
- Les vérifications de l'état NLB sont envoyées depuis les adresses IP du NLB dans chaque AZ — assurez-vous que les groupes de sécurité autorisent le trafic provenant des adresses IP de sous-réseau du NLB, ou utilisez le groupe de sécurité du NLB lui-même
- Pour les vérifications de l'état TCP, NLB considère une cible comme saine si elle accepte une connexion TCP sur le port indiqué
- Les cibles NLB qui échouent aux vérifications de l'état sont retirées dans chaque AZ — si toutes les cibles d'une AZ sont défaillantes, NLB peut équilibrer le trafic entre zones vers des cibles saines situées dans d'autres AZ (si l'équilibrage de charge entre zones est activé)
Vérification rapide
Testez votre compréhension des concepts AWS Solutions Architect (SAA-C03) présentés dans cette leçon.
Récapitulatif de la leçon
Dans cette leçon, vous avez appris que les groupes cibles contiennent des cibles enregistrées et saines de type instance, IP ou Lambda, que les vérifications de l'état sondent régulièrement les cibles afin de retirer les cibles défaillantes de la rotation, et que le délai de désenregistrement assure un drainage progressif des requêtes en cours avant le retrait d'une cible. Nous allons maintenant étudier les règles d'écoute et le routage basé sur le chemin avec ALB.
Questions Fréquemment Posées
La leçon « Groupes cibles et vérifications de l’état » est-elle gratuite ?
Oui — le texte complet de « Groupes cibles et vérifications de l’état » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cloud & IT Cert Prep, passe à CoddyKit PRO. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Groupes cibles et vérifications de l’état » ?
Enregistrez des instances EC2, des adresses IP ou des fonctions Lambda comme cibles, puis configurez les chemins, seuils et intervalles des vérifications de l’état. Tu pratiques Cloud & IT Cert Prep avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Cloud & IT Cert Prep ?
Aucune expérience préalable n'est requise. Cloud & IT Cert Prep sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Groupes cibles et vérifications de l’état » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Cloud & IT Cert Prep ?
Oui. Chaque leçon Cloud & IT Cert Prep inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- ALB, NLB ou GLB : lequel utiliser et quand
- Groupes cibles et vérifications de l’état
- Règles d’écoute et routage fondé sur les chemins
- Terminaison SSL et sessions persistantes