La monitorización de infraestructura es una actividad crítica que nos permite evaluar, analizar, gestionar y reportar tanto la disponibilidad como el rendimiento de servidores y aplicaciones. Este proceso sistemático nos permite tanto obtener una imagen de la salud de nuestra infraestructura como identificar y analizar tendencias a corto y largo plazo.
Otras ventajas de la monitorización son el disponer de datos que nos permitan evaluar la capacidad de nuestra infraestructura, planificar la expansión de recursos o realizar auditorías.
Hay dos tipos de monitorización de infraestructura: reactivo y proactivo.
- La monitorización reactiva nos alerta de fallos y errores. Aunque esto implica caídas en el servicio, la monitorización nos permite actuar rápidamente para reducirlas al mínimo.
- La monitorización proactiva, además de vigilar el rendimiento del sistema, comprueba si existen anomalías y condiciones que conduzcan a errores, para poder prevenirlos.
Para poder monitorizar nuestra infraestructura de forma fiable necesitamos contar con herramientas especializadas que cumplan con cuatro funciones básicas:
- Recopilar datos de forma fiable.
- Analizar esos datos en tiempo real.
- Un sistema de alertas en caso de desvío sobre ciertos parámetros.
- Ejecutar acciones automatizadas basadas en criterios definidos por el responsable de la infraestructura.
Métricas de monitorización
Es importante definir bien qué vamos a medir antes de configurar un sistema de monitorización. Aunque podemos medir y recopilar datos sobre una gran cantidad de parámetros, es recomendable identificar cuáles son las métricas clave para poder establecer un sistema de alertas y de respuesta automática efectivo.
Podemos clasificar las métricas de monitorización en tres grandes grupos:
- Métricas de servidor, que sirven para analizar el rendimiento de máquinas individuales, físicas o virtuales. Por ejemplo, midiendo el uso de CPU, memoria, espacio en disco y volumen de procesos.
- Métricas de aplicación, proceso o servicio, que pueden ser tasas de error, fallos y reseteos, latencia y uso de recursos.
- Métricas de red, que nos permiten evaluar la disponibilidad del servicio y la conexión entre servidores. Podemos evaluar el rendimiento monitorizando la conectividad, pérdida de paquetes, latencia y uso del ancho de banda disponible.
Hay otras muchas métricas que podemos utilizar, por ejemplo, para controlar el rendimiento de grupos de servidores, físicos o virtuales, o servicios externos de proveedores que puedan afectar a tu propia infraestructura.
Las métricas más importantes para monitorizar pueden ser:
- Tráfico de red: para identificar posibles congestiones y variaciones de demanda. También es útil como contexto para explicar otras métricas. Por ejemplo, suele existir una correlación entre entre volumen de tráfico y latencia.
- Latencia: para poder solucionar posibles problemas de rendimiento y de congestión de red, así como cuellos de botella que estén impidiendo un rendimiento adecuado.
- Errores: la frecuencia y el tipo de errores permiten evaluar la salud de componentes, aplicaciones y servicios. Es interesante poder discriminar por tipo de error para establecer un sistema de alertas granular que nos avise solo de los errores importantes.
- Saturación: este tipo de métricas miden el uso de recursos. Estas métricas nos permiten detectar problemas de capacidad, pero también nos dan pistas sobre posibles acciones de optimización y sobre incidencias que no hayan sido detectadas en otras métricas, especialmente si identificamos algún tipo de correlación.
Mejores prácticas y consejos para una monitorización de infraestructura IT efectiva
- Aunque es posible crear desde cero tu propia solución de monitorización, lo más recomendable es usar un servicio externo especializado. Esto supone un ahorro de tiempo y costes considerable, tanto en la creación del servicio como en su mantenimiento, y probablemente disponga de más funcionalidades y una mejor experiencia de uso que una solución propia.
- La solución de monitorización debe de ser lo suficientemente flexible para adaptarse a tus necesidades concretas, y debe permitir un grado de personalización adecuado para que tanto los datos como la gestión de alertas sea útil y efectiva.
- Usa una única herramienta. Mucho más sencillo de gestionar, y las métricas y los datos unificados te permiten tener fácilmente una visión completa del rendimiento de tus sistemas.
- Crea un sistema granular de alertas que te permita escalar según la gravedad de la incidencia. Esto agiliza y mejora la respuesta de tus equipos a problemas o errores. También te permitirá evitar una saturación de alertas que haga que pierdan su efectividad.
- Prioriza los sistemas críticos, y diseña para esta infraestructura un sistema de monitorización y alertas más sensible. En un mundo ideal podrías monitorizar todas las métricas de toda tu infraestructura, pero lo más seguro es que tengas que priorizar basándote en los recursos disponibles, la complejidad de tu infraestructura, la prioridad de cada elemento y la utilidad de cada métrica.
- Testea y prueba regularmente tu sistema de monitorización para asegurarte de que tanto la recogida de datos como las reglas de alerta y escalada funcionan correctamente.
- Documenta tu configuración de monitorización para que otras personas del equipo puedan saber tu razonamiento a la hora de establecer los procesos de monitorización. Esto es muy útil para poder revisar y optimizar periódicamente tu estrategia de monitorización.
- Pide ayuda a tu proveedor de soluciones de monitorización cuando la necesites. Tu proveedor tiene la experiencia y el conocimiento necesario para ayudarte a configurar un sistema de monitorización de infraestructura adaptado a tus necesidades.
- Escoge una solución de monitorización que te pueda abarcar toda tu infraestructura. Con una sola solución deberías ser capaz de monitorizar instancias de servidores virtuales en una plataforma cloud o IaaS, servidores físicos en un data center, sensores y cualquier otro dispositivo que disponga de una conexión de red. Esto te permitirá unificar tu sistema de monitorización y alertas en una sola herramienta.
- Configura un sistema de respuesta automática ante incidencias. El sistema de monitorización, además de un sistema flexible y granular de alertas, debería poder permitir la ejecución de comandos y código de forma automática en caso de que se cumplan una serie de condiciones definidas. Por ejemplo, en caso de superar los límites establecidos de control, realizar un troubleshooting de servicios y conexiones mediante scripting de forma automatizada y desatendida.
Monitorizar tu infraestructura es una acción clave para poder anticiparte a incidencias que impacten la disponibilidad de tus servicios. También para poder evaluar y analizar la capacidad de tu infraestructura y detectar vectores de optimización y mejora.
Por eso en Adam hemos decidido ofrecer a nuestros clientes una completa herramienta de monitorización de tu infraestructura IT que les permitirá controlar su infraestructura en tiempo real con un sistema flexible y personalizable de alertas y ejecución de comandos.
Este artículo ha sido escrito por
Emilio Moreno
Arquitecto Soluciones Cloud - IaaS