Remplacer des valeurs de prévision à l'aide d'actions planifiées - Amazon EC2 Auto Scaling

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Remplacer des valeurs de prévision à l'aide d'actions planifiées

Parfois, vous pouvez disposer d'informations supplémentaires sur de futurs besoins de votre application que le calcul prédictif ne peut pas prendre en compte. Par exemple, les calculs prédictifs peuvent sous-estimer la capacité nécessaire pour un événement marketing à venir. Vous pouvez alors utiliser des actions planifiées pour remplacer temporairement la prévision au cours de périodes ultérieures. Les actions planifiées peuvent être exécutées de manière récurrente, ou à une date et une heure spécifiques en cas de fluctuations ponctuelles de la demande.

Par exemple, vous pouvez créer une action planifiée avec une capacité minimale plus élevée que ce qui est prédit. Au moment de l'exécution, Amazon EC2 Auto Scaling met à jour la capacité minimale de votre groupe Auto Scaling. Étant donné que la mise à l'échelle prédictive optimise la capacité, une action planifiée avec une capacité minimale supérieure aux valeurs prédites est honorée. Cela permet d'éviter que la capacité soit inférieure à celle prévue. Pour cesser de remplacer la prévision, utilisez une deuxième action planifiée afin de rétablir le paramètre d'origine de la capacité minimale.

La procédure suivante présente les étapes à suivre pour remplacer la prévision au cours de périodes ultérieures.

Important

Cette rubrique part du principe que vous essayez de modifier les prévisions pour vous adapter à une capacité supérieure à celle prévue. Si vous devez réduire temporairement la capacité sans interférer avec une politique de dimensionnement prédictif, utilisez plutôt le mode prévision uniquement. En mode prévisions uniquement, la mise à l'échelle prédictive continuera de générer des prévisions, mais elle n'augmentera pas automatiquement la capacité. Vous pouvez ensuite surveiller l'utilisation des ressources et réduire manuellement la taille de votre groupe selon vos besoins. Pour plus d'informations sur le dimensionnement manuel, consultezMise à l'échelle manuelle pour Amazon EC2 Auto Scaling.

Étape 1 : (facultatif) Analyser les données en séries chronologiques

