Cours Aws

4.51 Les différentes stratégies de mise à l'échelle pour les ASG

Pour piloter un Auto Scaling Group, AWS propose trois grandes familles de stratégies. La plus simple est le Target Tracking Scaling : on choisit une métrique (par exemple CPU moyen à 40 %) et l'ASG ajoute des instances dès qu'on dépasse la cible et en retire quand on passe en dessous, pour garder la métrique proche de la valeur souhaitée.

Ensuite vient le Step Scaling, qui s'appuie sur des alarmes CloudWatch. On configure par exemple « CPU > 70 % » comme déclencheur pour ajouter des instances, et « CPU < 30 % » comme déclencheur pour en retirer. Chaque palier peut ajouter ou retirer un nombre d'instances différent. Enfin, la stratégie Scheduled Scaling est planifiée : si on connaît les habitudes des utilisateurs (par exemple pic de trafic le vendredi soir 17h–20h), on programme un changement de capacité aux heures voulues.

Cooldown et lissage

  • La période de stabilisation (cooldown) empêche l'ASG d'ajouter ou retirer une instance avant que les effets de la précédente opération soient pris en compte.
  • Valeur par défaut : 300 secondes.
  • On peut la surcharger par stratégie (par exemple 180 s) si les démarrages sont rapides.
  • Si l'application crée beaucoup d'instances sur une courte période, augmenter le cooldown pour éviter de scaler à perte.
  • Tant que le cooldown court, l'ASG ne déclenche pas de nouvelle mise à l'échelle.

Dans la console, sur la page de l'ASG (capacité min 1, désirée 2, max 3), on ajoute une stratégie de scaling. On choisit Target tracking scaling policy, on cible une moyenne d'utilisation CPU à 40 %, et on surcharge la stabilisation à 200 s. On crée la stratégie. Comme la CPU mesurée est très inférieure à 40 %, l'ASG considère qu'on a trop de capacité et déclenche une alarme basse qui fait passer la capacité de 2 à 1. Dans l'onglet Activity, on voit l'instance terminée, et dans Details, la capacité désirée actualisée à 1.

On crée ensuite une action planifiée baptisée mise-a-jour-vendredi : récurrence hebdomadaire, date future (pas antérieure à aujourd'hui), vendredi à minuit, qui force la capacité désirée à 10 machines. Ce Scheduled scaling est utile pour anticiper des pics récurrents. Important : un ASG peut terminer des instances de manière automatique au scale-in, c'est attendu — il faut bien tenir compte de cet effet sur l'état applicatif (sessions, jobs en cours) avant d'augmenter agressivement les politiques de réduction.

En résumé

Les stratégies de mise à l'échelle (scaling) pour les Auto Scaling Groups (ASG) AWS permettent d'adapter automatiquement la capacité de votre infrastructure selon la demande réelle. Trois approches complémentaires existent : le suivi des cibles, qui maintient une métrique cible (ex. CPU 40%) ; la stratégie par étapes, qui déclenche des actions différentes selon plusieurs seuils d'alarme ; et les stratégies planifiées, qui anticipent les pics prévisibles sans attendre les alertes. Le cooldown (stabilisation progressive) de 300 secondes par défaut empêche les modifications trop fréquentes et laisse le temps aux instances de démarrer correctement.

Points clés

  • Stratégie du suivi des cibles : définit une métrique cible unique (ex. CPU 40%) et ajoute/retire automatiquement des instances pour la maintenir stable
  • Stratégie par étapes : déclenche des actions différentes selon plusieurs seuils d'alarme (ex. 70% pour ajouter 3 instances, moins de 40% pour en retirer)
  • Stratégies planifiées : anticipent les pics prévisibles (ex. vendredi soir) en augmentant proactivement la capacité aux heures définies
  • Cooldown / stabilisation progressive : 300 secondes par défaut, empêche les oscillations rapides et permet aux nouvelles instances de s'initialiser
  • Paramètres ajustables : capacité minimale/maximale, durée de stabilisation, métriques de suivi (processeur, réseau, requêtes), seuils d'alarme personnalisés

Questions fréquentes

Quelle est la différence entre la stratégie du suivi des cibles et la stratégie par étapes ?

Le suivi des cibles maintient une seule métrique cible (ex. CPU 40%), avec des ajouts/retraits graduels. La stratégie par étapes définit plusieurs seuils d'alarme distincts avec des actions différentes (ex. 70% ajoute 3 instances, 40% en retire), offrant plus de flexibilité.

Pourquoi le cooldown (stabilisation) de 300 secondes est-il important ?

Le cooldown empêche le groupe d'auto-scaling de modifier trop fréquemment le nombre d'instances et laisse le temps aux nouvelles machines de démarrer, d'initialiser les services et de traiter efficacement les requêtes avant une nouvelle évaluation.

Comment anticiper les pics de charge avec les ASG ?

Utilisez les stratégies planifiées pour augmenter la capacité à des heures prédéfinies et prévisibles (ex. vendredi après-midi entre 17h et 20h), sans attendre que les métriques déclenche les alarmes. Cela garantit la disponibilité avant le pic.