Creación del archivo JSON para las métricas personalizadas de escalado predictivo con Amazon ECS - Amazon Elastic Container Service

Creación del archivo JSON para las métricas personalizadas de escalado predictivo con Amazon ECS

En la siguiente sección hay ejemplos de cómo configurar el escalado predictivo para consultar datos de CloudWatch. Existen dos métodos diferentes para configurar esta opción, y el método que elija afectará al formato que utilice para construir el JSON para su política de escalado predictivo. Cuando usa matemáticas métricas, el formato del JSON varía aún más en función de las matemáticas métricas que se estén desempeñando.

  1. Para crear una política que obtenga datos directamente de otras métricas de CloudWatch proporcionadas por AWS o de las métricas que publique en CloudWatch, consulte Ejemplo de política de escalado predictivo con métricas personalizadas de escalado y de carga mediante la AWS CLI.

Ejemplo de política de escalado predictivo con métricas personalizadas de escalado y de carga mediante la AWS CLI

Para crear una política de escalado predictivo con métricas de carga y escalado personalizadas con AWS CLI, almacene los argumentos de --predictive-scaling-configuration en un archivo JSON denominado config.json.

Para empezar a agregar métricas personalizadas, sustituya los valores reemplazables del siguiente ejemplo por los de sus métricas y su utilización objetivo.

{ "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 obtener más información, consulte MetricDataQuery en la Referencia de la API de Amazon EC2 Auto Scaling.

nota

Los siguientes son algunos de los recursos adicionales que pueden ayudarle a encontrar nombres de métricas, espacios de nombres, dimensiones y estadísticas para las métricas de CloudWatch:

  • Para obtener más información sobre las métricas disponibles en los servicios de AWS, consulte Servicios de AWS que publican métricas de CloudWatch en la Guía del usuario de Amazon CloudWatch.

  • Para obtener el nombre exacto de la métrica, el espacio de nombres y las dimensiones (si corresponde) de una métrica de CloudWatch con la AWS CLI, consulte list-metrics.

Para crear esta política, ejecute el comando put-scaling-policy con el archivo de JSON como entrada, tal y como se muestra en el ejemplo siguiente.

aws application-autoscaling put-scaling-policy --policy-name my-predictive-scaling-policy \ --auto-scaling-group-name my-asg --policy-type PredictiveScaling \ --predictive-scaling-configuration file://config.json

Si se ejecuta correctamente, este comando devuelve el nombre de recurso de Amazon (ARN) de la política.

{ "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-predictive-scaling-policy", "Alarms": [] }