

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.

# Mise à l'échelle prédictive pour Amazon EC2 Auto Scaling
<a name="ec2-auto-scaling-predictive-scaling"></a>

La mise à l'échelle prédictive fonctionne en analysant les données de charge historiques afin de détecter les tendances quotidiennes ou hebdomadaires des flux de trafic. Il utilise ces informations pour prévoir les besoins de capacité futurs afin qu'Amazon EC2 Auto Scaling puisse augmenter de manière proactive la capacité de votre groupe Auto Scaling pour qu'il corresponde à la charge prévue.

La mise à l'échelle prédictive se prête particulièrement bien aux situations suivantes :
+ Trafic cyclique, tel qu'une utilisation intensive des ressources pendant les heures de bureau et une faible utilisation le soir et le week-end
+ Modèles on-and-off de charge de travail récurrents, tels que le traitement par lots, les tests ou l'analyse périodique des données
+ Applications dont l'initialisation prend beaucoup de temps, ce qui en termes de performances se traduit par une latence notable lors des événements de montée en puissance

En règle générale, si vous avez des pics de trafic réguliers et des applications dont l'initialisation prend beaucoup de temps, n'hésitez pas à utiliser la mise à l'échelle prédictive. La mise à l'échelle prédictive peut vous permettre de vous adapter plus rapidement en fournissant de la capacité avant l'arrivée de la charge prévue, par opposition à la mise à l'échelle dynamique, qui est réactive par nature. La mise à l'échelle prédictive peut également vous faire économiser de l'argent sur votre facture EC2 en vous évitant de devoir surapprovisionner la capacité.

Prenons l'exemple d'une application très utilisée pendant les heures de bureau et peu utilisée la nuit. Au début de chaque jour ouvrable, la mise à l'échelle prédictive peut augmenter la capacité avant le premier afflux de trafic. Cela permet à votre application de maintenir une disponibilité et des performances élevées lorsqu'elle passe d'une période de faible utilisation à une période d'utilisation plus intensive. Vous n'avez pas besoin d'attendre que la mise à l'échelle dynamique réagisse à l'évolution du trafic. Vous n'avez pas non plus à examiner les tendances de charge de votre application et à essayer de planifier la capacité adéquate à l'aide d'une mise à l'échelle planifiée. 

