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á.
Uma configuração de política de escalabilidade de rastreamento de metas é representada por um JSON bloco no qual as métricas e os valores-alvo são definidos. Você pode salvar uma configuração de política de escalabilidade como um JSON bloco em um arquivo de texto. Você usa esse arquivo de texto ao invocar o AWS CLI ou o Application API Auto Scaling. Para obter mais informações sobre a sintaxe de configuração de políticas, consulte TargetTrackingScalingPolicyConfigurationna Application Auto API Scaling Reference.
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
Uma configuração de política de escalabilidade de rastreamento de metas é representada por um JSON bloco no qual as métricas e os valores-alvo são definidos. Você pode salvar uma configuração de política de escalabilidade como um JSON bloco em um arquivo de texto. Você usa esse arquivo de texto ao invocar o AWS CLI ou o Application API Auto Scaling. Para obter mais informações sobre a sintaxe de configuração de políticas, consulte TargetTrackingScalingPolicyConfigurationna Application Auto API Scaling Reference.
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 ElastiCache para um OSS cluster do Valkey e do Redis que funciona com o rastreamento de metas no Auto Scaling. ElastiCache Atualmente, é ElastiCache compatível com a seguinte métrica predefinida no Auto Scaling de ElastiCache réplicas:
ElastiCacheReplicaEngineCPUUtilization
— O valor médio da ngineCPUUtilization métrica E em CloudWatch todas as réplicas no cluster. Você pode encontrar o valor da métrica agregada CloudWatch em ElastiCache ReplicationGroupId, Role
for required ReplicationGroupId e Role Replica.
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.
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 ElastiCache OSS métrica do Valkey e do Redis que mude em proporção à escala. 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 réplicas 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 réplicas.
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 com base em uma CPU utilização média de 50% em todas as réplicas em um cluster chamado. my-db-cluster
{"TargetValue": 50,
"CustomizedMetricSpecification":
{"MetricName": "EngineCPUUtilization",
"Namespace": "AWS/ElastiCache",
"Dimensions": [
{"Name": "RelicationGroup","Value": "my-db-cluster"},
{"Name": "Role","Value": "REPLICA"}
],
"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 sobre ScaleInCooldown
eScaleOutCooldown
, consulte TargetTrackingScalingPolicyConfigurationna Referência do Application Auto Scaling. API O exemplo a seguir descreve uma configuração de rastreamento de destino para uma política de escalabilidade. Nessa configuração, a métrica ElastiCacheReplicaEngineCPUUtilization
predefinida é usada para ajustar um cluster com base em uma CPU utilização média de 40% em todas as réplicas desse cluster. A configuração fornece um desaquecimento de redução de 10 minutos e em um desaquecimento de expansão de 5 minutos.
{"TargetValue": 40.0,
"PredefinedMetricSpecification":
{"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
},
"ScaleInCooldown": 600,
"ScaleOutCooldown": 300
}
Desabilitar a atividade de redução
Você pode impedir que a configuração da política de escalabilidade de rastreamento de metas seja escalada em seu cluster ElastiCache para Valkey e Redis OSS desativando a atividade de escalabilidade. Desabilitar a atividade de redução de escala na horizontal impede que a política de escalabilidade exclua réplicas, enquanto permite ao mesmo tempo que a política de escalabilidade adicione-as conforme necessário.
Você pode especificar um valor booleano para DisableScaleIn
a fim de permitir ou evitar a atividade de redução de escala na horizontal no seu cluster. Para obter mais informações sobreDisableScaleIn
, consulte TargetTrackingScalingPolicyConfigurationna Referência do Application Auto Scaling. API
O exemplo a seguir descreve uma configuração de rastreamento de destino para uma política de escalabilidade. Nessa configuração, a métrica ElastiCacheReplicaEngineCPUUtilization
predefinida ajusta um cluster com base em uma CPU utilização média de 40% em todas as réplicas desse cluster. A configuração desativa a atividade de redução para a política de escalabilidade.
{"TargetValue": 40.0,
"PredefinedMetricSpecification":
{"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
},
"DisableScaleIn": true
}
Aplicação de uma política de escalabilidade a um cluster ElastiCache para Valkey e Redis OSS
Depois de registrar seu cluster com o ElastiCache escalonamento OSS automático Valkey e Redis e definir uma política de escalabilidade, você aplica a política de escalabilidade ao cluster registrado. Para aplicar uma política de escalabilidade a um OSS cluster ElastiCache para Valkey e Redis, você pode usar o AWS CLI ou o Application Auto Scaling. API
Usando o AWS CLI
Para aplicar uma política de escalabilidade ao seu OSS cluster ElastiCache para Valkey e Redis, use o put-scaling-policycomando com os seguintes parâmetros:
-
--policy-name: o nome da política de escalabilidade.
-
--policy-type: defina este valor como
TargetTrackingScaling
. -
--resource-id: o identificador do recurso para o cluster. Para esse parâmetro, o tipo de recurso é ReplicationGroup e o identificador exclusivo é o nome do cluster, por exemplo
replication-group/myscalablecluster
. -
--service-namespace: defina este valor como elasticache.
-
--scalable-dimension: defina este valor como
elasticache:replication-group:Replicas
. -
-- target-tracking-scaling-policy -configuration — A configuração da política de escalabilidade de rastreamento de destino a ser usada no cluster.
No exemplo a seguir, você aplica uma política de escalabilidade de rastreamento de metas nomeada myscalablepolicy
a um cluster chamado com escalabilidade myscalablecluster
automática ElastiCache . Para fazer isso, use uma configuração de política salva em um arquivo chamado config.json
.
Para 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
}
Para 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
Usar o API
Para aplicar uma política de escalabilidade ao seu ElastiCache cluster com o Application Auto API Scaling, use PutScalingPolicya operação Application API Auto Scaling com os seguintes parâmetros:
-
PolicyName — O nome da política de escalabilidade.
-
PolicyType — Defina esse valor como
TargetTrackingScaling
. -
ResourceID: o identificador de recursos para o cluster. Para esse parâmetro, o tipo de recurso é ReplicationGroup e o identificador exclusivo é o nome do OSS cluster ElastiCache for Redis, por exemplo
replication-group/myscalablecluster
. -
ServiceNamespace — Defina esse valor como elasticache.
-
ScalableDimension — Defina esse valor como
elasticache:replication-group:Replicas
. -
TargetTrackingScalingPolicyConfiguration — A configuração da política de escalabilidade de rastreamento de metas a ser usada no cluster.
No exemplo a seguir, você aplica uma política de escalabilidade de rastreamento de metas nomeada scalablepolicy
a um cluster chamado com escalabilidade myscalablecluster
automática ElastiCache . Use uma configuração de política com base na métrica predefinida 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"
}
}
}