Construir o JSON para métricas personalizadas de escalabilidade preditiva com o Amazon ECS
A seção a seguir contém exemplos de como configurar escalação preditiva para consultar dados do CloudWatch. Há dois métodos diferentes de configurar essa opção, e o método escolhido afeta qual será o formato usado para estruturar JSON para a política de escalação preditiva. Quando você usa matemática de métricas, o formato do JSON varia ainda mais com base na matemática de métrica que está sendo aplicada.
-
Para criar uma política que obtenha dados diretamente de outras métricas do CloudWatch fornecidas pela AWS ou das métricas que você publica no CloudWatch, consulte Exemplo de política de escalabilidade preditiva com métricas personalizadas de carga e escalabilidade usando a AWS CLI.
Exemplo de política de escalabilidade preditiva com métricas personalizadas de carga e escalabilidade usando a AWS CLI
Para criar uma política de escalação preditiva com métricas personalizadas de carga e dimensionamento com a AWS CLI, armazene os argumentos para a --predictive-scaling-configuration
em um arquivo JSON denominado config.json
.
Você começa a adicionar métricas personalizadas substituindo os valores substituíveis no exemplo a seguir por suas métricas e sua meta de utilização.
{ "MetricSpecifications": [ { "TargetValue":
50
, "CustomizedScalingMetricSpecification": { "MetricDataQueries": [ { "Id": "scaling_metric
", "MetricStat": { "Metric": { "MetricName": "MyUtilizationMetric
", "Namespace": "MyNameSpace
", "Dimensions": [ { "Name": "MyOptionalMetricDimensionName
", "Value": "MyOptionalMetricDimensionValue
" } ] }, "Stat": "Average
" } } ] }, "CustomizedLoadMetricSpecification": { "MetricDataQueries": [ { "Id": "load_metric
", "MetricStat": { "Metric": { "MetricName": "MyLoadMetric
", "Namespace": "MyNameSpace
", "Dimensions": [ { "Name": "MyOptionalMetricDimensionName
", "Value": "MyOptionalMetricDimensionValue
" } ] }, "Stat": "Sum
" } } ] } } ] }
Para obter mais informações, consulte MetricDataQuery na Amazon EC2 Auto Scaling API Reference (Referência de API do Amazon EC2 Auto Scaling).
nota
Veja a seguir alguns recursos adicionais que podem ajudar você a encontrar nomes de métricas, namespaces, dimensões e estatísticas para as métricas do CloudWatch:
-
Para mais informações sobre as métricas disponíveis para produtos da AWS, consulte Produtos da AWS que publicam métricas do CloudWatch no Guia do usuário do Amazon CloudWatch.
-
Para obter os valores exatos de nome da métrica, namespace e dimensões (se aplicável) para uma métrica do CloudWatch com a AWS CLI, consulte list-metrics.
Para criar essa política, execute o comando put-scaling-policy usando como entrada o arquivo JSON, como demonstrado no exemplo a seguir.
aws application-autoscaling put-scaling-policy --policy-name
my-predictive-scaling-policy
\ --auto-scaling-group-namemy-asg
--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
Se bem-sucedido, esse comando gerará o nome do recurso da Amazon (ARN) da política.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-predictive-scaling-policy",
"Alarms": []
}