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.
Création d'une politique de dimensionnement prédictive pour un groupe Auto Scaling
Les procédures suivantes vous aident à créer une politique de dimensionnement prédictive à l'aide du AWS Management Console ou AWS CLI.
Si le groupe Auto Scaling est nouveau, il doit fournir au moins 24 heures de données avant qu'Amazon EC2 Auto Scaling puisse générer une prévision pour celui-ci.
Table des matières
Créer une politique de mise à l'échelle prédictive (console)
Si c'est la première fois que vous créez une politique de dimensionnement prédictif, nous vous recommandons d'utiliser la console pour créer plusieurs politiques de dimensionnement prédictif en mode prévision uniquement. Cela vous permet de tester les effets potentiels de différentes mesures et valeurs cibles. Vous pouvez créer plusieurs politiques de mise à l'échelle prédictive pour chaque groupe Auto Scaling, mais une seule de ces politiques peut être utilisée pour la mise à l'échelle active.
Utilisez la procédure suivante pour créer une politique de mise à l'échelle prédictive à l'aide de métriques prédéfinies (CPU, I/O réseau ou nombre de requêtes Application Load Balancer par cible). La manière la plus simple de créer une politique de mise à l'échelle prédictive consiste à utiliser des métriques prédéfinies. Si vous préférez utiliser des métriques personnalisées, consultez Créer une politique de mise à l'échelle prédictive dans la console (métriques personnalisées).
Pour créer une politique de mise à l'échelle prédictive
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/
et choisissez Auto Scaling Groups dans le volet de navigation. -
Cochez la case située en regard de votre groupe Auto Scaling.
Un volet fractionné s'ouvre en bas de la page.
-
Sous l'onglet Mise à l'échelle automatique, accédez au champ Stratégies de mise à l'échelle et choisissez Créer une stratégie de mise à l'échelle prédictive.
-
Entrez le nom de la politique.
-
Activez Scale en fonction des prévisions pour autoriser Amazon EC2 Auto Scaling à commencer le dimensionnement immédiatement.
Pour que la stratégie reste en mode prévision uniquement, n'activez pas Mise à l'échelle basée sur la prévision.
-
Sous Métriques, choisissez vos métriques dans la liste des options. Les options incluent Processeur, Entrée réseau, Sortie réseau, Nombre de demandes Application Load Balancer et Paire de métriques personnalisées.
Si vous avez choisi Nombre de demandes Application Load Balancer par cible, choisissez un groupe cible dans le champ Groupe cible. L'option Nombre de demandes Application Load Balancer par cible n'est prise en charge que si vous avez attaché un groupe cible Application Load Balancer à votre groupe Auto Scaling.
Si vous avez choisi Paire de métriques personnalisées, sélectionnez les métriques individuelles dans les listes déroulantes Métrique de charge et Métrique de mise à l'échelle.
-
Pour l'utilisation de la cible, entrez la valeur cible qu'Amazon EC2 Auto Scaling doit conserver. Amazon EC2 Auto Scaling augmente votre capacité jusqu'à ce que l'utilisation moyenne atteigne le taux d'utilisation cible ou jusqu'à ce qu'elle atteigne le nombre maximum d'instances que vous avez spécifié.
Si votre métrique de mise à l'échelle est... L'objectif d'utilisation représente... CPU Pourcentage du processeur que chaque instance devrait idéalement utiliser.
Entrée réseau Nombre moyen d'octets par minute que chaque instance devrait idéalement recevoir.
Sortie réseau Nombre moyen d'octets par minute que chaque instance devrait idéalement envoyer.
Nombre de demandes Application Load Balancer par cible Nombre moyen de demandes par minute que chaque instance devrait idéalement recevoir.
-
(Facultatif) Dans le champ Pré-lancement des instances, choisissez combien de temps à l'avance vous souhaitez que vos instances soient lancées avant que la prévision n'appelle une augmentation de la charge.
-
(Facultatif) Pour le comportement en matière de capacité maximale, choisissez si vous souhaitez autoriser Amazon EC2 Auto Scaling à évoluer au-delà de la capacité maximale du groupe lorsque la capacité prévue dépasse le maximum défini. L'activation de ce paramètre permet de monter en puissance pendant les périodes où l'on prédit que le trafic sera le plus élevé.
-
(Facultatif) Dans le champ Capacité maximale du tampon supérieure à la capacité prédite, choisissez la capacité supplémentaire à utiliser lorsque la capacité prévue est proche de la capacité maximale ou la dépasse. La valeur est exprimée en pourcentage par rapport à la capacité prévue. Par exemple, si la valeur du tampon est 10, cela implique un tampon de 10 %. Par conséquent, si la capacité prévue est 50 et que la capacité maximale est 40, la capacité maximale effective est 55.
Si cette valeur est définie sur 0, Amazon EC2 Auto Scaling peut augmenter la capacité au-delà de la capacité maximale pour égaler mais ne pas dépasser la capacité prévue.
-
Choisissez Créer une stratégie de mise à l'échelle prédictive.
Utilisez la procédure suivante pour créer une politique de mise à l'échelle prédictive à l'aide de métriques personnalisées. Les métriques personnalisées peuvent inclure d'autres métriques fournies par CloudWatch ou sur lesquelles vous publiez CloudWatch. Pour utiliser les métriques de CPU, d'I/O réseau ou de nombre de demandes Application Load Balancer par cible, consultez Créer une politique de mise à l'échelle prédictive dans la console (métriques prédéfinies).
Pour créer une politique de mise à l'échelle prédictive à l'aide de métriques personnalisées, procédez comme suit :
-
Vous devez fournir les requêtes brutes qui permettent à Amazon EC2 Auto Scaling d'interagir avec les métriques contenues dans CloudWatch. Pour de plus amples informations, veuillez consulter Politique de dimensionnement prédictive avancée utilisant des métriques personnalisées. Pour être sûr qu'Amazon EC2 Auto Scaling peut extraire les données métriques CloudWatch, vérifiez que chaque requête renvoie des points de données. Confirmez cela à l'aide de la CloudWatch console ou de l'opération CloudWatch GetMetricDataAPI.
Note
Nous fournissons des exemples de charges utiles JSON dans l'éditeur JSON de la console Amazon EC2 Auto Scaling. Ces exemples vous fournissent une référence pour les paires clé-valeur requises pour ajouter d'autres CloudWatch mesures fournies par AWS ou sur lesquelles vous avez précédemment publié. CloudWatch Vous pouvez les utiliser comme point de départ, puis les personnaliser en fonction de vos besoins.
-
Si vous utilisez des mathématiques de métriques, vous devez construire manuellement la charge utile JSON pour l'adapter à votre scénario unique. Pour de plus amples informations, veuillez consulter Utiliser des expressions mathématiques de métrique. Avant d'utiliser les mathématiques de métriques dans votre politique, vérifiez que les requêtes de métriques basées sur des expressions mathématiques de métriques sont valides et renvoient une seule série temporelle. Confirmez cela à l'aide de la CloudWatch console ou de l'opération CloudWatch GetMetricDataAPI.
Si vous faites une erreur dans une requête en fournissant des données incorrectes, par exemple un nom de groupe Auto Scaling erroné, la prévision ne contiendra aucune donnée. Pour résoudre les problèmes liés aux métriques personnalisées, consultez Considérations relatives aux métriques personnalisées dans le cadre d'une politique de dimensionnement prédictive.
Pour créer une politique de mise à l'échelle prédictive
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/
et choisissez Auto Scaling Groups dans le volet de navigation. -
Cochez la case située en regard de votre groupe Auto Scaling.
Un volet fractionné s'ouvre en bas de la page.
-
Sous l'onglet Mise à l'échelle automatique, accédez au champ Stratégies de mise à l'échelle et choisissez Créer une stratégie de mise à l'échelle prédictive.
-
Entrez le nom de la politique.
-
Activez Scale en fonction des prévisions pour autoriser Amazon EC2 Auto Scaling à commencer le dimensionnement immédiatement.
Pour que la stratégie reste en mode prévision uniquement, n'activez pas Mise à l'échelle basée sur la prévision.
-
Pour Metrics (Métriques), choisissez Custom metric pair (Paire de métriques personnalisées).
-
Pour Métrique de charge, choisissez CloudWatch Métrique personnalisée pour utiliser une métrique personnalisée. Construisez la charge utile JSON qui contient la définition de la métrique de charge de la politique et collez-la dans la zone de l'éditeur JSON pour remplacer le contenu qui s'y trouve déjà.
-
Pour Scaling metric, choisissez Custom CloudWatch metric pour utiliser une métrique personnalisée. Construisez la charge utile JSON qui contient la définition de la métrique de mise à l'échelle de la politique et collez-la dans la zone de l'éditeur JSON pour remplacer le contenu qui s'y trouve déjà.
-
(Facultatif) Pour ajouter une métrique de capacité personnalisée, cochez la case Add custom capacity metric (Ajouter une métrique de capacité personnalisée). Construisez la charge utile JSON qui contient la définition de la métrique de capacité personnalisée de la politique et collez-la dans la zone de l'éditeur JSON pour remplacer le contenu qui s'y trouve déjà.
Vous devez uniquement activer cette option pour créer une nouvelle série temporelle de capacité si vos données de métriques de capacité couvrent plusieurs groupes Auto Scaling. Dans ce cas, vous devez utiliser les mathématiques de métriques pour agréger les données en une seule série temporelle.
-
-
Pour l'utilisation de la cible, entrez la valeur cible qu'Amazon EC2 Auto Scaling doit conserver. Amazon EC2 Auto Scaling augmente votre capacité jusqu'à ce que l'utilisation moyenne atteigne le taux d'utilisation cible ou jusqu'à ce qu'elle atteigne le nombre maximum d'instances que vous avez spécifié.
-
(Facultatif) Dans le champ Pré-lancement des instances, choisissez combien de temps à l'avance vous souhaitez que vos instances soient lancées avant que la prévision n'appelle une augmentation de la charge.
-
(Facultatif) Pour le comportement en matière de capacité maximale, choisissez si vous souhaitez autoriser Amazon EC2 Auto Scaling à évoluer au-delà de la capacité maximale du groupe lorsque la capacité prévue dépasse le maximum défini. L'activation de ce paramètre permet de monter en puissance pendant les périodes où l'on prédit que le trafic sera le plus élevé.
-
(Facultatif) Dans le champ Capacité maximale du tampon supérieure à la capacité prédite, choisissez la capacité supplémentaire à utiliser lorsque la capacité prévue est proche de la capacité maximale ou la dépasse. La valeur est exprimée en pourcentage par rapport à la capacité prévue. Par exemple, si la valeur du tampon est 10, cela implique un tampon de 10 %. Par conséquent, si la capacité prévue est 50 et que la capacité maximale est 40, la capacité maximale effective est 55.
S'il est défini sur 0, Amazon EC2 Auto Scaling peut augmenter la capacité par rapport à la capacité maximale afin d'égaler mais de ne pas dépasser la capacité prévue.
-
Choisissez Créer une stratégie de mise à l'échelle prédictive.
Pour créer une stratégie de mise à l'échelle prédictive (AWS CLI)
Utilisez ce qui AWS CLI suit pour configurer les politiques de dimensionnement prédictif pour votre groupe Auto Scaling. Remplacez chaque user input placeholder
par vos propres informations.
Pour plus d'informations sur les CloudWatch métriques que vous pouvez spécifier, consultez PredictiveScalingMetricSpecificationle Amazon EC2 Auto Scaling API Reference.
Exemple 1 : stratégie de mise à l'échelle prédictive qui crée des prévisions mais ne met pas à l'échelle
L'exemple de stratégie suivant illustre une configuration de stratégie complète qui utilise les métriques d'utilisation du processeur pour la mise à l'échelle prédictive avec un objectif d'utilisation de 40
. Le mode ForecastOnly
est utilisé par défaut, sauf si vous spécifiez explicitement le mode à utiliser. Enregistrez cette configuration dans un fichier nommé config.json
.
{ "MetricSpecifications": [ { "TargetValue":
40
, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization
" } } ] }
Pour créer la politique à partir de la ligne de commande, exécutez la put-scaling-policy
aws autoscaling put-scaling-policy --policy-name
cpu40-predictive-scaling-policy
\ --auto-scaling-group-namemy-asg
--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
Si elle aboutit, cette commande renvoie l'Amazon Resource Name (ARN) de la stratégie.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/cpu40-predictive-scaling-policy",
"Alarms": []
}
Exemple 2 : stratégie de mise à l'échelle prédictive qui prédit et met à l'échelle
Pour une politique permettant à Amazon EC2 Auto Scaling de prévoir et de dimensionner, ajoutez la propriété Mode
avec une valeur deForecastAndScale
. L'exemple suivant illustre une configuration de stratégie qui utilise les métriques Nombre de demandes Application Load Balancer de charge. L'objectif d'utilisation est de 1000
, et la mise à l'échelle prédictive est définie sur le mode ForecastAndScale
.
{ "MetricSpecifications": [ { "TargetValue":
1000
, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ALBRequestCount
", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff
" } } ], "Mode": "ForecastAndScale" }
Pour créer cette politique, exécutez la put-scaling-policy
aws autoscaling put-scaling-policy --policy-name
alb1000-predictive-scaling-policy
\ --auto-scaling-group-namemy-asg
--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
Si elle aboutit, cette commande renvoie l'Amazon Resource Name (ARN) de la stratégie.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:19556d63-7914-4997-8c81-d27ca5241386:autoScalingGroupName/my-asg:policyName/alb1000-predictive-scaling-policy",
"Alarms": []
}
Exemple 3 : stratégie de mise à l'échelle prédictive qui peut augmenter la capacité au-delà de la capacité maximale
L'exemple suivant montre comment créer une stratégie permettant d'aller au-delà de la limite de taille maximale du groupe lorsque vous en avez besoin pour gérer une charge supérieure à la normale. Par défaut, Amazon EC2 Auto Scaling n'augmente pas votre EC2 capacité au-delà de votre capacité maximale définie. Toutefois, un léger dépassement de la capacité maximale peut parfois être utile afin d'éviter les problèmes de performances ou de disponibilité.
Pour permettre à Amazon EC2 Auto Scaling de fournir de la capacité supplémentaire lorsque la capacité devrait être égale ou très proche de la taille maximale de votre groupe, spécifiez les MaxCapacityBuffer
propriétés MaxCapacityBreachBehavior
et, comme indiqué dans l'exemple suivant. Vous devez définir la propriété MaxCapacityBreachBehavior
sur IncreaseMaxCapacity
. Le nombre maximal d'instances que votre groupe peut accueillir dépend de la valeur de la propriété MaxCapacityBuffer
.
{ "MetricSpecifications": [ { "TargetValue":
70
, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization
" } } ], "MaxCapacityBreachBehavior": "IncreaseMaxCapacity
", "MaxCapacityBuffer":10
}
Dans cet exemple, la stratégie est configurée pour utiliser un tampon de 10 % ("MaxCapacityBuffer": 10
). Ainsi, si la capacité prévue est de 50 et la capacité maximale de 40, la capacité maximale effective est de 55. Une stratégie permettant d'augmenter la capacité au-delà de la capacité maximale pour égaler mais pas dépasser la capacité prévue aurait un tampon de 0 ("MaxCapacityBuffer":
0
).
Pour créer cette politique, exécutez la put-scaling-policy
aws autoscaling put-scaling-policy --policy-name
cpu70-predictive-scaling-policy
\ --auto-scaling-group-namemy-asg
--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
Si elle aboutit, cette commande renvoie l'Amazon Resource Name (ARN) de la stratégie.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:d02ef525-8651-4314-bf14-888331ebd04f:autoScalingGroupName/my-asg:policyName/cpu70-predictive-scaling-policy",
"Alarms": []
}