Comment puis-je configurer des groupes cibles pondérés pour mon Application Load Balancer ?

Date de la dernière mise à jour : 01/04/2021

Je souhaite enregistrer des groupes cibles pondérés pour mon Application Load Balancer. Comment faire ?

Brève description

Vous pouvez utiliser un groupe cible enregistré dans un équilibreur de charge pour diriger le trafic vers des instances Amazon Elastic Compute Cloud (Amazon EC2), des adresses IP ou des fonctions AWS Lambda. Avec le routage pondéré, vous pouvez basculer le trafic entre différentes versions de vos applications. Cette configuration vous permet de contrôler la distribution du trafic vers vos applications. Vous pouvez ajouter plusieurs groupes cibles à l'action de transfert d'une règle d'écouteur et spécifier une pondération pour chaque groupe. Cette fonction est souvent utilisée pour les déploiements bleu/vert.

Résolution

Créer des groupes cibles

1.    Ouvrez la console Amazon EC2.

2.    Dans la barre de navigation, choisissez la région AWS que vous avez sélectionnée pour vos instances EC2.

3.    Dans le volet de navigation, sous ÉQUILIBRAGE DE CHARGE, sélectionnez Groupes cibles.

4.    Créez le premier groupe cible :     
Sélectionnez Créer un groupe cible.
Pour Nom du groupe cible, spécifiez un nom pour le groupe cible.
Configurez le protocole, le port et le Virtual Private Cloud (VPC) du groupe cible.
Sélectionnez Créer.
Pour Instances, sélectionnez une ou plusieurs instances.
Spécifiez un port pour les instances.
Sélectionnez Ajouter à enregistré, puis Enregistrer.

5.    Répétez l'étape 4 pour créer un second groupe cible.

Créer un Application Load Balancer (si vous n'en avez pas)

1.    Dans le volet de navigation, sous Équilibrage de charge, sélectionnez Équilibreurs de charge.

2.    Sélectionnez Créer un équilibreur de charge.

3.    Pour Sélectionner le type d'équilibreur de charge, sélectionnez Application Load Balancer.

4.    Choisissez Continue.

5.    Suivez les étapes dans Créer un équilibreur de charge.

6.    Suivez les étapes de Configurer le routage :
Pour Groupe cible, sélectionnez Cible existante.
Pour Nom, choisissez le premier groupe cible que vous avez créé.
Sélectionnez Étape suivante : enregistrer des cibles.

7.    Sur la page Enregistrer les cibles, vérifiez que les instances que vous avez enregistrées dans le groupe cible apparaissent sous Instances enregistrées. Vous ne pouvez pas modifier les cibles enregistrées dans le groupe cible ici.

8.    Sur la page Vérification  sélectionnez Créer.

9.    Une fois que vous êtes informé que votre équilibreur de charge a été créé, sélectionnez Fermer.

10.    Sélectionnez l'équilibreur de charge nouvellement créé.

Configurer les règles d'écouteur et ajouter une pondération aux groupes cibles

1.    Sur l'onglet Écouteurs, sélectionnez Afficher/modifier les règles.

2.    Sélectionnez Modifier les règles (Icône de crayon).

3.    Sélectionnez Modifier  à côté de l'option Réacheminer vers.

4.    Ajoutez l'autre groupe cible.

5.    Saisissez les valeurs de pondération du groupe cible. Ces valeurs doivent être des valeurs numériques comprises entre 0 et 999.

6.    Sélectionnez l'icône en forme de coche, puis choisissez Mettre à jour.

7.    (Facultatif) Définissez la Permanence au niveau du groupe si le groupe cible est permanent. Une fois ce paramètre configuré, les demandes acheminées restent dans le groupe cible pendant la durée de la session. La valeur par défaut est une heure. Une fois la durée de permanence terminée, les demandes sont distribuées en fonction des pondérations du groupe cible.

Remarque : l'Application Load Balancer répartit le trafic uniquement entre les groupes cibles en fonction de leurs pondérations. Toutefois, si toutes les cibles d'un groupe cible donné échouent aux vérifications de l'état, l’Application Load Balancer n'achemine pas automatiquement les demandes vers un autre groupe cible ou le basculement vers un autre groupe cible. Dans ce cas, si un groupe cible n'a que des cibles enregistrées non saines, les nœuds d'équilibrage de charge acheminent les demandes à travers ses cibles non saines. Un groupe cible pondéré ne doit pas être utilisé comme mécanisme de basculement lorsque toutes les cibles sont non saines dans un groupe cible spécifique.

Par exemple, si la pondération de la première cible est de 70 % et que la deuxième cible est de 30 %, la majorité des demandes proviennent du premier groupe cible :

$ for X in `seq 6`; do curl -so -i /dev/null -w "" http://FINAL-721458494.us-east-2.elb.amazonaws.com; done

<h1> This is T1 </h1>
<h1> This is T1 </h1>
<h1> This is T1 </h1>
<h1> This is T1 </h1>
<h1> This is T2 </h1>
<h1> This is T2 </h1>

Si vous changez les pondérations et que vous définissez 70 % pour la pondération de la deuxième cible et 30 % pour la première, alors la majorité des demandes proviennent du deuxième groupe cible :

$ for X in `seq 7`; do curl -so -i /dev/null -w "" http://FINAL-721458494.us-east-2.elb.amazonaws.com; done

<h1> This is T2 </h1>
<h1> This is T2 </h1>
<h1> This is T2 </h1>
<h1> This is T1 </h1>
<h1> This is T1 </h1>
<h1> This is T2 </h1>
<h1> This is T2 </h1>

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?