101 COSAS QUE PUEDES HACER CON CLOUD OS – Cosa 83

COSA #83: USO DE LOS SERVICIOS DE GESTION EN MICROSOFT AZURE

 

Hola amigos, hoy les voy a mostrar cómo los Servicios de Administración o Management Services que nos ofrece Microsoft Azure. Esencialmente lo que se puede obtener con esta característica es una serie de alertas vía e-mail acerca del estado de los servicios que tenemos en Azure.

En otras palabras, si por ejemplo quiero recibir una alerta cuando el uso de CPU de una de mis máquinas esté por encima del 90% durante 5 minutos puedo hacerlo a través de este servicio. Otro tipo de alertas que puedo recibir están relacionadas con el uso de almacenamiento de una BD SQL Azure o acerca de eventos que sucedan con mi cuenta de almacenamiento de Azure –que es donde están todos mis objetos-

¿Cómo lo hago? Es muy simple, veamos:

Debo ingresar a MANAGEMENT SERVICES (SERVICIOS DE ADMINISTRACION en Español)

Azure MGMT Services-01

Debo adicionar una regla usando el botón ADD RULE image

Ahora, voy a definir una regla para que me avise en caso de que la CPU de una máquina Linux CentOS llegue al 90%:

Azure MGMT Services-02

Observen qué tipo de servicios puedo monitorear: CLOUD SERVICE, MOBILE SERVICE, SQL DATABASES, STORAGE, VIRTUAL MACHINE y WEBSITE.

Azure MGMT Services-03

En nuestro ejercicio seleccioné VIRTUAL MACHINE. Presiono siguiente image

Estas son las variables que puedo monitorear:

Azure MGMT Services-04

Para este ejercicio voy a seleccionar CPU Percentage y voy a establecer un umbral del 90% durante 10 minutos seguidos. De igual manera debo escribir la cuenta de correo a donde me va a llegar la alarma, que bien puede ser la cuenta de correo del administrador del servicio –es decir la cuenta de acceso a Azure-, una cuenta diferente o ambas. En este ejemplo usé la opción de recibir correo a una cuenta distinta a la cual con la que ingreso a Azure:

Azure MGMT Services-05

Presiono image  y ya estoy listo.

Como para ver el efecto voy a simular una alta carga de CPU en mi máquina. Para simular la carga en Linux existen muchas maneras, como por ejemplo usar una herramienta denominada stress, y hay muchas otras maneras… en mi caso voy a usar una secuencia de comandos muy simple en una sola línea: while true; do true; done ( ¡Por favor no usen esta secuencia en una máquina Linux de producción! ). Dejo que transcurran al menos 10 minutos y me debe llegar una alarma por correo.

La alarma que me llegó es la siguiente:

Azure MGMT Services-07

Tan pronto el inconveniente se solucione llega una alarma como:

Azure MGMT Services-08

Como lo han visto hasta ahora, es un procedimiento muy sencillo.

Bueno, ahora vamos a simular la misma situación con una máquina Windows. Al igual que en Linux, en Windows existen varias maneras de simular carga de CPU. Por ejemplo escribir un número de 19 cifras en la calculadora científica (calc.exe) e intentar obtener el factorial (n!) de dicho número.

Otra manera de hacerlo es a través de Powershell haciendo un loop casi que infinito (¡Más de 2 billones de veces!):

foreach ($loopnumber in 1..2147483647) {$result=1;foreach ($number in 1..2147483647) {$result = $result * $number};$result}

Esto fue sólo un ejemplo, pero en realidad hay muchas maneras de lograrlo.

En mi caso, voy a usar una herramienta denominada CPUSTRES.EXE, la cual se puede descargar Aquí. Una vez la haya descargado, puedo ejecutarla y generar carga en la máquina. Para que se genere carga podemos configurar la herramienta tal como se ve en la siguiente imagen. Es importante hacer notar que tan pronto se cambien los parámetros el uso de CPU se dispara:

Azure MGMT Services-11

Y en efecto, observen cómo se ve el comportamiento de la CPU en el Task Manager:

Azure MGMT Services-10

Si la alarma está configurada, llegarán mensajes de correo similares a los que ya les mostré. Es decir, un mensaje cuando se genere la alarma y otro cuando se solucione.

De igual manera y como lo mencioné anteriomente, también puedo tener alarmas acerca del comportamiento del storage (almacenamiento) en donde almaceno mis objetos de Azure.

Para poder recibir alarmas del storage primero hay que activar el monitoreo de la siguiente manera: (Voy a poner las imágenes y en donde haya lugar a una explicación lo haré)

Azure MGMT Services-12

Se selecciona la cuenta de Storage a la que se le habilitar el monitoreo.

Azure MGMT Services-14

Se hace clic en Monitor, y como se observa no está habilitado:

Azure MGMT Services-15

Azure MGMT Services-16

Se habilita para los objetos que se requiera, las posibilidades son BLOBS, TABLES y QUEUES:

Azure MGMT Services-17

Se presiona el botón SAVE para guardar los cambios. Esperamos a que se apliquen:

Azure MGMT Services-19

Ahora ya estamos listos para definir una alerta, tal como lo hicimos para la máquina Linux y Windows. Es decir, se selecciona Management Services y Add Rule:

Azure MGMT Services-20

Se asigna un nombre a la alarma (Storage Alert), una descripción (Alarma de Storage), Tipo de Servicio (Storage), el Nombre del Servicio es el del Storage al que se le activó el monitoreo (portalvhds6l8fx0f8t0h17) y por último el tipo de Servicio o Storage Service que puede ser del tipo Blob, Table o Queue.

Una vez se defina el tipo de servicio, se puede hacer un monitoreo de diferentes variables, como se ve en la siguiente gráfica:

Azure MGMT Services-22

 

El resto de la definición de la alarma consiste en decidir a qué dirección de correo le deberá llegar la misma.

No olviden que todos los objetos que puedo monitorear son los siguientes: CLOUD SERVICES, MOBILE SERVICES, SQL DATABASES, STORAGE, VIRTUAL MACHINE y WEBSITE

Bueno, aquí les dejo esta información y espero les haya gustado.