¿Cómo puedo obtener métricas de Amazon CloudWatch que indiquen el rendimiento de EBS de mi instancia de EC2 y, a continuación, configurar una alarma que me notifique cuando la instancia de EC2 alcance el límite de rendimiento?

3 minutos de lectura
0

¿Cómo puedo obtener métricas de Amazon CloudWatch que indiquen el rendimiento agregado de Amazon Elastic Block Store (Amazon EBS) de mi instancia de Amazon Elastic Compute Cloud (Amazon EC2)? Además, ¿cómo puedo configurar una alarma que me notifique cuando la instancia de EC2 alcance el límite de rendimiento?

Breve descripción

No existe una métrica nativa de Amazon EBS que realice un seguimiento del rendimiento de EBS de una instancia de Amazon EC2 basada en Xen en CloudWatch. Sin embargo, puede utilizar el script EC2EBSThroughput/ebs-stats.sh para medir el rendimiento total de EBS de su instancia de EC2.

El script recopila el total de bytes de lectura/escritura por segundo en todos los volúmenes adjuntos y, a continuación, envía el rendimiento como una métrica a Amazon CloudWatch. Puede ver esas métricas en la consola de Amazon CloudWatch y configurar una alarma que se active en función del umbral que especifique.

Nota: Las instancias EC2 basadas en AWS Nitro y creadas con la capacidad de fragmentación de instancias optimizada para Amazon EBS incluyen las métricas EBSIOBalance% y EBSByteBalance% de CloudWatch. Estas métricas están disponibles para algunos tamaños de instancia que alcanzan su máximo rendimiento durante 30 minutos al menos una vez cada 24 horas. Para obtener una lista completa de los tipos de instancias aplicables, consulte Tipos de instancias compatibles.

El script ebs-stats.sh es para instancias de EC2 basadas en Xen en CloudWatch. El script solo es compatible con las instancias de Amazon Linux, Red Hat Enterprise Linux y CentOS. Sin embargo, puede personalizar el script para otras distribuciones de Linux.

Nota: Si la instancia tiene un volumen de almacén de instancias, el script informa del rendimiento agregado, incluido el rendimiento del volumen del almacén de instancias. Esto significa que es posible que este script no obtenga una medición precisa del rendimiento de EBS.

Resolución

Nota: Si recibe errores al ejecutar los comandos de la interfaz de la línea de comandos de AWS (AWS CLI), no olvide usar la versión más reciente de AWS CLI.

1.    Para las distribuciones basadas en RHEL, instale la AWS CLI, si aún no lo ha hecho.

2.    Descargue el script ebs-stats.sh.

3.    Coloque el script en la instancia y, a continuación, hágalo ejecutable. Debe ejecutar el script como usuario raíz o sudo. De lo contrario, fallará.

$sudo chmod +x ebs-stats.sh

4.    Desde la CLI de AWS, defina la frecuencia de ejecución de ebs-stats.sh deseada ejecutando el siguiente comando en segundo plano:

$sudo nohup ./ebs-stats.sh example-sleep-interval &

**Nota:**Sustituya el intervalo de reposo del ejemplo por el número deseado de segundos entre cada punto de datos.

5.    Cree un rol de AWS Identity y Access Management (IAM).

6.    Adjunte la siguiente política al rol:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "cloudwatch:ListMetrics",
        "cloudwatch:GetMetricStatistics",
        "cloudwatch:PutMetricData",
        "autoscaling:DescribeAutoScalingInstances"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

7.    Adjunte la política de IAM a su instancia de EC2. Esto permite que el script envíe las métricas a Amazon CloudWatch.

8.    Desde la consola de CloudWatch, configure una alarma paraEBSThroughoutMB. Para obtener más información, consulte Crear una alarma de CloudWatch basada en un umbral estático o Uso de alarmas de Amazon CloudWatch.

No olvide elegir el período correcto en función del argumento que utilizó.


Información relacionada

Supervisión de sus instancias con CloudWatch

Enumere las métricas de CloudWatch disponibles para sus instancias

Instancias optimizadas para Amazon EBS

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años