Définition d'une politique de mise à l'échelle - Amazon ElastiCache

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.

Définition d'une politique de mise à l'échelle

Une configuration de politique de dimensionnement pour le suivi des cibles est représentée par un JSON bloc dans lequel les métriques et les valeurs cibles sont définies. Vous pouvez enregistrer une configuration de politique de dimensionnement sous forme de JSON bloc dans un fichier texte. Vous utilisez ce fichier texte lorsque vous invoquez le AWS CLI ou l'Application Auto ScalingAPI. Pour plus d'informations sur la syntaxe de configuration des politiques, consultez TargetTrackingScalingPolicyConfigurationla section Application Auto Scaling API Reference.

Les options suivantes sont disponibles pour définir une configuration de politique de suivi de cible et d'échelonnement :

Utilisation d'une métrique prédéfinie

En utilisant des métriques prédéfinies, vous pouvez rapidement définir une politique de dimensionnement pour le suivi des cibles pour un OSS cluster ElastiCache avec Valkey ou Redis qui fonctionne avec le suivi des cibles dans ElastiCache (Redis) OSS Auto Scaling.

Actuellement, ElastiCache prend en charge les métriques prédéfinies suivantes dans NodeGroup Auto Scaling :

  • ElastiCachePrimaryEngineCPUUtilization— La valeur moyenne de la EngineCPUUtilization métrique pour CloudWatch tous les nœuds principaux du cluster.

  • ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage— La valeur moyenne de la DatabaseMemoryUsageCountedForEvictPercentage métrique pour CloudWatch tous les nœuds principaux du cluster.

  • ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage— La valeur moyenne de la ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage métrique pour CloudWatch tous les nœuds principaux du cluster.

Pour plus d'informations sur les métriques EngineCPUUtilization, DatabaseMemoryUsageCountedForEvictPercentage et DatabaseCapacityUsageCountedForEvictPercentage, consultez Surveillance de l'utilisation à l'aide de CloudWatch métriques. Pour utiliser une métrique prédéfinie dans votre politique de dimensionnement, créez une configuration de suivi de la cible pour votre politique de dimensionnement. Cette configuration doit inclure un PredefinedMetricSpecification pour la métrique prédéfinie et un TargetValue pour la valeur cible de cette métrique.

L'exemple suivant décrit une configuration de politique typique pour le dimensionnement du suivi des cibles pour un cluster ElastiCache avec Valkey ou Redis. OSS Dans cette configuration, la métrique ElastiCachePrimaryEngineCPUUtilization prédéfinie est utilisée pour ajuster le cluster sur la base d'une CPU utilisation moyenne de 40 % sur tous les nœuds principaux du cluster.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" } }

Utilisation d'une métrique personnalisée

L'utilisation de métriques personnalisées vous permet de définir une politique de dimensionnement Suivi de la cible répondant à vos exigences personnelles. Vous pouvez définir une métrique personnalisée en fonction de toute ElastiCache métrique qui change proportionnellement à la mise à l'échelle. Toutes les ElastiCache mesures ne fonctionnent pas pour le suivi des cibles. La métrique doit être une métrique d'utilisation valide et décrire le degré d'occupation d'une instance. La valeur de la métrique doit augmenter ou diminuer proportionnellement au nombre de partitions dans le cluster. Cette augmentation ou diminution proportionnelle est nécessaire pour que les données de la métrique puissent être utilisées afin d'augmenter ou de réduire proportionnellement le nombre de partitions.

L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, une métrique personnalisée ajuste un cluster ElastiCache (RedisOSS) en fonction d'une CPU utilisation moyenne de 50 % de toutes les partitions d'un cluster nommé. my-db-cluster

{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "EngineCPUUtilization", "Namespace": "AWS/ElastiCache", "Dimensions": [ { "Name": "RelicationGroup","Value": "my-db-cluster" }, { "Name": "Role","Value": "PRIMARY" } ], "Statistic": "Average", "Unit": "Percent" } }

Utilisation des temps de stabilisation

Vous pouvez spécifier une valeur, en secondes, pour que ScaleOutCooldown ajoute un temps de stabilisation à la montée en puissance de votre cluster. De la même manière, vous pouvez ajouter une valeur, en secondes, pour que ScaleInCooldown ajoute un temps de stabilisation pour la diminution de charge de votre cluster. Pour plus d'informations, reportez-vous TargetTrackingScalingPolicyConfigurationà la section Application Auto Scaling API Reference.

L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, la métrique ElastiCachePrimaryEngineCPUUtilization prédéfinie est utilisée pour ajuster un cluster ElastiCache (RedisOSS) sur la base d'une CPU utilisation moyenne de 40 % sur tous les nœuds principaux de ce cluster. La configuration indique un temps de stabilisation de diminution en charge de 10 minutes et un temps de stabilisation de montée en charge de 5 minutes.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }