As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Definir uma política de ajuste de escala
Uma configuração de política de escalabilidade de rastreamento de destino é representada por um bloco JSON no qual as métricas e valores de destino são definidos. Você pode salvar uma configuração de política de escalabilidade como um bloco JSON em um arquivo de texto. Você usa esse arquivo de texto ao invocar a AWS CLI ou a API Application Auto Scaling. Para mais informações sobre a sintaxe de configurações de política, consulte TargetTrackingScalingPolicyConfiguration na Referência de API de Auto Scaling do Aplicativo.
As seguintes opções estão disponíveis para definir uma configuração de política de escalabilidade com monitoramento do objetivo:
Tópicos
Uso de uma métrica predefinida
Usando métricas predefinidas, você pode definir rapidamente uma política de escalabilidade de rastreamento de metas para um cluster OSS ElastiCache para Valkey e Redis que funciona com rastreamento de metas no Auto Scaling. ElastiCache
Atualmente, é ElastiCache compatível com as seguintes métricas predefinidas no NodeGroup Auto Scaling:
-
ElastiCachePrimaryEngineCPUUtilization— O valor médio da
EngineCPUUtilization
métrica em CloudWatch todos os nós primários do cluster. -
ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage— O valor médio da
DatabaseMemoryUsageCountedForEvictPercentage
métrica em CloudWatch todos os nós primários do cluster. -
ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage— O valor médio da
ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage
métrica em CloudWatch todos os nós primários do cluster.
Para ter mais informações sobre as métricas EngineCPUUtilization
, DatabaseMemoryUsageCountedForEvictPercentage
e DatabaseCapacityUsageCountedForEvictPercentage
, consulte Monitorando o uso com CloudWatch métricas. Para usar uma métrica predefinida em sua política de escalabilidade, crie uma configuração de rastreamento de destino para sua política de escalabilidade. Essa configuração deve incluir uma PredefinedMetricSpecification
para a métrica predefinida e um TargetValue para o valor de destino dessa métrica.
O exemplo a seguir descreve uma configuração de política típica para escalonamento de rastreamento de destino para um cluster OSS ElastiCache para Valkey e Redis. Nessa configuração, a métrica predefinida ElastiCachePrimaryEngineCPUUtilization
é usada para ajustar o cluster com base em uma utilização média da CPU de 40 por cento em todos os nós primários no cluster.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" } }
Uso de uma métrica personalizada
Com o uso de métricas personalizadas, você pode definir uma política de escalabilidade de rastreamento de destino que atenda a suas exigências personalizadas. Você pode definir uma métrica personalizada com base em qualquer métrica do ElastiCache que mude na proporção da escalabilidade. Nem todas as ElastiCache métricas funcionam para o rastreamento de metas. A métrica deve ser de utilização válida e descrever o quão ocupada uma instância está. O valor da métrica deve aumentar ou diminuir na proporção do número de fragmentos no cluster. Essa aumento ou redução proporcional é necessário para usar os dados da métrica para expandir ou reduzir proporcionalmente o número de fragmentos.
O exemplo a seguir descreve uma configuração de rastreamento de destino para uma política de escalabilidade. Nessa configuração, uma métrica personalizada ajusta um cluster OSS ElastiCache for Redis com base em uma utilização média da CPU de 50% em todos os fragmentos em um cluster chamado. my-db-cluster
{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "EngineCPUUtilization", "Namespace": "AWS/ElastiCache", "Dimensions": [ { "Name": "ReplicationGroup","Value": "my-db-cluster" }, { "Name": "Role","Value": "PRIMARY" } ], "Statistic": "Average", "Unit": "Percent" } }
Uso de períodos de desaquecimento
Você pode especificar um valor, em segundos, para ScaleOutCooldown
a fim de adicionar um desaquecimento para expandir seu cluster. De forma similar, você pode adicionar um valor, em segundos, para ScaleInCooldown
a fim de adicionar um período de desaquecimento para reduzir a escala na horizontal do seu cluster. Para obter mais informações, consulte a Referência TargetTrackingScalingPolicyConfigurationda API Application Auto Scaling.
O exemplo a seguir descreve uma configuração de rastreamento de destino para uma política de escalabilidade. Nessa configuração, a métrica ElastiCachePrimaryEngineCPUUtilization
predefinida é usada para ajustar um cluster OSS ElastiCache para Redis com base em uma utilização média da CPU de 40% em todos os nós primários desse cluster. A configuração fornece um período de espera de 10 minutos para reduzir a escala horizontalmente, e um período de espera de 5 minutos para aumentar a escala horizontalmente.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }