Monitorizando un servidor Windows 2012

Otra cosa no sé pero si queremos monitorizar un servidor windows por herramientas no será. En comparación revisar un linux puede parecer una tarea sencilla porque el sistema es tan simple (todo son procesos y ficheros), que con unos comandos y una revisión del log nos hacemos una idea rápido. En el caso de windows, el sistema dispone de una monitorización gráfica de serie con todo lujo de detalles, cosa que para linux te obligaría a meter cosas tipo RRDtool, mrtg, etc... aunque obviamente, de nada sirve tanto gráfico si no sabes interpretarlo o no sabes sacar conclusiones de tanta información.

En este pos vamos a revisar algunos de las herramientas que trae Windows (son las de siempre) y a dar alguna pauta para la toma de decisiones. En cualquier caso, sea el sistema que sea, un sysadmin tiene que conocer el estado normal de su servidor, la carga que suele soportar, saber los procesos que tienen que estar en marcha para que de un rápido vistazo pueda saber si algo va mal.

El Adminsitrador de tareas
El administrador de tareas de Windows 2012

Antes que nada, al menos debieras saberte cuatro formas para sacar el TaskMgr en un Windows:

  1. Ctrl + Mayus + Esc: el shorcut todo pro
  2. Ctrl + Alt + Supr + seleccionar Administrador de tareas: un poco más largo pero muy usado
  3. Botón derecho sobre la barra de tareas + seleccionar Administrador de tareas: raro ver a alguien usándolo
  4. Windows + escribir taskmgr: pulsar inicio/tecla windows, nos sale el interfaz de los horrores y escribimos. Eso nos busca comandos u archivos.
El administrador de tareas es el monitor/gestor de procesos de Windows. Si pulsamos en la vista detallada podremos ver TODOS los procesos en ejecución con los detalles que queramos (pulsando en cualquier cabecera de columna botón derecho del ratón...) y con la comodidad de poder agruparlos por tipo, con lo que podemos distinguir:
  • Aplicaciones: los programas que vemos en priemr plano.
  • Procesos de Windows: son aquellos procesos lanzados por el sistema operativo
  • Procesos en segundo plano: son otros procesos en ejecución instalados a parte de windows
Como siempre desde aquí podemos ejecutar programas (qué típico cuando petaba explorer.exe relanzarlo desde aquí) y matar procesos. Se supone que además podemos matar árboles de procesos, es decir, si un proceso tiene otros procesos hijos se carga todos. Aunque en fin, el éxito de ese tipo de comandos no siempre está garantizado. Y obviamente, ojo al cargarse procesos de windows.

Por otro lado, el Task Manager también nos ofrece algo de información sobre el uso de CPU, memoria, red, etc... aunque si queremos más detalle disponemos de:

El monitor de recursos
El monitor de recursos en Windows 2012

Podemos acceder a este monitor desde la pestaña rendimiento del TaskManager o desde las herramientas administrativas o tecleando su nombre. Este monitor nos ofrece más información aún de procesador, memoria, disco y red.

Si el rendimiento de un servidor está cayendo, el primer sospechoso que debemos monitorizar es la memoria y su uso. Como en los sistemas ĺinux, si la ram está pillada y está tirando del disco duro debemos ir pensando en meter más RAM. Y por lo general siempre debe haber un 5% de memoria totalmente libre. El siguiente sospechoso en problemas de rendimiento debe ser la CPU. Si a la CPU le empieza a costar atender procesos y estos se empiezan a amontonar en una cola (>10%) hay que ir pensando en meter más CPU. O si los accesos al disco y a la red son bajos respecto al uso de la CPU, esto también puede indicar que la CPU no da de si y puede necesitarse o más cantidad (si se puede meter) o mejor CPU. En general siempre que veamos algún gráfico disparado, o valores descompensados de CPU, RAM y E/S sabremos que pasa algo. O por contra, puede que un gráfico de red bajo nos revele problemas en la configuración de red (un interfaz de red que no aprovecha toda su capacidad por ejemplo, por una mala negociación con el switch)

El monitor de rendimiento
El monitor de rendimiento en Windows 2012

Hombre, las herramientas de monitorización en caliente pueden estar bien, el problema es que obligan al sysadmin a estar delante de la pantalla observando con su mirada experta. ¿Pero qué pasa si queremos hacer una monitorización más larga, o a horas intempestivas y además queremos un informe? Desde las herramientas administrativas disponemos del monitor de rendimiento, que nos permite hacer seguimiento muy detallado de los indicadores del sistema y de eventos y nos genera informes estupendos. Como siempre hay que tener ojo ya que si metemos muchos parámetros a monitorizar esto acaba afectando propio rendimiento del sistema y estariamos haciendo el canelo. Algo útil en este monitor es que también podemos crear alertas según los parámetros que le demos.

