Juan Manuel Irigaray 1 de diciembre de 2014 a las 19.11
   Imprimir artículo
elWebmaster.com

Crear alarmas con CloudWatch


CloudWatchCloudWatch es una herramienta para supervisar los recursos en la nube de Amazon Web Services (AWS), de manera que puedes incluir y hacer un seguimiento de las métricas de muchos de tus recursos de AWS.

Para el caso de Amazon EC2, permite hacer seguimiento de 10 m√©tricas preseleccionadas que se controlan con una frecuencia de cinco minutos, entre las que se incluyen el uso de CPU, bytes de lecturas de disco, operaciones de lectura de disco, bytes de escrituras de disco, operaciones de escritura de disco, tr√°fico de entrada y salida de la red (bytes), comprobaciones de estado fallidas, comprobaciones de estado fallidas en instancias y comprobaciones de estado fallidas en sistema. Estas m√©tricas est√°n dise√Īadas para aportar la informaci√≥n m√°s relevante y, de este modo, ayudarte a que tus entornos funcionen sin problemas. Adicionalmente, CloudWatch ofrece siete m√©tricas preseleccionadas que supervisan con una frecuencia mayor (minuto a minuto), con un cargo adicional.

 

Con CloudWatch puedes programar alarmas basadas en umbrales programados en cualquiera de tus métricas, permitiendo el envío de notificaciones sobre el estado o bien programar una acción para que se lleve a cabo automáticamente. Por ejemplo, puedes establecer que una alarma te notifique si una de las instancias está experimentando una carga alta en la CPU. En el gráfico de ejemplo que verás a continuación, se está utilizando CloudWatch para saber la media de uso de la CPU en una instancia con intervalos de 1 hora y 5 minutos:

 

Se puede notar en el gráfico que a las 19:10, el uso de la CPU está a 0% y después aumenta con distintas variaciones durante los siguientes 35 minutos, momento a partir del cual llega a utilizarse al 100% durante 10 minutos. Sin ninguna supervisión esto podría ser un serio problema, ya que la CPU del sistema estaría completamente saturada y el rendimiento sería sin duda muy lento. Si este fuera un servidor web, los usuarios experimentarían conexiones caídas, desconexiones, o tiempos de respuesta muy lentas.

En ese ejemplo, no importa saber qué es lo que está causando los picos en el uso de CPU, lo que importa es cómo te enfrentarás a esta subida. Si esto ocurre en mitad de la noche, podría caer o  interrumpirse la página web de tu empresa. Muchas operaciones se realizan sin pausa las 24 horas del día, los 7 días de la semana y, por ello, debe haber procesos programados para poder responder a eventos de este tipo. Con CloudWatch, AWS simplifica el seguimiento y la programación de alarmas basadas en umbrales de recursos. Una forma de hacerlo utilizando el ejemplo de uso de CPU anterior es esta:

 

  1. Abre https://console.aws.amazon.com/cloudwatch/
  2. En el Dashboard pincha la opci√≥n ‘Metrics’ y selecciona la instancia y m√©trica en cuesti√≥n. En la derecha de la pantalla deber√≠as ver un bot√≥n con el texto ¬†‘Create Alarm’. (Ver imagen abajo)
  3. Una vez que hagas click en ‘Create Alarm’, la p√°gina te permitir√° programar un ‘Alarm Threshold’ basado en los par√°metro que utilices. Llamaremos a nuestro threshold o umbral de alto CPU, ‘High CPU’, y debemos a√Īadir una descripci√≥n: ‘Alarm when CPU is 85% for 10 minutes or more’.
  4. Despu√©s, tenemos que programar los par√°metros para activar la alarma. Elegimos ‘Whenever CPU Utilization is 85% for 2 consecutive periods’ (recuerda que los periodos son 5 minutos cada uno). Esto significa que despu√©s de 10 minutos en estado de alarma nuestra acci√≥n se activar√°.
  5. Para las acciones seleccionamos ‘Whenever this alarm: State is ALARM’, en ‘send notification to’ seleccionamos ‘our SNS Topic MyHighCPU’ y en ‘send’ escribimos el correo. Esto har√° que la alerta env√≠e un correo a una direcci√≥n de correo o lista de ¬†distribuci√≥n. (Ver imagen abajo)



  1. Una vez que hagas click en ‘Create Alarm’, la p√°gina te permitir√° programar un ‘Alarm Threshold’ basado en los par√°metro que utilices. Llamaremos a nuestro threshold o umbral de alto CPU, ‘High CPU’, y debemos a√Īadir una descripci√≥n: ‘Alarm when CPU is 85% for 10 minutes or more’.
  2. Despu√©s, tenemos que programar los par√°metros para activar la alarma. Elegimos ‘Whenever CPU Utilization is 85% for 2 consecutive periods’ (recuerda que los periodos son 5 minutos cada uno). Esto significa que despu√©s de 10 minutos en estado de alarma nuestra acci√≥n se activar√°.
  3. Para las acciones seleccionamos ‘Whenever this alarm: State is ALARM’, en ‘send notification to’ seleccionamos ‘our SNS Topic MyHighCPU’ y en ‘send’ escribimos el correo. Esto har√° que la alerta env√≠e un correo a una direcci√≥n de correo o lista de ¬†distribuci√≥n. (Ver imagen abajo)


6. Por √ļltimo, pinchamos en ‘Create Alarm’, y nos aparecer√° la pantalla siguiente:



  1. Finalmente, tienes que mirar en la direcci√≥n de correo que has puesto y confirmar la suscripci√≥n a la notificaci√≥n SNS. Deber√≠as ver un mensaje como el siguiente: ‘You have chosen to subscribe to the topic: arn:aws:sns:us-west-1:xxxxxxxxxxxxx:MyHighCPU. ¬†To confirm this subscription, click or visit the link below (If this was in error no action is necessary). Confirm subscription’, debes hacer click en ‘Confirm subscription’.

 

En general, el proceso de creación de un par de alarmas es bastante sencillo, pero puede ser más complicado cuando se incorpora lógica más compleja. Por ejemplo, podrías tener un par de instancias EC2 en un AutoScaling Group detrás de un Elastic Load Balancer, y si la CPU sube más del 85% durante 10 minutos podrías hacer que el AutoScaling Group actue inmediatamente para sincronizar instancias adicionales de EC2 que se encarguen del incremento de la carga. Cuando el presunto tráfico en la página que estaba causando el aumento de carga en la CPU, baje, podrás utilizar una alerta para que las instancias escalen de vuelta a su posición original y, de este modo, ya no estarás pagando por ellas. Con la potencia de CloudWatch, gestionar los sistemas AWS puede convertirse en algo completamente automático, y puedes reaccionar inmediatamente a cualquier problema o condición que cambie.

 

 


Enviar a Del.icio.us Enviar a Meneame Enviar a Digg Enviar a Fresqui Enviar a Enchilame

Deja tu opinión

© 2007 - 2008 elWebmaster.com | Powered by Wordpress | Diseño CSS y XHTML válido. | Algunos íconos basados en FamFamFam Mini
Acceder