Commencez par analyser les données en séries chronologiques de la prévision. Il s'agit d'une étape facultative, mais elle permet de comprendre les détails de la prévision.

  1. Récupérer la prévision

    Une fois la prévision créée, vous pouvez interroger une période spécifique au sein de celle-ci. L'objectif de la requête est d'obtenir une vue complète des données en séries chronologiques d'une période spécifique.

    Votre requête peut inclure jusqu'à deux jours de données de prévision ultérieures. Si vous utilisez la mise à l'échelle prédictive depuis un certain temps, vous pouvez également accéder à vos données de prévision antérieures. Toutefois, la durée maximale entre le début et la fin est de 30 jours.

    Pour obtenir les prévisions à l'aide de la get-predictive-scaling-forecast AWS CLI commande, entrez les paramètres suivants dans la commande :

    • Entrez le nom du groupe Auto Scaling dans le paramètre --auto-scaling-group-name.

    • Entrez le nom de la stratégie dans le paramètre --policy-name.

    • Entrez l'heure de début dans le paramètre --start-time pour ne renvoyer que les données de prévision correspondant à l'heure spécifiée ou ultérieures à celle-ci.

    • Entrez l'heure de fin dans le paramètre --end-time pour ne renvoyer que les données de prévision correspondant à l'heure spécifiée ou antérieures à celle-ci.

    aws autoscaling get-predictive-scaling-forecast --auto-scaling-group-name my-asg \ --policy-name cpu40-predictive-scaling-policy \ --start-time "2021-05-19T17:00:00Z" \ --end-time "2021-05-19T23:00:00Z"

    Si elle aboutit, la commande renvoie des données semblables à l'exemple suivant.

    { "LoadForecast": [ { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 153.0655799339254, 128.8288551285919, 107.1179447150675, 197.3601844551528, 626.4039934516954, 596.9441277518481, 677.9675713779869 ], "MetricSpecification": { "TargetValue": 40.0, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization" } } } ], "CapacityForecast": { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 2.0, 2.0, 2.0, 2.0, 4.0, 4.0, 4.0 ] }, "UpdateTime": "2021-05-19T01:52:50.118000+00:00" }

    La réponse comprend deux prévisions : LoadForecast et CapacityForecast. LoadForecast affiche la prévision de charge horaire. CapacityForecast affiche les valeurs de prévision de la capacité nécessaire sur une base horaire pour gérer la charge prévue tout en maintenant une TargetValue de 40 (40 % d'utilisation moyenne du processeur).

  2. Identifier la période cible

    Indiquez l'heure ou les heures où la fluctuation de la demande ponctuelle devrait avoir lieu. N'oubliez pas que les dates et les heures indiquées dans la prévision sont basées sur le fuseau horaire UTC.

Étape 2 : créer deux actions planifiées

Créez ensuite deux actions planifiées pour une période spécifique où votre application devra gérer une charge plus élevée que celle prédite. Par exemple, si vous organisez un événement marketing qui va générer du trafic sur votre site pendant une période limitée, vous pouvez planifier une action ponctuelle pour mettre à jour la capacité minimale au début de cet événement. Puis vous pouvez planifier une autre action pour rétablir le paramètre d'origine de la capacité minimale à la fin de l'événement.

Pour créer deux actions planifiées pour des événements ponctuels (console)
  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/ et choisissez Groupes Auto Scaling dans le panneau de navigation.

  2. Cochez la case située en regard de votre groupe Auto Scaling.

    Un volet fractionné s’ouvre en bas de la page.

  3. Sous l'onglet Mise à l'échelle automatique dans Actions planifiées, choisissez Créer une action planifiée.

  4. Renseignez les paramètres des actions planifiées suivants :

    1. Dans le champ Nom, attribuez un nom à l'action planifiée.

    2. Dans le champ Min, saisissez la nouvelle capacité minimale de votre groupe Auto Scaling. La valeur Min doit être inférieure ou égale à la taille maximale du groupe. Si la nouvelle valeur Min est supérieure à la taille maximale du groupe, vous devez mettre à jour la valeur Max.

    3. Pour Recurrence (Récurrence), choisissez Once (Une fois).

    4. Dans le champ Fuseau horaire, choisissez un fuseau horaire. Si aucun fuseau horaire n'est choisi, ETC/UTC est utilisé par défaut.

    5. Définissez une Heure de début spécifique.

  5. Choisissez Créer.

    La console affiche les actions planifiées pour le groupe Auto Scaling.

  6. Configurez une seconde action planifiée afin de rétablir le paramètre d'origine de la capacité minimale à la fin de l'événement. La mise à l'échelle prédictive ne peut augmenter la capacité que lorsque la valeur Min que vous avez définie est inférieure aux valeurs prédites.

Pour créer deux actions planifiées pour des événements ponctuels (AWS CLI)

Pour AWS CLI créer les actions planifiées, utilisez la commande put-scheduled-update-group-action.

Par exemple, définissons une action planifiée pour maintenir une capacité minimale de trois instances pendant huit heures à partir du 19 mai à 17h00. Les commandes suivantes montrent comment implémenter ce scénario.

La première commande put-scheduled-update-group-action demande à Amazon EC2 Auto Scaling de mettre à jour la capacité minimale du groupe Auto Scaling spécifié à 17 h 00 UTC le 19 mai 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-start \ --auto-scaling-group-name my-asg --start-time "2021-05-19T17:00:00Z" --minimum-capacity 3

La deuxième commande indique à Amazon EC2 Auto Scaling de définir la capacité minimale du groupe à 1h00 UTC le 20 mai 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-end \ --auto-scaling-group-name my-asg --start-time "2021-05-20T01:00:00Z" --minimum-capacity 1

Après l'ajout de ces actions planifiées au groupe Auto Scaling, Amazon EC2 Auto Scaling effectue les opérations suivantes :

  • À 17h00 UTC le 19 mai 2021, la première action planifiée s'exécute. Si le groupe compte actuellement moins de trois instances, il passe à trois instances. Pendant ce temps et pendant les huit heures suivantes, Amazon EC2 Auto Scaling peut continuer à monter en puissance si la capacité prévue est supérieure à la capacité réelle ou si une stratégie de mise à l'échelle dynamique est en vigueur.

  • À 1h00 UTC le 20 mai 2021, la seconde action planifiée s'exécute. Cette action rétablit le paramètre d'origine de la capacité minimale à la fin de l'événement.

Mise à l'échelle basée sur des planifications récurrentes

Pour remplacer la prévision applicable à la même période chaque semaine, créez deux actions planifiées et fournissez la logique d'heure et de date à l'aide d'une expression cron.

L'expression cron est constituée de cinq champs séparés par des espaces : [Minute] [Heure] [Jour_du_Mois] [Mois_de_Année] [Jour_de_Semaine]. Ces champs peuvent contenir toutes les valeurs autorisées, y compris des caractères spéciaux.

Par exemple, l'expression cron suivante exécute l'action tous les mardis à 6h30. L'astérisque est utilisé comme caractère générique pour représenter toutes les valeurs d'un champ.

30 6 * * 2

Consultez aussi

Pour plus d'informations sur comment créer, répertorier, modifier et supprimer des actions planifiées, consultez Mise à l'échelle planifiée pour Amazon EC2 Auto Scaling.