Aparte de estos monitores también disponemos del Monitor de confiabilidad, que se encarga de registrar los cambios en el sistema y nos da una relación entre los cambios de configuración y los cambios en la estabilidad. Y por último, cómo no, tenemos los logs de Windows, al que siguen sin cambiar de iconos. Nos referimos naturalmente al:

Visor de eventos
El visor de Eventos de toda la vida

Sí amigos, la vida sigue igual. Pero es que es lo que hay. Así como en unix la carpeta /var/log es vital para saber qué narices pasa con el sistema o con los servicios, en Windows se unifica todo en el visor de eventos. La información que se genera es ingente pero se pueden crear filtros que nos den la información que más nos interese, por ejemplo un filtro que muestre todos los errores y mensajes críticos de los últimos siete días. Lo suyo es revisar el visor de eventos para ver si hay errores de forma regular.

by Pello Altadill 08/30/2013 00:55:09 - 664 hits

Windows 2012 Server

Con eso de escribir acerca de linux y de hacer bromas sobre lo horrible que es windows es muy común que de forma inmediata te encasillen como talibán linuxero. Más aún si eres fiel a Debian y despotricas de Ubuntu por estar hecho para ser fácil. Pero lo cierto es que ante la típica pregunta de un comercial de ¿Qué sistema es mejor? o ¿qué lenguaje es mejor? para mí la re...

by Pello Altadill 08/28/2013 23:22:53 - 529 hits

More »

socket.io ...and websockets for all.

Otra de las novedades que trae HTML5 es la de los famosos websockets. El protocolo HTTP funciona de tal manera que no existe una conexión fija entre el cliente y el servidor; el navegador y el servidor se están continuamente lanzando piedras con mensajes, y a veces para simular que la conexión es permanente (una sesión) se acompaña de alguna marca como una cookie. Los websockets nos dan la posiblidad de establecer una conexión fija entre cliente y servidor como la que hay en un IRC o en los ...

by Pello Altadill 08/24/2013 23:11:46 - 535 hits

More »

Alojamiento gratuito de Node.js en openshift

A la hora de desarrollar aplicaciones web tenemos muchos lenguajes donde elegir. Todos ellos funcionarán perfectamente en nuestro equipo local pero claro, ¿qué pasa si queremos publicar nuestra aplicación? ¿Y si además queremos hacerlo gratis? Una de las cosas que más atractivas de lenguajes como php es que lo tienes disponible para todos los sistemas, para todos los sabores de linux y lo que es mejor en infinidad de alojamientos gratuitos, con mysql incluido. Además php funciona de manera muy s...

by Pello Altadill 08/24/2013 15:27:46 - 1320 hits

More »

Ejemplo simple de ContentProvider Android

Un ContentProvider de Android es una especie de BD que una aplicación abre al resto de aplicaciones. Por ejemplo, si hacemos una aplicación con una BD SQLite está solamente estará disponible para la propia aplicación pero la podriamos abrir/ofrecer al resto del sistema a través de un content provider. Pero ojo¿solamente bases de datos? No, los content providers pretenden como su nombre indica proveer contenido y lo mismo puede ser una BD que unos ficheros, que unos datos arbitrarios. Lo peculiar ...

by Pello Altadill 08/23/2013 22:14:09 - 534 hits

More »

ListView personalizado en Android

... que acaba siendo un lector RSS La idea de este proyecto era simplemente probar un poco la personalización de los elementos de un ListView. Pero como eso no es bastante y uno se lía y luego se viene arriba pues lo que he hecho es el típico lector de RSS que carga el contenido del ListView con las últimas noticias de una web. Y la petición y el parseo se hace a la manera de Android, con un AsyncTask. Esto es un poco como cuando haces una ensalada, que dices igual le añado esto, y esto ot...

by Pello Altadill 08/22/2013 21:19:24 - 764 hits

More »

Enviar emails desde php... y que funcione

Ya que acabo de hablar de mandar correos utilizando Spring voy a retomar el tema del envío de correos desde php. Recordaba que en su día había posteado algo al respecto, y debo pedir disculpas si en su día alguien confió de ese post y no le funcionó. Lo que puse ahí mejoraba ligeramente lo que se solía explicar habitualmente pero en muchos escenarios y en años posteriores eso es raro que funcione. De todas formas ese p...

by Pello Altadill 08/22/2013 11:47:19 - 378 hits

More »

Enviando emails con Spring

Para convertirme en un auténtico frontender me he agenciado unas super gafas de pasta de un grosor lo suficientemente desmesurado como para hacerme respetar en la tribu del asincronismo y de los programas de cuatro líneas. Nótese el tintado rojizo de las lentes que me proporcionan una experiencia mucho más responsiva con el entorno que me rodea. Por si no lo sabías, los cristales negros están deprecados. ...

by Pello Altadill 08/22/2013 00:03:03 - 483 hits

More »