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 Suivi de la cible est représentée par un bloc JSON dans lequel sont définies les métriques et valeurs cibles. Vous pouvez enregistrer une configuration de politique de dimensionnement sous forme de bloc JSON dans un fichier texte. Vous utilisez ce fichier texte lorsque vous appelez l'API Application Auto Scaling AWS CLI ou l'API Application Auto Scaling. Pour plus d'informations sur la syntaxe de la configuration d'une stratégie, consultez TargetTrackingScalingPolicyConfiguration dans le manuel Référence d'API Application Auto Scaling.
Les options suivantes sont disponibles pour définir une configuration de politique de suivi de cible et d'échelonnement :
Rubriques
Utilisation d'une métrique prédéfinie
Une configuration de politique de dimensionnement Suivi de la cible est représentée par un bloc JSON dans lequel sont définies les métriques et valeurs cibles. Vous pouvez enregistrer une configuration de politique de dimensionnement sous forme de bloc JSON dans un fichier texte. Vous utilisez ce fichier texte lorsque vous appelez l'API Application Auto Scaling AWS CLI ou l'API Application Auto Scaling. Pour plus d'informations sur la syntaxe de la configuration d'une stratégie, consultez TargetTrackingScalingPolicyConfiguration dans le manuel Référence d'API Application Auto Scaling.
Les options suivantes sont disponibles pour définir une configuration de politique de suivi de cible et d'échelonnement :
Rubriques
Utilisation d'une métrique prédéfinie
En utilisant des métriques prédéfinies, vous pouvez définir rapidement une politique de dimensionnement pour le suivi des cibles ElastiCache pour un cluster Valkey et Redis OSS qui fonctionne avec le suivi des cibles dans Auto Scaling. ElastiCache Actuellement, ElastiCache prend en charge la métrique prédéfinie suivante dans ElastiCache Replicas Auto Scaling :
ElastiCacheReplicaEngineCPUUtilization
— La valeur moyenne de la CPUUtilization métrique Engine pour CloudWatch toutes les répliques du cluster. Vous trouverez la valeur de la métrique agrégée ci-dessous ElastiCache ReplicationGroupId, Role
pour CloudWatch Required ReplicationGroupId et Role Replica.
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 PredefinedMetricSpecification
pour la métrique prédéfinie et TargetValue
pour la valeur cible de cette métrique.
Utilisation d'une métrique personnalisée
L'utilisation de métriques personnalisées vous permet de définir une stratégie de dimensionnement Suivi de la cible répondant à vos exigences personnelles. Vous pouvez définir une métrique personnalisée basée sur n'importe quelle métrique ElastiCache pour Valkey et Redis OSS 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 réplicas 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 réplicas .
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 en fonction d'une utilisation moyenne du processeur de 50 % pour toutes les répliques d'un cluster nommé. my-db-cluster
{"TargetValue": 50, "CustomizedMetricSpecification": {"MetricName": "EngineCPUUtilization", "Namespace": "AWS/ElastiCache", "Dimensions": [ {"Name": "ReplicationGroup","Value": "my-db-cluster"}, {"Name": "Role","Value": "REPLICA"} ], "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 sur ScaleInCooldown
et ScaleOutCooldown
, consultez TargetTrackingScalingPolicyConfiguration dans le manuel Référence d'API Application Auto Scaling. L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, la métrique ElastiCacheReplicaEngineCPUUtilization
prédéfinie est utilisée pour ajuster un cluster en fonction d'une utilisation moyenne du processeur de 40 % pour toutes les répliques 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": "ElastiCacheReplicaEngineCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }
Désactivation de l'activité de diminution en charge
Vous pouvez empêcher la configuration de la politique de dimensionnement du suivi des cibles de s'adapter à votre cluster ElastiCache for Valkey et Redis OSS en désactivant l'activité de dimensionnement. La désactivation de l'activité de diminution en charge empêche la politique de mise à l'échelle de supprimer des réplicas, tout en l'autorisant encore à les créer si nécessaire.
Vous pouvez spécifier une valeur booléenne pour que DisableScaleIn
active ou désactive l'activité de diminution en charge de votre cluster. Pour plus d'informations sur DisableScaleIn
, consultez TargetTrackingScalingPolicyConfiguration dans le manuel Référence d'API Application Auto Scaling.
L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, la métrique ElastiCacheReplicaEngineCPUUtilization
prédéfinie ajuste un cluster en fonction d'une utilisation moyenne du processeur de 40 % pour toutes les répliques de ce cluster. La configuration désactive l'activité de diminution en charge pour la politique de dimensionnement.
{"TargetValue": 40.0, "PredefinedMetricSpecification": {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization" }, "DisableScaleIn": true }
Appliquer une politique de dimensionnement à un cluster ElastiCache pour Valkey et Redis OSS
Après avoir enregistré votre cluster auprès ElastiCache de Valkey et Redis OSS Auto Scaling et défini une politique de dimensionnement, vous appliquez la politique de dimensionnement au cluster enregistré. Pour appliquer une politique de dimensionnement à un cluster ElastiCache pour Valkey et Redis OSS, vous pouvez utiliser l'API Application Auto Scaling AWS CLI ou l'API Application Auto Scaling.
À l'aide du AWS CLI
Pour appliquer une politique de dimensionnement à votre cluster ElastiCache for Valkey et Redis OSS, utilisez la put-scaling-policycommande avec les paramètres suivants :
-
--policy-name : nom de la politique de mise à l'échelle.
-
--policy-type : définissez cette valeur à
TargetTrackingScaling
. -
--resource-id — Identifiant de ressource pour le cluster. Pour ce paramètre, le type de ressource est ReplicationGroup et l'identifiant unique est le nom du cluster, par exemple
replication-group/myscalablecluster
. -
--service-namespace : définissez cette valeur à elasticache.
-
--scalable-dimension : définit cette valeur à
elasticache:replication-group:Replicas
. -
-- target-tracking-scaling-policy -configuration — Configuration de la politique de dimensionnement du suivi des cibles à utiliser pour le cluster.
Dans l'exemple suivant, vous appliquez une politique de dimensionnement de suivi des cibles nommée myscalablepolicy
à un cluster nommé avec mise à l'échelle myscalablecluster
ElastiCache automatique. Pour ce faire, vous utilisez une configuration de politique enregistrée dans un fichier nommé config.json
.
Pour Linux, macOS ou Unix :
aws application-autoscaling put-scaling-policy \ --policy-name myscalablepolicy \ --policy-type TargetTrackingScaling \ --resource-id replication-group/myscalablecluster \ --service-namespace elasticache \ --scalable-dimension elasticache:replication-group:Replicas \ --target-tracking-scaling-policy-configuration file://config.json
{"TargetValue": 40.0, "PredefinedMetricSpecification": {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization" }, "DisableScaleIn": true }
Pour Windows :
aws application-autoscaling put-scaling-policy ^ --policy-name myscalablepolicy ^ --policy-type TargetTrackingScaling ^ --resource-id replication-group/myscalablecluster ^ --service-namespace elasticache ^ --scalable-dimension elasticache:replication-group:Replicas ^ --target-tracking-scaling-policy-configuration file://config.json
Utilisation de l'API
Pour appliquer une politique de dimensionnement à votre ElastiCache cluster avec l'API Application Auto Scaling, utilisez l'opération PutScalingPolicyApplication Auto Scaling API avec les paramètres suivants :
-
PolicyName — Le nom de la politique de dimensionnement.
-
PolicyType — Définissez cette valeur sur
TargetTrackingScaling
. -
ResourceID — Identifiant de ressource pour le cluster. Pour ce paramètre, le type de ressource est ReplicationGroup et l'identifiant unique est le nom du ElastiCache cluster Redis OSS, par exemple
replication-group/myscalablecluster
. -
ServiceNamespace — Définissez cette valeur sur elasticache.
-
ScalableDimension — Définissez cette valeur sur
elasticache:replication-group:Replicas
. -
TargetTrackingScalingPolicyConfiguration — La configuration de la politique de dimensionnement du suivi des cibles à utiliser pour le cluster.
Dans l'exemple suivant, vous appliquez une politique de dimensionnement de suivi des cibles nommée scalablepolicy
à un cluster nommé avec mise à l'échelle myscalablecluster
ElastiCache automatique. Vous utilisez une configuration de politique basée sur la métrique prédéfinie ElastiCacheReplicaEngineCPUUtilization
.
POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "myscalablepolicy", "ServiceNamespace": "elasticache", "ResourceId": "replication-group/myscalablecluster", "ScalableDimension": "elasticache:replication-group:Replicas", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization" } } }