Comment résoudre les problèmes liés aux déclencheurs de dimensionnement dans Elastic Beanstalk ?

Dernière mise à jour : 08/10/2019

Mon environnement AWS Elastic Beanstalk ne se met pas à l'échelle comme prévu. Comment résoudre ce problème ?

Brève description

Le groupe Auto Scaling de votre environnement Elastic Beanstalk utilise deux alarmes Amazon CloudWatch pour déclencher des opérations de dimensionnement. Lesdéclencheurs Auto Scaling par défaut sont configurés pour évoluer lorsque le trafic réseau sortant moyen (RéseauSortant) de chaque instance est supérieur à 6 Mo ou inférieur à 2 Mo sur une période de cinq minutes.

Pour utiliser Amazon EC2 Auto Scaling efficacement, vous devez configurer des déclencheurs de dimensionnement adaptés à votre application, au type d'instance et aux exigences de service.

Remarque : vous pouvez dimensionner votre environnement en fonction de plusieurs statistiques, notamment la latence, les E/S de disque, l'utilisation de l'UC et le nombre de requêtes. Dans les scénarios avancés, envisagez d'utiliser .ebextensions en fonction de métriques personnalisées telles que la mémoire.

Avant de commencer les étapes de la section Résolution vérifiez les points suivants :

  • Vous disposez d'une capacité suffisante pour que vos instances Amazon Elastic Compute Cloud (Amazon EC2) puissent évoluer dans votre région AWS en fonction du nombre maximal d'instances pouvant être contenues dans le groupe Auto Scaling défini dans la configurationde votre environnement.
  • Vous disposez d'un temps de stabilisation défini si nécessaire, en fonction des exigences d'installation et de configuration de votre application.
  • Vous avez identifié la meilleure métrique pour votre environnement à déclencher en testant la charge avec les métriques par défaut de CloudWatch ou en générant et en testant plus de charge avec Locust.

Résolution

Pour configurer vos déclencheurs de dimensionnement, suivez les étapes à l'aide d'AWS Management Console ou des paramètres d'option :

Configurer des déclencheurs de dimensionnement dans la console Elastic Beanstalk

1.    Ouvrez la console Elastic Beanstalk, puis choisissez votre environnement.

2.    Dans le volet de navigation, choisissez Configuration.

3.    Pour la catégorie Capacité choisissez Modifier.

4.    Dans la section Scaling Triggers (Déclencheurs de dimensionnement), choisissez les options de déclenchement en fonction de vos besoins, puis choisissez Apply (Appliquer).

Remarque : Elastic Beanstalk fournit des options de configuration pour les paramètres Auto Scaling dans l'espace de noms aws:autoscaling:trigger . Les paramètres de cet espace de noms sont organisés en fonction de la ressource à laquelle ils s'appliquent.

Configurer des déclencheurs de dimensionnement avec des paramètres d'option

Modifiez vos configurations de dimensionnement à l'aide de .ebextensions dans les paramètres d'option.

L'exemple suivant modifie les déclencheurs de dimensionnement pour qu'ils soient basés sur l'utilisation de l'UC. Si l'utilisation de l'UC sur toutes les instances est supérieure à 80 % sur trois périodes consécutives de deux minutes, une instance est alors ajoutée au groupe Auto Scaling. Si l'utilisation de l'UC sur toutes les instances est inférieure à 2 % pendant la même période, une instance est alors supprimée du groupe Auto Scaling.

option_settings:
  aws:autoscaling:trigger:
    MeasureName: CPUUtilization
    Statistic: Average
    Unit: Percent
    Period: '2'
    EvaluationPeriods: '3'
    UpperThreshold: '80'
    UpperBreachScaleIncrement: '1'
    LowerThreshold: '20'
    LowerBreachScaleIncrement: '-1'

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

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?