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.
Utiliser des actions planifiées pour remplacer les valeurs de prévision pour Amazon ECS
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 de prévisions peuvent sous-estimer les tâches nécessaires 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 comportant un nombre de tâches supérieur au nombre prévu. Au moment de l'exécution, Amazon ECS met à jour le nombre minimum de tâches de votre service. La mise à l'échelle prédictive étant optimisée en fonction du nombre de tâches, une action planifiée comportant un nombre minimum de tâches supérieur aux valeurs prévisionnelles est respectée. Cela permet d'éviter que le nombre de tâches ne soit inférieur aux prévisions. Pour ne plus annuler les prévisions, utilisez une deuxième action planifiée pour rétablir le nombre minimum de tâches dans ses paramètres d'origine.
La procédure suivante présente les étapes à suivre pour remplacer la prévision au cours de périodes ultérieures.
Rubriques
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 le nombre de tâches 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 le nombre de tâches. Vous pouvez ensuite surveiller l'utilisation des ressources et diminuer manuellement le nombre de tâches selon les besoins.
É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.
-
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 cluster dans le
resource-id
paramètre. -
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 application-autoscaling get-predictive-scaling-forecast \ --service-namespace ecs \ --resource-id service/MyCluster/test \ --policy-name
cpu40-predictive-scaling-policy
\ --scalable-dimension ecs:service:DesiredCount \ --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
etCapacityForecast
.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 uneTargetValue
de 40 (40 % d'utilisation moyenne du processeur). -
-
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.
Ouvrez la console à la https://console.aws.amazon.com/ecs/version 2
. -
Sur la page Clusters, choisissez le cluster.
-
Sur la page des détails du cluster, dans la section Services, puis choisissez le service.
La page des détails du service apparaît.
-
Choisissez Service Auto Scaling.
La page des politiques apparaît.
-
Choisissez Actions planifiées, puis sélectionnez Créer.
La page d'action Créer un calendrier apparaît.
-
Pour Nom de l'action, entrez un nom unique.
-
Dans le champ Fuseau horaire, choisissez un fuseau horaire.
Tous les fuseaux horaires répertoriés proviennent de la base de données des fuseaux horaires IANA. Pour plus d'informations, voir Liste des fuseaux horaires de la base de données tz
. -
Pour Heure de début, entrez la date et l'heure de début de l'action.
-
Pour Recurrence (Récurrence), choisissez Once (Une fois).
-
Sous Réglages des tâches, pour Minimum, entrez une valeur inférieure ou égale au nombre maximum de tâches.
-
Choisissez Create Scheduled Action (Créer une action planifiée).
La page des politiques apparaît.
-
Configurez une deuxième action planifiée pour rétablir le nombre minimum de tâches au paramètre d'origine à la fin de l'événement. Le dimensionnement prédictif peut ajuster le nombre de tâches uniquement lorsque la valeur que vous définissez pour Minimum est inférieure aux valeurs de prévision.
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-namemy-asg
--start-time "2021-05-19T17:00:00Z
" --minimum-capacity3
La deuxième commande demande à Amazon EC2 Auto Scaling de définir la capacité minimale du groupe à 1 h 00 UTC le 20 mai 2021.
aws autoscaling put-scheduled-update-group-action --scheduled-action-name
my-event-end
\ --auto-scaling-group-namemy-asg
--start-time "2021-05-20T01:00:00Z
" --minimum-capacity1
Après avoir ajouté 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 cette période et pendant les huit prochaines heures, Amazon EC2 Auto Scaling peut continuer à évoluer si la capacité prévue est supérieure à la capacité réelle ou si une politique de dimensionnement 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 la gestion des actions planifiées, consultezUtilisez des actions planifiées pour faire évoluer les services Amazon ECS.