Definizione di una policy di dimensionamento - Amazon ElastiCache

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Definizione di una policy di dimensionamento

Una configurazione della politica di scalabilità del target-tracking è rappresentata da un JSON blocco in cui sono definite le metriche e i valori target. È possibile salvare una configurazione della politica di scalabilità come JSON blocco in un file di testo. Si utilizza quel file di testo quando si richiama il AWS CLI o l'Application Auto API Scaling. Per ulteriori informazioni sulla sintassi di configurazione delle policy, vedere TargetTrackingScalingPolicyConfigurationApplication Auto API Scaling Reference.

Le seguenti opzioni sono disponibili per definire una configurazione di una policy di dimensionamento con monitoraggio degli obiettivi.

Utilizzo di un parametro di default

Utilizzando metriche predefinite, puoi definire rapidamente una politica di scalabilità del tracciamento del target per un OSS cluster ElastiCache con Valkey o Redis che funziona con il tracciamento del target in (Redis) Auto Scaling. ElastiCache OSS

Attualmente, ElastiCache supporta le seguenti metriche predefinite in Auto NodeGroup Scaling:

  • ElastiCachePrimaryEngineCPUUtilization— Il valore medio della EngineCPUUtilization metrica in tutti i nodi primari del CloudWatch cluster.

  • ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage— Il valore medio della DatabaseMemoryUsageCountedForEvictPercentage metrica in CloudWatch tutti i nodi primari del cluster.

  • ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage— Il valore medio della ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage metrica in CloudWatch tutti i nodi primari del cluster.

Per ulteriori informazioni sulle metriche EngineCPUUtilization, DatabaseMemoryUsageCountedForEvictPercentage e DatabaseCapacityUsageCountedForEvictPercentage, consultare Monitoraggio dell'utilizzo con CloudWatch Metrics. Per utilizzare un parametro di default nella policy di dimensionamento, crea una configurazione di monitoraggio degli obiettivi per la policy di dimensionamento. Questa configurazione deve includere una PredefinedMetricSpecification per la metrica predefinita e una TargetValue per il valore di destinazione di quella metrica.

L'esempio seguente descrive una tipica configurazione delle policy per il ridimensionamento del target-tracking per un ElastiCache cluster with Valkey o Redis. OSS In questa configurazione, la metrica ElastiCachePrimaryEngineCPUUtilization predefinita viene utilizzata per regolare il cluster in base a un CPU utilizzo medio del 40% su tutti i nodi primari del cluster.

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

Utilizzo di un parametro personalizzato

Utilizzando dei parametri personalizzati, è possibile definire una policy di dimensionamento di monitoraggio degli obiettivi che soddisfi i requisiti personalizzati. È possibile definire una metrica personalizzata basata su qualsiasi ElastiCache metrica che cambia in proporzione alla scalabilità. Non tutte le ElastiCache metriche funzionano per il tracciamento degli obiettivi. Il parametro deve essere un parametro di utilizzo valido e deve descrivere quanto è impegnata un'istanza. Il valore del parametro deve aumentare o diminuire in proporzione al numero di partizioni nel cluster. Questo aumento o riduzione proporzionale è necessario per utilizzare i dati del parametro per aumentare orizzontalmente in modo proporzionale il numero di repliche .

Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, una metrica personalizzata regola un cluster ElastiCache (RedisOSS) in base a un CPU utilizzo medio del 50% su tutti gli shard di un cluster denominato. 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" } }

Utilizzo di periodi di attesa

È possibile specificare un valore, in secondi, per ScaleOutCooldown per aggiungere un periodo di attesa per il dimensionamento orizzontale del cluster. Allo stesso modo, è possibile aggiungere un valore, in secondi, per ScaleInCooldown per aggiungere un periodo di attesa per la riduzione del cluster. Per ulteriori informazioni, vedere TargetTrackingScalingPolicyConfigurationApplication Auto Scaling API Reference.

Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, la metrica ElastiCachePrimaryEngineCPUUtilization predefinita viene utilizzata per regolare un cluster ElastiCache (RedisOSS) in base a un CPU utilizzo medio del 40% su tutti i nodi primari di quel cluster. La configurazione fornisce un tempo di raffreddamento di riduzione orizzontale di 10 minuti e un tempo di raffreddamento di aumento di 5 minuti.

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