Cree una política de seguimiento de objetivos utilizando métricas de alta resolución para una respuesta más rápida - Amazon EC2 Auto Scaling

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cree una política de seguimiento de objetivos utilizando métricas de alta resolución para una respuesta más rápida

El seguimiento de objetivos admite CloudWatch métricas de alta resolución con puntos de datos de segundo nivel que se publican a intervalos inferiores a un minuto. Configure políticas de seguimiento de objetivos para supervisar la utilización mediante CloudWatch métricas de alta resolución para las aplicaciones que tienen patrones de demanda volátiles, como la atención al cliente, los servicios de streaming en directo APIs, los sitios web de comercio electrónico y el procesamiento de datos bajo demanda. Para lograr una mayor precisión a la hora de ajustar la capacidad a la demanda, Target Tracking utiliza este monitoreo detallado para detectar y responder a los cambios en la demanda y el uso de las instancias con mayor rapidez. EC2

Para obtener más información sobre cómo publicar tus métricas en alta resolución, consulta Publicar métricas personalizadas en la Guía del CloudWatch usuario de Amazon. Para acceder a EC2 las métricas y publicarlas, como el uso de la CPU en alta resolución, es posible que desee utilizar CloudWatch un agente.

Regiones de AWS

El seguimiento de objetivos mediante métricas de alta resolución está disponible en todos los países Regiones de AWS excepto en. AWS GovCloud (US) Regions

Cómo funciona la política de seguimiento de objetivos con métricas de alta resolución

Las políticas de seguimiento de objetivos se crean definiendo la métrica de la que se quiere hacer un seguimiento y el valor objetivo que se quiere mantener para la métrica. Para escalar en función de una métrica de alta resolución, especifique el nombre de la métrica y establezca el período de la métrica en el que el seguimiento de destino observa esta métrica en un valor inferior a 60 segundos. Actualmente, el intervalo mínimo admitido es de 10 segundos. Puede publicar su métrica en intervalos más bajos que este.

nota

No se admite un período métrico superior a 60.

Puede configurar el seguimiento de objetivos en una única CloudWatch métrica o consultar varias CloudWatch métricas y utilizar expresiones matemáticas para crear nuevas series temporales únicas basadas en estas métricas. Ambas opciones permiten definir el período métrico.

Ejemplos

Ejemplo 1

En el siguiente ejemplo, se crea una política de seguimiento de objetivos basada en una CloudWatch métrica de alta resolución. La métrica se publica con una resolución de 10 segundos. Al definir el período, puede habilitar el seguimiento de objetivos para monitorear esta métrica con una granularidad de 10 segundos. Reemplace cada user input placeholder por su propia información.

$ cat ~/config.json { "TargetValue": 100.0, "CustomizedMetricSpecification": { "MetricName": "MyHighResolutionMetric", "Namespace": "MyNamespace", "Dimensions": [ { "Name": "MyOptionalDimensionName", "Value": "MyOptionalMetricDimensionValue" } ], "Statistic": "Average", "Unit": "None" "Period": "10 } }
Ejemplo 2

Puede usar expresiones matemáticas métricas para combinar varias métricas en una sola serie temporal para escalarlas. Las matemáticas métricas son especialmente útiles para convertir las métricas existentes en una media por instancia. La conversión de métricas es esencial porque el seguimiento de objetivos supone que la métrica es inversamente proporcional a la capacidad del grupo de Auto Scaling. Por lo tanto, cuando la capacidad aumenta, la métrica debería disminuir casi en la misma proporción.

Por ejemplo, supongamos que tiene una métrica que representa los trabajos pendientes que su aplicación debe procesar. Puede usar las matemáticas métricas para dividir los trabajos pendientes entre la capacidad de ejecución de su grupo de Auto Scaling. Auto Scaling publica la métrica de capacidad con una granularidad de 1 minuto, por lo que no habrá ningún valor para esta métrica en intervalos de menos de un minuto. Si desea utilizar una resolución más alta para el escalado, esto puede provocar una discordancia temporal entre la métrica de capacidad y la métrica de tareas pendientes. Para evitar este desajuste, le recomendamos que utilice la expresión FILL para rellenar los valores faltantes con el número de capacidad registrado en la marca de tiempo del minuto anterior.

En el siguiente ejemplo, se utilizan las matemáticas métricas para dividir la métrica de trabajos pendientes por la capacidad. Por cierto, estableceremos ambas métricas en 10 segundos. Como la métrica se publica a intervalos de 1 minuto, utilizamos la operación RELLENAR en la métrica de capacidad.

Para utilizar las matemáticas métricas para modificar varias métricas

{ "CustomizedMetricSpecification": { "Metrics": [ { "Label": "Pending jobs to be processed", "Id": "m1", "MetricStat": { "Metric": { "MetricName": "MyPendingJobsMetric", "Namespace": "Custom", }, "Stat": "Sum" "Period": 10 }, "ReturnData": false }, { "Label": "Get the running instance capacity (matching the period to that of the m1)", "Id": "m2", "MetricStat": { "Metric": { "MetricName": "GroupInService", "Namespace": "AWS/AutoScaling", "Dimensions": [ { "Name": "AutoScalingGroupName", "Value": "my-asg" } ] }, "Stat": "Average" "Period": 10 }, "ReturnData": false }, { "Label": "Calculate the pending job per capacity (note the use of the FILL expression)", "Id": "e1", "Expression": "m1 / FILL(m2,REPEAT)", "ReturnData": true } ] }, "TargetValue": 100 }

Consideraciones

Ten en cuenta lo siguiente cuando utilices el seguimiento de objetivos y las métricas de alta resolución.

  • Para asegurarte de que no faltan puntos de datos que puedan generar resultados de escalado automático no deseados, tu CloudWatch métrica debe publicarse con una resolución igual o superior a la del período que especifiques.

  • Defina el valor objetivo como el valor per-instance-per-minute métrico que desea mantener para su grupo de Auto Scaling. Establecer un valor objetivo adecuado es crucial si utiliza una métrica cuyo valor se pueda multiplicar en función del período de la métrica. Por ejemplo, cualquier métrica basada en recuentos, como el recuento de solicitudes o los trabajos pendientes, que utilice la estadística SUM tendrá un valor de métrica diferente en función del período elegido. Aun así, debes dar por sentado que estás fijando un objetivo con respecto a la media por minuto.

  • Si bien no hay tarifas adicionales por el uso de Amazon EC2 Auto Scaling, debe pagar los recursos, como las EC2 instancias, CloudWatch las métricas y las CloudWatch alarmas de Amazon. Las alarmas de alta resolución creadas en el ejemplo anterior tienen un precio diferente al de CloudWatch las alarmas estándar. Para obtener más información sobre CloudWatch los precios, consulta Amazon CloudWatch Pricing.

  • El seguimiento de Target requiere que las métricas representen el uso medio de tus EC2 instancias por instancia. Para lograrlo, puedes usar operaciones matemáticas métricas como parte de la configuración de tu política de seguimiento de objetivos. Divida su métrica por la capacidad de funcionamiento de su grupo de Auto Scaling. Asegúrese de definir el mismo período de métrica para cada una de las métricas que utilice para crear una sola serie temporal. Si estas métricas se publican en intervalos diferentes, utiliza la operación RELLENAR en la métrica con el intervalo más alto para rellenar los puntos de datos que faltan.