**Topics**
+ [Fonctionnement de la mise à l'échelle prédictive](predictive-scaling-policy-overview.md)
+ [Créer une stratégie de mise à l’échelle prédictive](predictive-scaling-create-policy.md)
+ [Évaluer vos politiques de mise à l'échelle prédictive](predictive-scaling-graphs.md)
+ [Remplacer la prévision](predictive-scaling-overriding-forecast-capacity.md)
+ [Utilisation de métriques personnalisées](predictive-scaling-customized-metric-specification.md)

# Fonctionnement de la mise à l'échelle prédictive
<a name="predictive-scaling-policy-overview"></a>

Cette rubrique explique le fonctionnement de la mise à l'échelle prédictive et décrit les éléments à prendre en compte lors de la création d'une politique de mise à l'échelle prédictive.

**Topics**
+ [Comment ça marche](#how-predictive-scaling-works)
+ [Limite de capacité maximale](#predictive-scaling-maximum-capacity-limit)
+ [Considérations](#predictive-scaling-considerations)
+ [Régions prises en charge](#predictive-scaling-regions)

## Comment ça marche
<a name="how-predictive-scaling-works"></a>

Pour utiliser la mise à l'échelle prédictive, créez une politique de mise à l'échelle prédictive qui spécifie la CloudWatch métrique à surveiller et à analyser. Pour que la mise à l'échelle prédictive commence à prévoir les valeurs futures, cette métrique doit disposer d'au moins 24 heures de données.

Une fois que vous avez créé la stratégie, la mise à l’échelle prédictive commence à analyser les données métriques recueillies au cours des 14 derniers jours afin d’identifier des modèles. Il utilise cette analyse pour générer une prévision horaire des besoins de capacité pour les 48 prochaines heures. Les prévisions sont mises à jour toutes les 6 heures en utilisant les dernières CloudWatch données. À mesure que de nouvelles données arrivent, la mise à l'échelle prédictive est en mesure d'améliorer en permanence la précision des prévisions futures.

Lorsque vous activez la mise à l’échelle prédictive pour la première fois, elle s’exécute en mode *prévision uniquement*. Dans ce mode, il génère des prévisions de capacité mais ne redimensionne pas réellement votre groupe Auto Scaling en fonction de ces prévisions. Cela vous permet d'évaluer la précision et la pertinence des prévisions. Vous pouvez consulter les données de prévision à l'aide de l'opération `GetPredictiveScalingForecast` API ou du AWS Management Console.

Après avoir examiné les données de prévision et décidé de commencer le dimensionnement en fonction de ces données, passez la politique de dimensionnement en mode *prévision et échelle*. Dans ce mode :
+ Si les prévisions prévoient une augmentation de la charge, Amazon EC2 Auto Scaling augmentera la capacité en la redimensionnant.
+ Si les prévisions prévoient une diminution de la charge, elles ne seront pas ajustées pour réduire la capacité. Si vous souhaitez supprimer une capacité qui n'est plus nécessaire, vous devez créer des politiques de dimensionnement dynamiques.

Par défaut, Amazon EC2 Auto Scaling redimensionne votre groupe Auto Scaling au début de chaque heure en fonction des prévisions pour cette heure. Vous pouvez éventuellement spécifier une heure de début antérieure en utilisant la `SchedulingBufferTime` propriété dans l'opération d'`PutScalingPolicy`API ou le paramètre **Instances de pré-lancement** dans le AWS Management Console. Amazon EC2 Auto Scaling lance donc de nouvelles instances avant la demande prévue, ce qui leur laisse le temps de démarrer et de se préparer à gérer le trafic. 

Pour permettre le lancement de nouvelles instances avant la demande prévue, nous vous recommandons vivement d'activer le *préchauffage des instances par défaut pour votre groupe* Auto Scaling. Cela indique une période après une activité de scale-out pendant laquelle Amazon EC2 Auto Scaling n'interviendra pas, même si les politiques de dimensionnement dynamique indiquent que la capacité doit être réduite. Cela vous permet de vous assurer que les instances nouvellement lancées disposent de suffisamment de temps pour commencer à traiter le trafic accru avant d'être prises en compte pour des opérations d'extension. Pour de plus amples informations, veuillez consulter [Définir la préparation par défaut d'instance d'un groupe Auto Scaling](ec2-auto-scaling-default-instance-warmup.md).

## Limite de capacité maximale
<a name="predictive-scaling-maximum-capacity-limit"></a>

Les groupes Auto Scaling ont un paramètre de capacité maximale qui limite le nombre maximum d'instances EC2 pouvant être lancées pour le groupe. Par défaut, lorsque des politiques de dimensionnement sont définies, elles ne peuvent pas augmenter la capacité au-delà de sa capacité maximale.

Vous pouvez également autoriser l'augmentation automatique de la capacité maximale du groupe si la capacité prévue approche ou dépasse la capacité maximale du groupe Auto Scaling. Pour activer ce comportement, utilisez les `MaxCapacityBuffer` propriétés `MaxCapacityBreachBehavior` et dans le fonctionnement de l'`PutScalingPolicy`API ou le paramètre de **comportement de capacité maximale** dans le AWS Management Console. 

**Avertissement**  
Soyez prudent lorsque vous autorisez l'augmentation automatique de la capacité maximale. Cela peut entraîner le lancement d'un plus grand nombre d'instances que prévu si l'augmentation de la capacité maximale n'est pas surveillée et gérée. La capacité maximale accrue devient alors la nouvelle capacité maximale normale pour le groupe Auto Scaling jusqu'à ce que vous la mettiez à jour manuellement. La capacité maximale ne diminue pas automatiquement pour revenir à la capacité maximale initiale.

## Considérations
<a name="predictive-scaling-considerations"></a>
+ Vérifiez que la mise à l'échelle prédictive se prête à votre charge de travail. Une charge de travail se prête bien à la mise à l'échelle prédictive si elle présente des tendances de charge récurrentes spécifiques au jour de la semaine ou à l'heure de la journée. Pour le vérifier, configurez des politiques de mise à l'échelle prédictive en mode *prévision uniquement*, puis consultez les recommandations dans la console. Amazon EC2 Auto Scaling fournit des recommandations sur la base d'observations relatives aux performances potentielles des politiques. Évaluez la prévision et les recommandations avant de laisser la mise à l'échelle prédictive adapter activement votre application.
+ La mise à l'échelle prédictive requiert au moins 24 heures de données historiques pour commencer à élaborer des prévisions. Toutefois, les prévisions sont plus efficaces si les données historiques couvrent deux semaines complètes. Si vous mettez à jour votre application en créant un nouveau groupe Auto Scaling et en supprimant l'ancien, le nouveau groupe doit disposer de 24 heures de données de charge historiques avant que la mise à l'échelle prédictive puisse recommencer à générer des prévisions. Vous pouvez utiliser des métriques personnalisées pour agréger des métriques entre les anciens et les nouveaux groupes Auto Scaling. Autrement, vous devrez peut-être attendre quelques jours pour obtenir une prévision plus précise. 
+ Choisissez une métrique de charge qui représente avec précision la charge complète de votre application et qui constitue l’aspect le plus important de votre application à prendre en compte.
+ L'utilisation de la mise à l'échelle dynamique associée à la mise à l'échelle prédictive vous permet de suivre de près la courbe de demande de votre application, en la redimensionnant pendant les périodes de faible trafic et en la redimensionnant lorsque le trafic est plus élevé que prévu. Lorsque plusieurs stratégies de mise à l'échelle sont actives, chaque stratégie détermine indépendamment la capacité souhaitée, et la capacité souhaitée est définie sur le maximum de celles-ci. Par exemple, si 10 instances sont requises pour respecter l'objectif d'utilisation dans une stratégie de suivi des objectifs et de mise à l'échelle, et que 8 instances sont requises pour respecter l'objectif d'utilisation dans une stratégie de mise à l'échelle prédictive, la capacité souhaitée du groupe est définie sur 10. Si vous débutez dans le domaine de la mise à l'échelle dynamique, nous vous recommandons d'utiliser des politiques de dimensionnement pour le suivi des cibles. Pour de plus amples informations, veuillez consulter [Mise à l'échelle dynamique pour Amazon EC2 Auto Scaling](as-scale-based-on-demand.md).
+ Une hypothèse fondamentale de la mise à l'échelle prédictive est que le groupe Auto Scaling est homogène et que toutes les instances ont une capacité égale. Si ce n'est pas le cas pour votre groupe, la capacité prévue peut être inexacte. Par conséquent, soyez prudent lorsque vous créez des politiques de dimensionnement prédictif pour [des groupes d'instances mixtes](ec2-auto-scaling-mixed-instances-groups.md), car des instances de différents types peuvent être provisionnées avec une capacité inégale. Voici quelques exemples de cas où la capacité prévue sera inexacte :
  + Votre politique de dimensionnement prédictif est basée sur l'utilisation du processeur, mais le nombre de v CPUs sur chaque instance Auto Scaling varie selon le type d'instance.
  + Votre politique de mise à l'échelle prédictive est basée sur l'entrée réseau ou la sortie réseau, mais le débit de bande passante réseau pour chaque instance Auto Scaling varie d'un type d'instance à l'autre. Par exemple, les types d'instances M5 et M5n sont similaires, mais le type d'instance M5n offre un débit réseau nettement supérieur.

## Régions prises en charge
<a name="predictive-scaling-regions"></a>
+ USA Est (Virginie du Nord)
+ USA Est (Ohio)
+ USA Ouest (Californie du Nord)
+ USA Ouest (Oregon)
+ Afrique (Le Cap)
+ Asie-Pacifique (Hong Kong)
+ Asie-Pacifique (Hyderabad)
+ Asie-Pacifique (Jakarta)
+ Asie-Pacifique (Melbourne)
+ Asie-Pacifique (Mumbai)
+ Asie-Pacifique (Osaka)
+ Asia Pacific (Seoul)
+ Asie-Pacifique (Singapour)
+ Asie-Pacifique (Sydney)
+ Asie-Pacifique (Tokyo)
+ Canada (Centre)
+ Canada Ouest (Calgary)
+ Chine (Pékin)
+ China (Ningxia)
+ Europe (Francfort)
+ Europe (Irlande)
+ Europe (Londres)
+ Europe (Milan)
+ Europe (Paris)
+ Europe (Espagne)
+ Europe (Stockholm)
+ Europe (Zurich)
+ Israël (Tel Aviv)
+ Middle East (Bahrain)
+ Moyen-Orient (EAU)
+ Amérique du Sud (São Paulo)
+ AWS GovCloud (USA Est)
+ AWS GovCloud (US-Ouest)

# Création d'une politique de dimensionnement prédictive pour un groupe Auto Scaling
<a name="predictive-scaling-create-policy"></a>

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. 

**Topics**
+ [Créer une politique de mise à l'échelle prédictive (console)](#predictive-scaling-policy-console)
+ [Pour créer une stratégie de mise à l'échelle prédictive (AWS CLI)](#predictive-scaling-policy-aws-cli)

## Créer une politique de mise à l'échelle prédictive (console)
<a name="predictive-scaling-policy-console"></a>

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.

### Créer une politique de mise à l'échelle prédictive dans la console (métriques prédéfinies)
<a name="create-a-predictive-scaling-policy-in-the-console"></a>

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)](#create-a-predictive-scaling-policy-in-the-console-custom-metrics).

**Pour créer une politique de mise à l'échelle prédictive**

1. Ouvrez la console Amazon EC2 à l'adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

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

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

1. 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**.

1. Entrez le nom de la politique.

1. Activez **Mise à l'échelle basée sur la prévision** pour autoriser Amazon EC2 Auto Scaling à lancer immédiatement la mise à l'échelle.

   Pour que la stratégie reste en mode *prévision uniquement*, n'activez pas **Mise à l'échelle basée sur la prévision**. 

1. 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**. 

1. Dans le champ **Objectif d'utilisation**, saisissez la valeur cible à maintenir par Amazon EC2 Auto Scaling. Amazon EC2 Auto Scaling adapte votre capacité jusqu'à ce que l'utilisation moyenne corresponde à l'objectif, ou jusqu'à ce qu'elle atteigne le nombre maximal d'instances que vous avez spécifié.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/autoscaling/ec2/userguide/predictive-scaling-create-policy.html)

1. (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. 

1. (Facultatif) Dans le champ **Max capacity behavior** (Comportement de capacité maximale), choisissez d'autoriser ou non Amazon EC2 Auto Scaling à monter en puissance 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é.

1. (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 la valeur est définie sur 0, Amazon EC2 Auto Scaling peut augmenter la capacité au-delà de la capacité maximale pour égaler la capacité prévue, mais pas la dépasser.

1. Choisissez **Créer une stratégie de mise à l'échelle prédictive**.

### Créer une politique de mise à l'échelle prédictive dans la console (métriques personnalisées)
<a name="create-a-predictive-scaling-policy-in-the-console-custom-metrics"></a>

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)](#create-a-predictive-scaling-policy-in-the-console).

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 CloudWatch contenues. Pour de plus amples informations, veuillez consulter [Politique de dimensionnement prédictive avancée utilisant des métriques personnalisées](predictive-scaling-customized-metric-specification.md). Pour être sûr qu'Amazon EC2 Auto Scaling peut extraire les données CloudWatch métriques, 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 [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)API. 
**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](using-math-expression-examples.md). 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 [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)API.

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](custom-metrics-troubleshooting.md).

**Pour créer une politique de mise à l'échelle prédictive**

1. Ouvrez la console Amazon EC2 à l'adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

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

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

1. 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**.

1. Entrez le nom de la politique.

1. Activez **Mise à l'échelle basée sur la prévision** pour autoriser Amazon EC2 Auto Scaling à lancer immédiatement la mise à l'échelle.

   Pour que la stratégie reste en mode *prévision uniquement*, n'activez pas **Mise à l'échelle basée sur la prévision**. 

1. Pour **Metrics** (Métriques), choisissez **Custom metric pair** (Paire de métriques personnalisées).

   1. 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à.

   1. 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à. 

   1. (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.

1. Dans le champ **Objectif d'utilisation**, saisissez la valeur cible à maintenir par Amazon EC2 Auto Scaling. Amazon EC2 Auto Scaling adapte votre capacité jusqu'à ce que l'utilisation moyenne corresponde à l'objectif, ou jusqu'à ce qu'elle atteigne le nombre maximal d'instances que vous avez spécifié. 

1. (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. 

1. (Facultatif) Dans le champ **Max capacity behavior** (Comportement de capacité maximale), choisissez d'autoriser ou non Amazon EC2 Auto Scaling à monter en puissance 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é.

1. (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 la valeur est définie sur 0, Amazon EC2 Auto Scaling peut augmenter la capacité au-delà de la capacité maximale pour égaler la capacité prévue, mais pas la dépasser.

1. 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)
<a name="predictive-scaling-policy-aws-cli"></a>

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 le [PredictiveScalingMetricSpecification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredictiveScalingMetricSpecification.html)manuel *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
<a name="predictive-scaling-configuration-ex1"></a>

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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)commande avec le fichier de configuration spécifié, comme illustré dans l'exemple suivant.

```
aws autoscaling put-scaling-policy --policy-name cpu40-predictive-scaling-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://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
<a name="predictive-scaling-configuration-ex2"></a>

Pour créer une stratégie permettant à Amazon EC2 Auto Scaling de prédire et de mettre à l'échelle, ajoutez la propriété `Mode` associée à la valeur `ForecastAndScale`. 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)commande avec le fichier de configuration spécifié, comme illustré dans l'exemple suivant.

```
aws autoscaling put-scaling-policy --policy-name alb1000-predictive-scaling-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://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
<a name="predictive-scaling-configuration-ex3"></a>

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 ne va pas au-delà de la capacité maximale définie pour votre instance EC2. 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 d'approvisionner de la capacité supplémentaire lorsque les prévisions sont égales ou très proches de la taille maximale de votre groupe, définissez les propriétés `MaxCapacityBreachBehavior` et `MaxCapacityBuffer`, comme illustré 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)commande avec le fichier de configuration spécifié, comme illustré dans l'exemple suivant.

```
aws autoscaling put-scaling-policy --policy-name cpu70-predictive-scaling-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://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": []
}
```

# Évaluer vos politiques de mise à l'échelle prédictive
<a name="predictive-scaling-graphs"></a>

Avant d'utiliser une politique de mise à l'échelle prédictive pour mettre à l'échelle votre groupe Auto Scaling, consultez les recommandations et les autres données relatives à votre politique dans la console Amazon EC2 Auto Scaling. C'est une étape importante pour éviter qu'une politique de mise à l'échelle prédictive mette votre capacité réelle à l'échelle tant que vous ne savez pas si ses prévisions sont exactes.

Si le groupe Auto Scaling est nouveau, laissez 24 heures à Amazon EC2 Auto Scaling pour créer la première prévision.

Lorsqu'Amazon EC2 Auto Scaling crée une prévision, il utilise des données historiques. Si votre groupe Auto Scaling ne dispose pas encore de nombreuses données historiques récentes, Amazon EC2 Auto Scaling peut temporairement remplir la prévision avec des agrégats créés à partir des agrégats historiques actuellement disponibles. Les prévisions sont remplies jusqu'à deux semaines avant la date de création d'une politique.

**Topics**
+ [Afficher vos recommandations](#view-predictive-scaling-recommendations)
+ [Consulter les graphiques de surveillance](#review-predictive-scaling-monitoring-graphs)
+ [Surveillez les métriques avec CloudWatch](monitor-predictive-scaling-cloudwatch.md)

## Afficher vos recommandations de mise à l'échelle prédictive
<a name="view-predictive-scaling-recommendations"></a>

Pour une analyse efficace, Amazon EC2 Auto Scaling doit disposer d'au moins deux politiques de mise à l'échelle prédictive à comparer. (Toutefois, vous pouvez toujours consulter les résultats d'une seule politique.) Lorsque vous créez plusieurs politiques, vous pouvez évaluer une politique qui utilise une seule métrique par rapport à une autre qui utilise une autre métrique. Vous pouvez également évaluer l'impact de différentes combinaisons de valeurs cibles et de métriques. Une fois les politiques de mise à l'échelle prédictive créées, Amazon EC2 Auto Scaling commence immédiatement à évaluer la politique la plus appropriée pour mettre votre groupe à l'échelle.

**Pour afficher vos recommandations dans la console Amazon EC2 Auto Scaling**

1. Ouvrez la console Amazon EC2 à l'adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

1. Cochez la case située en regard du groupe Auto Scaling. 

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

1. Dans l'onglet **Auto Scaling**, sous **Politiques de mise à l'échelle prédictive**, vous pouvez afficher les détails d'une politique ainsi que notre recommandation. La recommandation vous indique si la politique de mise à l'échelle prédictive est plus efficace que si vous ne l'utilisez pas. 

   Si vous ne savez pas si une politique de mise à l'échelle prédictive convient à votre groupe, consultez les colonnes **Impact sur la disponibilité** et **Impact sur les coûts** pour choisir la politique appropriée. Les informations de chaque colonne vous indiquent l'impact de la politique. 
   + **Impact sur la disponibilité** : indique si la politique permettrait d'éviter un impact négatif sur la disponibilité en provisionnant suffisamment d'instances pour gérer la charge de travail, en comparaison avec sa non-utilisation.
   + **Impact sur les coûts** : indique si la politique permettrait d'éviter un impact négatif sur vos coûts en ne surprovisionnant pas les instances, en comparaison avec sa non-utilisation. En cas de surprovisionnement excessif, vos instances sont sous-utilisées ou inactives, ce qui ne fait qu'augmenter l'impact sur les coûts.

   Si vous avez plusieurs politiques, la balise **Meilleure prévision** s'affiche à côté du nom de la politique qui offre le plus d'avantages en matière de disponibilité à moindre coût. Une plus grande importance est accordée à l'impact sur la disponibilité. 

1. (Facultatif) Pour sélectionner la période souhaitée pour les résultats des recommandations, choisissez la valeur de votre choix dans la liste déroulante **Période d'évaluation** : **2 jours**, **1 semaine**, **2 semaines**, **4 semaines**, **6 semaines** ou **8 semaines**. Par défaut, la période d'évaluation est réglée sur les deux dernières semaines. Une période d'évaluation plus longue fournit davantage de points de données pour les résultats des recommandations. Toutefois, l'ajout de points de données supplémentaires risque de ne pas améliorer les résultats si vos modèles de charge ont changé, par exemple après une période de demande exceptionnelle. Dans ce cas, vous pouvez obtenir une recommandation plus ciblée en consultant des données plus récentes.

**Note**  
Les recommandations sont générées uniquement pour les politiques qui sont en mode **Prévision uniquement**. La fonctionnalité des recommandations offre de meilleurs résultats lorsqu'une politique est en mode **Prévision uniquement** pendant toute la période d'évaluation. Si vous lancez une politique en mode **Prévision et mise à l'échelle** et que vous la passez ultérieurement en mode **Prévision uniquement**, les résultats de cette politique risquent d'être biaisés. Cela s'explique par le fait que la politique a déjà contribué à la capacité réelle.

## Consulter les graphiques de surveillance de la mise à l'échelle prédictive
<a name="review-predictive-scaling-monitoring-graphs"></a>

Dans la console Amazon EC2 Auto Scaling, vous pouvez consulter les prévisions des jours, semaines ou mois précédents afin de visualiser les performances de la politique au fil du temps. Vous pouvez également utiliser ces informations pour évaluer la précision des prévisions lorsque vous décidez de laisser une politique mettre votre capacité réelle à l'échelle.

**Pour consulter les graphiques de surveillance de la mise à l'échelle prédictive dans la console Amazon EC2 Auto Scaling**

1. Choisissez une politique dans la liste **Politiques de mise à l'échelle prédictive**. 

1. Dans la section **Surveillance**, vous pouvez afficher les prévisions passées et futures de votre politique concernant la charge et la capacité par rapport aux valeurs réelles. Le graphique **Charge** présente la prévision de charge et les valeurs réelles pour la métrique de charge que vous avez choisie. Le graphique **Capacité** indique le nombre d'instances prédit par la politique. Il inclut également le nombre réel d'instances lancées. La ligne verticale sépare les valeurs historiques des prévisions futures. Ces graphiques sont disponibles peu de temps après la création de la politique. 

1. (Facultatif) Pour modifier la quantité de données historiques affichées dans le graphique, choisissez la valeur de votre choix dans la liste déroulante **Période d'évaluation** en haut de la page. La période d'évaluation ne transforme en rien les données de cette page. Elle ne fait que modifier la quantité de données historiques affichées.

L'image suivante montre les graphiques **Charge** et **Capacité** lorsque les prévisions ont été appliquées plusieurs fois. Les prévisions de mise à l'échelle prédictive se chargent en fonction de vos données de charge historiques. La charge générée par votre application est représentée comme la somme de l'utilisation du processeur, des entrées/sorties réseau, des demandes reçues ou des métriques personnalisées pour chaque instance du groupe Auto Scaling. La mise à l'échelle prédictive calcule les besoins de capacité future en fonction de la prévision de charge et de l'utilisation cible que vous souhaitez atteindre pour la métrique de mise à l'échelle.

![\[Graphiques de mise à l'échelle prédictive\]](http://docs.aws.amazon.com/fr_fr/autoscaling/ec2/userguide/images/predictive-scaling-graphs.png)


**Comparer les données du graphique **Charge****  
Chaque ligne horizontale représente un ensemble différent de points de données rapportés à des intervalles d'une heure :

1. La **charge observée réelle** utilise la statistique SUM pour la métrique de charge que vous avez choisie afin de montrer la charge horaire totale passée.

1. La **charge prévue par la politique** indique la prévision de charge horaire. Cette prévision se base sur les observations de charge réelles des deux semaines précédentes.

**Comparez les données du graphique **Capacité****  
Chaque ligne horizontale représente un ensemble différent de points de données rapportés à des intervalles d'une heure :

1. La **capacité réelle observée** indique la capacité réelle passée de votre groupe Auto Scaling lorsque la [GroupTotalInstances](ec2-auto-scaling-metrics.md#as-group-metrics)métrique est activée. Cette capacité dépend de vos autres politiques de dimensionnement et de la taille minimale du groupe pendant la période sélectionnée.

1. La **capacité prévue par la politique** indique la capacité de base à laquelle vous pouvez vous attendre au début de chaque heure lorsque la politique est en mode **Prévision et mise à l'échelle**.

1. La **capacité requise déduite** indique la capacité idéale pour maintenir la métrique de mise à l'échelle à la valeur cible que vous avez définie.

1. La **capacité minimale** indique la capacité minimale du groupe Auto Scaling.

1. La **capacité maximale** indique la capacité maximale du groupe Auto Scaling.

Afin de calculer la capacité requise déduite, nous partons du principe que chaque instance est utilisée de manière égale à une valeur cible spécifiée. Dans la pratique, les instances ne sont pas utilisées de manière égale. En supposant que l'utilisation est uniformément répartie entre les instances, nous pouvons toutefois établir une estimation probable de la quantité de capacité requise. La capacité requise est ensuite calculée de manière à être inversement proportionnelle à la métrique de mise à l'échelle que vous avez utilisée pour votre politique de mise à l'échelle prédictive. En d'autres termes, la métrique de mise à l'échelle diminue à mesure que la capacité augmente. Par exemple, si la capacité double, la métrique de mise à l'échelle doit être réduite de moitié. 

La formule de la capacité requise déduite est la suivante :

 `sum of (actualCapacityUnits*scalingMetricValue)/(targetUtilization)`

Par exemple, nous prenons les `actualCapacityUnits` (`10`) et la `scalingMetricValue` (`30`) pour une heure donnée. Nous prenons ensuite la `targetUtilization` que vous avez spécifiée dans votre politique de mise à l'échelle prédictive (`60`) et calculons la capacité requise déduite pour la même heure. Elle renvoie la valeur `5`. Cela signifie que cinq est la quantité de capacité requise déduite pour maintenir la capacité en proportion inverse directe à la valeur cible de la métrique de mise à l'échelle.

**Note**  
Différents leviers sont à votre disposition pour ajuster et améliorer les économies de coûts et la disponibilité de votre application.  
Vous utilisez la mise à l'échelle prédictive pour la capacité de base et la mise à l'échelle dynamique afin de gérer la capacité supplémentaire. La mise à l'échelle dynamique fonctionne indépendamment de la mise à l'échelle prédictive, avec une mise à l'échelle horizontale et une montée en puissance en fonction de l'utilisation actuelle. Tout d'abord, Amazon EC2 Auto Scaling calcule le nombre d'instances recommandé pour chaque politique de mise à l'échelle dynamique. Il est ensuite mis à l'échelle selon la politique qui fournit le plus grand nombre d'instances.
Pour permettre la mise à l'échelle horizontale lorsque la charge diminue, votre groupe Auto Scaling doit toujours disposer d'au moins une politique de mise à l'échelle dynamique avec la partie de mise à l'échelle horizontale activée.
Vous pouvez améliorer les performances de mise à l'échelle en vous assurant que vos capacités minimale et maximale ne sont pas trop restrictives. Une politique comportant un nombre recommandé d'instances qui ne se situe pas dans la plage de capacité minimale et maximale ne pourra pas être mise à l'échelle horizontalement ni montée en puissance.

# Surveillez les mesures de dimensionnement prédictives avec CloudWatch
<a name="monitor-predictive-scaling-cloudwatch"></a>

Selon vos besoins, vous préférerez peut-être accéder aux données de surveillance à des fins de dimensionnement prédictif depuis Amazon CloudWatch plutôt que depuis la console Amazon EC2 Auto Scaling. Une fois que vous avez créé une politique de mise à l'échelle prédictif, celle-ci collecte des données qui sont utilisées pour prévoir votre charge et votre capacité future. Une fois ces données collectées, elles sont automatiquement stockées CloudWatch à intervalles réguliers. Vous pouvez ensuite l'utiliser CloudWatch pour visualiser les performances de la politique au fil du temps. Vous pouvez également créer des CloudWatch alarmes pour vous avertir lorsque les indicateurs de performance changent au-delà des limites que vous avez définies CloudWatch.

**Topics**
+ [Visualisez les données de prévision historiques](#visualize-historical-forecast-data)
+ [Créer des mesures de précision à l'aide de mathématiques](#create-accuracy-metrics)

## Visualisez les données de prévision historiques
<a name="visualize-historical-forecast-data"></a>

Vous pouvez consulter les données de prévision de charge et de capacité pour une politique de dimensionnement prédictive dans CloudWatch. Cela peut être utile lorsque vous visualisez les prévisions par rapport à d'autres CloudWatch indicateurs dans un seul graphique. Cela peut également être utile lors de l'affichage d'une plage de temps plus large, afin de voir les tendances au fil du temps. Vous pouvez accéder aux métriques historiques jusqu'à 15 mois pour acquérir un meilleur point de vue de la façon dont votre politique s'exécute.

Pour de plus amples informations, veuillez consulter [Métriques et dimensions de mise à l'échelle](ec2-auto-scaling-metrics.md#predictive-scaling-metrics).

**Pour consulter les données de prévision historiques à l'aide de la CloudWatch console**

1. Ouvrez la CloudWatch console à l'adresse [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Dans le panneau de navigation, choisissez **Metrics** (Métriques), **All metrics** (Toutes les métriques).

1. Cliquez sur l'onglet**Auto Scaling**metric namespace.

1. Choisissez l'une des options suivantes pour afficher les mesures de prévision de charge ou de prévision de capacité : 
   + **Prévisions de charge prédictive Scaling**
   + **Prévisions de capacité d'évolutivité prédictive**

1. Dans le champ de recherche, entrez le nom de la stratégie de mise à l'échelle prédictive ou le nom du groupe Auto Scaling, puis appuyez sur Entrée pour filtrer les résultats. 

1. Pour représenter graphiquement une métrique, cochez la case en regard de la métrique. Pour modifier le nom du graphique, choisissez l'icône représentant un crayon. Pour modifier la plage de temps, sélectionnez l'une des valeurs prédéfinies ou choisissez **custom (personnalisé)**. Pour plus d'informations, consultez la section [Représentation graphique d'une métrique](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph_a_metric.html) dans le *guide de CloudWatch l'utilisateur Amazon*.

1. Pour modifier les statistiques, choisissez l'onglet **Graphed metrics (Graphique des métriques)**. Sélectionnez l'en-tête de colonne ou une valeur individuelle et choisissez une autre valeur. Bien que vous puissiez choisir n'importe quelle statistique pour chaque métrique, toutes les statistiques ne sont pas utiles pour **PredictiveScalingLoadForecast**les **PredictiveScalingCapacityForecast**métriques. Par exemple, les calculs statistiques de moyenne, minimum et maximum de l'utilisation de l'UC sont utiles, mais le calcul statistique de somme ne l'est pas.

1. (En option) Pour ajouter une autre métrique à utiliser dans l'expression mathématique, sous **Toutes les métriques**, choisissez **Tous**, recherchez la métrique spécifique, puis activez la case à cocher en regard de celle-ci. Vous pouvez ajouter jusqu'à 10 métriques.

   Par exemple, pour ajouter les valeurs réelles de l'utilisation de l'UC au graphique, choisissez l'option**EC2**espace de noms, puis choisissez**Par Auto Scaling Group**. Cochez ensuite la case correspondant à la **CPUUtilization**métrique et au groupe Auto Scaling spécifique. 

1. (Facultatif) Pour ajouter le graphique à un CloudWatch tableau de bord, choisissez **Actions**, puis **Ajouter au tableau de bord**.

## Créer des mesures de précision à l'aide de mathématiques
<a name="create-accuracy-metrics"></a>

Avec les mathématiques métriques, vous pouvez interroger plusieurs CloudWatch métriques et utiliser des expressions mathématiques pour créer de nouvelles séries chronologiques basées sur ces métriques. Vous pouvez visualiser les séries chronologiques obtenues sur la CloudWatch console et les ajouter aux tableaux de bord. Pour plus d'informations sur les mathématiques métriques, consultez la section [Utilisation des mathématiques métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) dans le *guide de CloudWatch l'utilisateur Amazon*.

À l'aide de métriques mathématiques, vous pouvez représenter graphiquement les données générées par Amazon EC2 Auto Scaling pour une mise à l'échelle prédictive de différentes manières. Cela vous permet de surveiller les performances des politiques au fil du temps et de comprendre si votre combinaison de mesures peut être améliorée.

Par exemple, vous pouvez utiliser une expression mathématique de métrique pour surveiller[erreur absolue moyenne en pourcentage](https://en.wikipedia.org/wiki/Mean_absolute_percentage_error)(MÂLE). La métrique MAPE permet de surveiller la différence entre les valeurs prévues et les valeurs réelles observées pendant une fenêtre de prévision donnée. Les modifications de la valeur de MAPE peuvent indiquer si les performances de la stratégie se dégradent au fil du temps à mesure que la nature de votre application change. Une augmentation de l'EMAP indique un écart plus important entre les valeurs prévues et les valeurs réelles. 

**Exemple : expressions mathématiques appliquées aux métriques**

Pour commencer avec ce type de graphique, vous pouvez créer une expression mathématique de métrique comme celle présentée dans l'exemple suivant.

```
{
  "MetricDataQueries": [
    {
      "Expression": "TIME_SERIES(AVG(ABS(m1-m2)/m1))",
      "Id": "e1",
      "Period": 3600,
      "Label": "MeanAbsolutePercentageError",
      "ReturnData": true
    },
    {
      "Id": "m1",
      "Label": "ActualLoadValues",
      "MetricStat": {
        "Metric": {
          "Namespace": "AWS/EC2",
          "MetricName": "CPUUtilization",
          "Dimensions": [
            {
              "Name": "AutoScalingGroupName",
              "Value": "my-asg"
            }
          ]
        },
        "Period": 3600,
        "Stat": "Sum"
      },
      "ReturnData": false
    },
    {
      "Id": "m2",
      "Label": "ForecastedLoadValues",
      "MetricStat": {
        "Metric": {
          "Namespace": "AWS/AutoScaling",
          "MetricName": "PredictiveScalingLoadForecast",
          "Dimensions": [
            {
              "Name": "AutoScalingGroupName",
              "Value": "my-asg"
            },
            {
              "Name": "PolicyName",
              "Value": "my-predictive-scaling-policy"
            },
            {
              "Name": "PairIndex",
              "Value": "0"
            }
          ]
        },
        "Period": 3600,
        "Stat": "Average"
      },
      "ReturnData": false
    }
  ]
}
```

Au lieu d'une seule métrique, il existe un tableau de structures de requêtes de données de métriques pour`MetricDataQueries`. Chaque élément de`MetricDataQueries`obtient une métrique ou exécute une expression mathématique. Le premier point,`e1`, est l'expression mathématique. L'expression désignée définit le`ReturnData`Paramètre to`true`, qui génère une seule série chronologique. Pour toutes les autres métriques, le kit`ReturnData`valeur est`false`. 

Dans l'exemple, l'expression désignée utilise les valeurs réelles et prévues comme entrée et renvoie la nouvelle métrique (MAPE). `m1`est la CloudWatch métrique qui contient les valeurs de charge réelles (en supposant que l'utilisation du processeur est la métrique de charge initialement spécifiée pour la politique nommée`my-predictive-scaling-policy`). `m2`est la CloudWatch métrique qui contient les valeurs de charge prévues. La syntaxe mathématique de la métrique MAPE est la suivante :

*Moyenne de (abs ((Réel - Forecast)/(Réel)))*

### Visualisez vos mesures de précision et définissez des alarmes
<a name="visualize-accuracy-metrics-set-alarms"></a>

Pour visualiser les données métriques de précision, sélectionnez l'onglet **Métriques** dans la CloudWatch console. Vous pouvez représenter les données sous forme graphique à partir de là. Pour plus d'informations, consultez la section [Ajouter une expression mathématique à un CloudWatch graphique](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html#adding-metrics-expression-console) dans le *guide de CloudWatch l'utilisateur Amazon*.

Vous pouvez définir une alarme sur une métrique que vous surveillez à partir de la section **Metrics** (Métriques). Pendant que vous êtes sur l'onglet **Métriques sous forme de graphique**, vous pouvez sélectionner l'icône **Créer une alarme** sous la colonne **Actions**. Le**Créer une alarme**est représentée par une petite cloche. Pour plus d'informations et pour connaître les options de notification, consultez les [sections Création CloudWatch d'une alarme basée sur une expression mathématique métrique](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create-alarm-on-metric-math-expression.html) et [Notification aux utilisateurs des modifications apportées aux alarmes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Notify_Users_Alarm_Changes.html) dans le *guide de l' CloudWatch utilisateur Amazon*.

Vous pouvez également utiliser [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)et effectuer des calculs [PutMetricAlarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricAlarm.html)à l'aide des mathématiques métriques et créer des alarmes en fonction de la sortie.

# Remplacer des valeurs de prévision à l'aide d'actions planifiées
<a name="predictive-scaling-overriding-forecast-capacity"></a>

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. 

**Topics**
+ [Étape 1 : (facultatif) Analyser les données en séries chronologiques](#analyzing-time-series-data)
+ [Étape 2 : créer deux actions planifiées](#scheduling-capacity)

**Important**  
Cette rubrique part du principe que vous essayez de remplacer les prévisions afin d’atteindre 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, consultez[Mise à l'échelle manuelle pour Amazon EC2 Auto Scaling](ec2-auto-scaling-scaling-manually.md). 

## Étape 1 : (facultatif) Analyser les données en séries chronologiques
<a name="analyzing-time-series-data"></a>

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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/get-predictive-scaling-forecast.html) 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).

1. **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
<a name="scheduling-capacity"></a>

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/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

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

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

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

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

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

   1. 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**. 

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

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

   1. Définissez une **Heure de début spécifique**. 

1. Choisissez **Créer**.

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

1. 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scheduled-update-group-action.html). 

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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scheduled-update-group-action.html) 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
<a name="scheduling-recurring-actions"></a>

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\$1du\$1Mois] [Mois\$1de\$1Année] [Jour\$1de\$1Semaine]. 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
<a name="scheduling-scaling-see-also"></a>

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](ec2-auto-scaling-scheduled-scaling.md).

# Politique de dimensionnement prédictive avancée utilisant des métriques personnalisées
<a name="predictive-scaling-customized-metric-specification"></a>

Dans une politique de mise à l'échelle prédictive, vous pouvez utiliser des métriques prédéfinies ou personnalisées. Les métriques personnalisées sont utiles lorsque les métriques prédéfinies (CPU, réseau I/O et nombre de requêtes de l'Application Load Balancer) ne décrivent pas suffisamment la charge de votre application.

Lorsque vous créez une politique de dimensionnement prédictif avec des métriques personnalisées, vous pouvez spécifier d'autres CloudWatch métriques fournies par AWS, ou vous pouvez spécifier des métriques que vous définissez et publiez vous-même. Vous pouvez également utiliser les mathématiques des métriques pour agréger et transformer les métriques existantes en une nouvelle série chronologique qui AWS n'est pas automatiquement suivie. Lorsque vous combinez des valeurs dans vos données, par exemple, en calculant de nouvelles sommes ou moyennes, cela s'appelle l'*agrégation*. Les données résultantes sont appelées un *agrégat*.

La section suivante contient les bonnes pratiques et des exemples de construction de la structure JSON pour la politique. 

**Topics**
+ [Bonnes pratiques](#custom-metrics-best-practices)
+ [Conditions préalables](#custom-metrics-prerequisites)
+ [Construction du fichier JSON pour les métriques personnalisées](construct-json-custom-metrics.md)
+ [Considérations relatives aux métriques personnalisées dans le cadre d'une politique de dimensionnement prédictive](custom-metrics-troubleshooting.md)
+ [Limitations](#custom-metrics-limitations)

## Bonnes pratiques
<a name="custom-metrics-best-practices"></a>

Les bonnes pratiques suivantes peuvent vous aider à utiliser plus efficacement les métriques personnalisées :
+ Pour la spécification de la métrique de charge, la métrique la plus utile est une métrique qui représente la charge d'un groupe Auto Scaling dans son ensemble, indépendamment de la capacité du groupe.
+ Pour la spécification de la métrique de mise à l'échelle, la métrique la plus utile pour la mise à l'échelle est une métrique moyenne de débit ou d'utilisation par instance.
+ La métrique de mise à l'échelle doit être inversement proportionnelle à la capacité. C'est-à-dire que si le nombre d'instances dans le groupe Auto Scaling augmente, la métrique de mise à l'échelle doit diminuer à peu près dans la même proportion. Pour que la mise à l'échelle prédictive se comporte comme prévu, la métrique de charge et la métrique de mise à l'échelle doivent également présenter une forte corrélation entre elles. 
+ L'utilisation cible doit correspondre au type de métrique de mise à l'échelle. Pour une configuration de politique qui utilise l'utilisation du CPU, il s'agit d'un pourcentage cible. Pour une configuration de politique qui utilise le débit, tel que le nombre de demandes ou de messages, il s'agit du nombre cible de demandes ou de messages par instance pendant tout intervalle d'une minute.
+ Si ces recommandations ne sont pas suivies, les valeurs futures prédites des séries temporelles seront probablement incorrectes. Pour valider que les données sont correctes, vous pouvez visualiser les valeurs prédites dans la console Amazon EC2 Auto Scaling. Sinon, après avoir créé votre politique de dimensionnement prédictif, inspectez les `CapacityForecast` objets `LoadForecast` et renvoyés par un appel à l'[GetPredictiveScalingForecast](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_GetPredictiveScalingForecast.html)API.
+ Nous vous recommandons vivement de configurer la mise à l'échelle prédictive en mode prévision uniquement pour pouvoir évaluer la prévision avant que la mise à l'échelle prédictive ne commence à mettre activement à l'échelle la capacité.

## Conditions préalables
<a name="custom-metrics-prerequisites"></a>

Pour ajouter des métriques personnalisées à votre politique de mise à l'échelle, vous devez disposer des autorisations `cloudwatch:GetMetricData`.

Pour spécifier vos propres indicateurs au lieu des indicateurs AWS fournis, vous devez d'abord les publier sur CloudWatch. Pour plus d'informations, consultez la section [Publication de métriques personnalisées](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) dans le *guide de CloudWatch l'utilisateur Amazon*. 

Si vous publiez vos propres métriques, veillez à publier les points de données à une fréquence minimale de cinq minutes. Amazon EC2 Auto Scaling extrait les points CloudWatch de données en fonction de la durée de la période dont il a besoin. Par exemple, la spécification des métriques de charge utilise des métriques horaires pour mesurer la charge de votre application. CloudWatch utilise vos données métriques publiées pour fournir une valeur de données unique pour toute période d'une heure en agrégeant tous les points de données avec des horodatages correspondant à chaque période d'une heure. 

# Construction du fichier JSON pour les métriques personnalisées
<a name="construct-json-custom-metrics"></a>

La section suivante contient des exemples de configuration de la mise à l'échelle prédictive pour interroger des données CloudWatch. Il existe deux méthodes pour configurer cette option, qui affecteront le format utilisé pour créer le fichier JSON de votre politique de mise à l'échelle prédictive. Lorsque vous utilisez des mathématiques de métriques, le format du fichier JSON varie davantage en fonction des mathématiques de métriques effectuées.

1. Pour créer une politique qui obtient des données directement à partir d'autres CloudWatch indicateurs fournis par AWS ou sur lesquels vous publiez CloudWatch, voir[Exemple de politique de mise à l'échelle prédictive avec des métriques de charge et de mise à l'échelle personnalisées (AWS CLI)](#custom-metrics-ex1).

1. Pour créer une politique capable d'interroger plusieurs CloudWatch mesures et d'utiliser des expressions mathématiques pour créer de nouvelles séries chronologiques basées sur ces mesures, voir[Utiliser des expressions mathématiques de métrique](using-math-expression-examples.md).

## Exemple de politique de mise à l'échelle prédictive avec des métriques de charge et de mise à l'échelle personnalisées (AWS CLI)
<a name="custom-metrics-ex1"></a>

Pour créer une politique de dimensionnement prédictive avec des métriques de charge et de dimensionnement personnalisées avec le AWS CLI, stockez les arguments pour `--predictive-scaling-configuration` dans un fichier JSON nommé`config.json`.

Vous commencez par ajouter des métriques personnalisées en remplaçant les valeurs remplaçables de l'exemple suivant par celles de vos métriques et de votre utilisation cible.

```
{
  "MetricSpecifications": [
    {
      "TargetValue": 50,
      "CustomizedScalingMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "scaling_metric",
            "MetricStat": {
              "Metric": {
                "MetricName": "MyUtilizationMetric",
                "Namespace": "MyNameSpace",
                "Dimensions": [
                  {
                    "Name": "MyOptionalMetricDimensionName",
                    "Value": "MyOptionalMetricDimensionValue"
                  }
                ]
              },
              "Stat": "Average"
            }
          }
        ]
      },
      "CustomizedLoadMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "load_metric",
            "MetricStat": {
              "Metric": {
                "MetricName": "MyLoadMetric",
                "Namespace": "MyNameSpace",
                "Dimensions": [
                  {
                    "Name": "MyOptionalMetricDimensionName",
                    "Value": "MyOptionalMetricDimensionValue"
                  }
                ]
              },
              "Stat": "Sum"
            }
          }
        ]
      }
    }
  ]
}
```

Pour plus d'informations, consultez le [MetricDataQuery](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_MetricDataQuery.html)manuel *Amazon EC2 Auto Scaling API Reference*.

**Note**  
Voici quelques ressources supplémentaires qui peuvent vous aider à trouver des noms de métriques, des espaces de noms, des dimensions et des statistiques pour les CloudWatch métriques :   
Pour plus d'informations sur les métriques disponibles pour les AWS services, consultez les [AWS services qui publient CloudWatch des métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) dans le *guide de CloudWatch l'utilisateur Amazon*.
Pour obtenir le nom, l'espace de noms et les dimensions exacts (le cas échéant) d'une CloudWatch métrique comportant le AWS CLI, consultez [list-metrics](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/list-metrics.html). 

Pour créer cette politique, exécutez la [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)commande en utilisant le fichier JSON comme entrée, comme illustré dans l'exemple suivant.

```
aws autoscaling put-scaling-policy --policy-name my-predictive-scaling-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://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/my-predictive-scaling-policy",
  "Alarms": []
}
```

# Utiliser des expressions mathématiques de métrique
<a name="using-math-expression-examples"></a>

La section suivante fournit des informations et des exemples de politiques de mise à l'échelle prédictive qui montrent comment vous pouvez utiliser les mathématiques de métriques dans votre politique. 

**Topics**
+ [Comprendre les mathématiques de métrique](#custom-metrics-metric-math)
+ [Exemple de politique de mise à l'échelle prédictive qui combine des métriques à l'aide des mathématiques de métriques (AWS CLI)](#custom-metrics-ex2)
+ [Exemple de politique de dimensionnement prédictif à utiliser dans un scénario de blue/green déploiement (AWS CLI)](#custom-metrics-ex3)

## Comprendre les mathématiques de métrique
<a name="custom-metrics-metric-math"></a>

Si vous souhaitez simplement agréger des données métriques existantes, les mathématiques CloudWatch métriques vous évitent les efforts et les coûts liés à la publication d'une autre métrique dans CloudWatch. Vous pouvez utiliser n'importe quelle métrique qui AWS fournit, et vous pouvez également utiliser des métriques que vous définissez dans le cadre de vos applications. Par exemple, vous pourriez vouloir calculer le backlog de la file d'attente Amazon SQS par instance. Vous pouvez le faire en prenant le nombre approximatif de messages disponibles pour la récupération de la file d'attente et en divisant ce nombre par la capacité d'exécution du groupe Auto Scaling.

Pour plus d'informations, consultez la section [Utilisation des mathématiques métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) dans le *guide de CloudWatch l'utilisateur Amazon*. 

Si vous choisissez d'utiliser une expression mathématique de métrique dans votre politique de mise à l'échelle prédictive, tenez compte des points suivants :
+ Les opérations mathématiques de métrique utilisent les points de données de la combinaison unique de nom de la métrique, d'espace de noms et de paires clé/valeur de dimension des métriques. 
+ Vous pouvez utiliser n'importe quel opérateur arithmétique (\$1 - \$1/^), fonction statistique (telle que AVG ou SUM) ou toute autre fonction compatible. CloudWatch 
+ Vous pouvez utiliser à la fois des métriques et les résultats d'autres expressions mathématiques dans les formules de l'expression mathématique. 
+ Vos expressions mathématiques de métrique peuvent être composées de différentes agrégations. Cependant, une bonne pratique pour le résultat final de l'agrégation consiste à utiliser `Average` pour la métrique de mise à l'échelle et `Sum` pour la métrique de charge.
+ Toutes les expressions utilisées dans une spécification de métrique doivent finalement retourner une seule séries temporelles.

Pour utiliser les mathématiques de métrique, procédez comme suit :
+ Choisissez un ou plusieurs CloudWatch indicateurs. Créez ensuite l'expression. Pour plus d'informations, consultez la section [Utilisation des mathématiques métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) dans le *guide de CloudWatch l'utilisateur Amazon*. 
+ Vérifiez que l'expression mathématique de la métrique est valide à l'aide de la CloudWatch console ou de l' CloudWatch [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)API.

## Exemple de politique de mise à l'échelle prédictive qui combine des métriques à l'aide des mathématiques de métriques (AWS CLI)
<a name="custom-metrics-ex2"></a>

Parfois, au lieu de spécifier la métrique directement, vous devrez d'abord traiter ses données d'une certaine manière. Par exemple, une application peut extraire le travail d'une file d'attente Amazon SQS et vous souhaitez utiliser le nombre d'éléments dans la file d'attente comme critère de mise à l'échelle prédictive. Le nombre de messages dans la file d'attente ne définit pas uniquement le nombre d'instances dont vous avez besoin. Par conséquent, un travail supplémentaire est nécessaire pour créer une métrique qui peut être utilisée pour calculer le backlog par instance. Pour de plus amples informations, veuillez consulter [Politique de dimensionnement basée sur Amazon SQS](as-using-sqs-queue.md).

Ce qui suit est un exemple de politique de mise à l'échelle prédictive pour ce scénario. Il spécifie les métriques de mise à l'échelle et de charge qui sont basées sur la métrique `ApproximateNumberOfMessagesVisible` d'Amazon SQS, qui est le nombre de messages disponibles pour la récupération de la file d'attente. Il utilise également la métrique `GroupInServiceInstances` d'Amazon EC2 Auto Scaling et une expression mathématique pour calculer le backlog par instance pour la métrique de mise à l'échelle.

```
aws autoscaling put-scaling-policy --policy-name my-sqs-custom-metrics-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://config.json
{
  "MetricSpecifications": [
    {
      "TargetValue": 100,
      "CustomizedScalingMetricSpecification": {
        "MetricDataQueries": [
          {
            "Label": "Get the queue size (the number of messages waiting to be processed)",
            "Id": "queue_size",
            "MetricStat": {
              "Metric": {
                "MetricName": "ApproximateNumberOfMessagesVisible",
                "Namespace": "AWS/SQS",
                "Dimensions": [
                  {
                    "Name": "QueueName",
                    "Value": "my-queue"
                  }
                ]
              },
              "Stat": "Sum"
            },
            "ReturnData": false
          },
          {
            "Label": "Get the group size (the number of running instances)",
            "Id": "running_capacity",
            "MetricStat": {
              "Metric": {
                "MetricName": "GroupInServiceInstances",
                "Namespace": "AWS/AutoScaling",
                "Dimensions": [
                  {
                    "Name": "AutoScalingGroupName",
                    "Value": "my-asg"
                  }
                ]
              },
              "Stat": "Sum"
            },
            "ReturnData": false
          },
          {
            "Label": "Calculate the backlog per instance",
            "Id": "scaling_metric",
            "Expression": "queue_size / running_capacity",
            "ReturnData": true
          }
        ]
      },
      "CustomizedLoadMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "load_metric",
            "MetricStat": {
              "Metric": {
                "MetricName": "ApproximateNumberOfMessagesVisible",
                "Namespace": "AWS/SQS",
                "Dimensions": [
                  {
                    "Name": "QueueName",
                    "Value": "my-queue"
                  }
                ],
              },
              "Stat": "Sum"
            },
            "ReturnData": true
          }
        ]
      }
    }
  ]
}
```

L'exemple renvoie l'ARN de la politique.

```
{
  "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-sqs-custom-metrics-policy",
  "Alarms": []
}
```

## Exemple de politique de dimensionnement prédictif à utiliser dans un scénario de blue/green déploiement (AWS CLI)
<a name="custom-metrics-ex3"></a>

Une expression de recherche fournit une option avancée dans laquelle vous pouvez demander une métrique à partir de plusieurs groupes Auto Scaling et effectuer des expressions mathématiques sur eux. Cela est particulièrement utile pour les blue/green déploiements. 

**Note**  
Un *déploiement bleu/vert* est une méthode de déploiement dans laquelle vous créez deux groupes Auto Scaling distincts mais identiques. Seul l'un des groupes reçoit le trafic de production. Le trafic utilisateur est initialement dirigé vers le groupe Auto Scaling précédent (« bleu »), tandis qu'un nouveau groupe (« vert ») est utilisé pour le test et l'évaluation d'une nouvelle version d'une application ou d'un service. Le trafic utilisateur est transféré vers le groupe Auto Scaling vert après qu'un nouveau déploiement ait été testé et accepté. Vous pouvez ensuite supprimer le groupe bleu après le succès du déploiement.

Lorsque de nouveaux groupes Auto Scaling sont créés dans le cadre d'un blue/green déploiement, l'historique des métriques de chaque groupe peut être automatiquement inclus dans la politique de dimensionnement prédictif sans que vous ayez à modifier ses spécifications métriques. Pour plus d'informations, consultez la section [Utilisation des politiques de dimensionnement prédictif d'EC2 Auto Scaling avec des déploiements bleu/vert](https://aws.amazon.com/blogs/compute/retaining-metrics-across-blue-green-deployment-for-predictive-scaling/) sur le Compute Blog. AWS 

L'exemple de politique suivant montre comment cela peut être fait. Dans cet exemple, la politique utilise la métrique `CPUUtilization` émise par Amazon EC2. Elle utilise la métrique `GroupInServiceInstances` d'Amazon EC2 Auto Scaling et une expression mathématique pour calculer la valeur de la métrique de mise à l'échelle par instance. Elle spécifie également une métrique de capacité pour obtenir la métrique `GroupInServiceInstances`.

L'expression de recherche trouve la `CPUUtilization` des instances dans plusieurs groupes Auto Scaling en fonction des critères de recherche spécifiés. Si vous créez ultérieurement un nouveau groupe Auto Scaling qui correspond aux mêmes critères de recherche, `CPUUtilization` des instances dans le nouveau groupe Auto Scaling est automatiquement incluse.

```
aws autoscaling put-scaling-policy --policy-name my-blue-green-predictive-scaling-policy \
  --auto-scaling-group-name my-asg --policy-type PredictiveScaling \
  --predictive-scaling-configuration file://config.json
{
  "MetricSpecifications": [
    {
      "TargetValue": 25,
      "CustomizedScalingMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "load_sum",
            "Expression": "SUM(SEARCH('{AWS/EC2,AutoScalingGroupName} MetricName=\"CPUUtilization\" ASG-myapp', 'Sum', 300))",
            "ReturnData": false
          },
          {
            "Id": "capacity_sum",
            "Expression": "SUM(SEARCH('{AWS/AutoScaling,AutoScalingGroupName} MetricName=\"GroupInServiceInstances\" ASG-myapp', 'Average', 300))",
            "ReturnData": false
          },
          {
            "Id": "weighted_average",
            "Expression": "load_sum / capacity_sum",
            "ReturnData": true
          }
        ]
      },
      "CustomizedLoadMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "load_sum",
            "Expression": "SUM(SEARCH('{AWS/EC2,AutoScalingGroupName} MetricName=\"CPUUtilization\" ASG-myapp', 'Sum', 3600))"
          }
        ]
      },
      "CustomizedCapacityMetricSpecification": {
        "MetricDataQueries": [
          {
            "Id": "capacity_sum",
            "Expression": "SUM(SEARCH('{AWS/AutoScaling,AutoScalingGroupName} MetricName=\"GroupInServiceInstances\" ASG-myapp', 'Average', 300))"
          }
        ]
      }
    }
  ]
}
```

L'exemple renvoie l'ARN de la politique.

```
{
  "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-blue-green-predictive-scaling-policy",
  "Alarms": []
}
```

# Considérations relatives aux métriques personnalisées dans le cadre d'une politique de dimensionnement prédictive
<a name="custom-metrics-troubleshooting"></a>

Si un problème survient lors de l'utilisation de métriques personnalisées, nous vous recommandons d'effectuer les opérations suivantes :
+ Si un message d'erreur est fourni, lisez le message et résolvez le problème qu'il signale, si possible. 
+ Si un problème survient lorsque vous essayez d'utiliser une expression de recherche dans un scénario de blue/green déploiement, assurez-vous d'abord de comprendre comment créer une expression de recherche qui recherche une correspondance partielle plutôt qu'une correspondance exacte. Vérifiez également que votre requête ne trouve que les groupes Auto Scaling qui exécutent l'application spécifique. Pour plus d'informations sur la syntaxe des expressions de recherche, consultez la section [Syntaxe des expressions de CloudWatch recherche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/search-expression-syntax.html) dans le *guide de CloudWatch l'utilisateur Amazon*. 
+ Si vous n'avez pas validé une expression à l'avance, la [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)commande la valide lorsque vous créez votre politique de dimensionnement. Cependant, il est possible que cette commande ne parvienne pas à identifier la cause exacte des erreurs détectées. Pour résoudre les problèmes, corrigez les erreurs que vous recevez en réponse à une demande de [get-metric-data](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/get-metric-data.html)commande. Vous pouvez également résoudre les problèmes liés à l'expression depuis la CloudWatch console.
+ Lorsque vous affichez vos graphiques de **charge** et de **capacité** dans la console, il se peut que le graphique de **capacité** n'affiche aucune donnée. Pour vous assurer que les graphiques contiennent des données complètes, veillez à activer systématiquement les métriques de groupe pour vos groupes Auto Scaling. Pour de plus amples informations, veuillez consulter [Activer les métriques du groupe Auto Scaling (console)](ec2-auto-scaling-metrics.md#as-enable-group-metrics).
+ La spécification de la métrique de capacité n'est utile que pour les déploiements bleu/vert lorsque vous avez des applications qui s'exécutent dans différents groupes Auto Scaling au cours de leur durée de vie. Cette métrique personnalisée vous permet de fournir la capacité totale de plusieurs groupes Auto Scaling. La mise à l'échelle prédictive l'utilise pour afficher des données historiques dans les graphiques de **capacité** de la console.
+ Vous devez spécifier `false` pour `ReturnData` si `MetricDataQueries` spécifie la fonction SEARCH() seule sans une fonction mathématique comme SUM(). Cela est dû au fait que les expressions de recherche peuvent renvoyer plusieurs séries temporelles et qu'une spécification métrique basée sur une expression ne peut renvoyer qu'une seule séries temporelles.
+ Toutes les métriques impliquées dans une expression de recherche doivent avoir la même résolution.

## Limitations
<a name="custom-metrics-limitations"></a>
+ Vous pouvez interroger des points de données de 10 métriques au maximum dans une spécification métrique.
+ Dans le cadre de cette limite, une expression compte pour une métrique.