Llegamos a ustedes gracias a:



Reportajes y análisis

Cómo AIOps mejora el monitoreo de aplicaciones

[19/06/2020] Los equipos de operación de TI utilizan muchas herramientas para monitorear, diagnosticar y resolver problemas de rendimiento del sistema y las aplicaciones. En una encuesta reciente realizada a 1300 profesionales de TI sobre el futuro del monitoreo y AIOps, el 42% informa que utiliza más de 10 herramientas de monitoreo, y el 19% usa más de 25 herramientas.

Esa es una gran cantidad de tecnología solo para proporcionar los datos necesarios para monitorear, alertar, investigar y resolver incidentes de aplicaciones.

Las herramientas de monitoreo no son de talla única, especialmente para organizaciones que ejecutan aplicaciones de misión crítica en entornos multicloud. A medida que las compañías invierten en aplicaciones móviles, microservicios, dataops y programas de ciencia de datos, se agregan nuevas herramientas de monitoreo para proporcionar capacidades de monitoreo específicas del dominio.

Las plataformas AIOps buscan simplificar este panorama de herramientas de monitoreo. AIOps ayuda a las organizaciones que requieren altos niveles de servicio de aplicaciones, a administrar mejor la complejidad de sus herramientas de monitoreo y flujos de trabajo operativos de TI. Como su nombre lo indica, AIOps ofrece capacidades de aprendizaje automático y automatización para el dominio de operaciones de TI. Estas tecnologías tienen como objetivo resolver incidentes más rápido, identificar tendencias operativas que impactan el rendimiento y simplificar los procedimientos necesarios para resolver problemas.

AIOps es una plataforma emergente. En la encuesta, el 42% de los encuestados nunca había oído hablar de AIOps, o pensaba que aplicar el aprendizaje automático a las operaciones no se hacía. Solo el 4% utiliza actualmente una herramienta AIOps en la producción. Aunque AIOps es una plataforma emergente, tiene un argumento de negocios sólido para que muchas organizaciones lo consideren.

AIOps es impulsada por la necesidad empresarial y la complejidad operativa

En la actualidad, cada vez más empresas dependen de las aplicaciones para atender a los clientes y ejecutar operaciones. Esto genera mayores requisitos y expectativas en cuanto a la fiabilidad, el rendimiento y la seguridad de las aplicaciones.

Además, alimenta la demanda de equipos de desarrollo de aplicaciones para construir nuevas aplicaciones y mejorarlas con mayor frecuencia. La responsabilidad laboral de mantener los niveles de servicio de las aplicaciones también se ha ampliado durante la última década.

Antes, las organizaciones contrataron al NOC (centro de operaciones de red) como la primera línea de defensa. Si alguna vez alguien entraba a un NOC, probablemente veía docenas de monitores de computadoras con luces de advertencia y visuales de tendencias para ayudar al personal a detectar los problemas, idealmente antes de que un usuario final experimentara uno.

Los líderes empresariales y de TI comenzaron a cambiar este modelo mediante la introducción de prácticas devops e ingenieros de confiabilidad de sitios. Devops cambia la cultura del departamento de TI estableciendo una responsabilidad colectiva para permitir despliegues frecuentes, y brindar un mejor soporte a las necesidades de los clientes y empleados. Las herramientas y prácticas como CI/CD (integración continua y entrega continua) e IaC (infraestructura como código) son parte de lo que hace posibles despliegues más frecuentes.

Pero las prácticas de DevOps también requieren una responsabilidad operativa compartida que garantice que las aplicaciones sean confiables, funcionen bien y sean seguras. Esto significa que más personas en la organización de TI necesitan acceso a todas las diferentes herramientas de monitoreo.

Muchas organizaciones de TI también contratan a SREs (ingenieros de confiabilidad de sitios) para conectar el desarrollo y las operaciones. Los SREs adoptan un enfoque de ingeniería de software para los temas de administración de sistemas. En otra encuesta dirigida a los SREs, indican que la respuesta a incidentes es una parte masiva de su trabajo: el 49% afirma responder al menos un incidente cada semana.

Un número creciente de organizaciones de TI utiliza la maduración de las prácticas de DevOps y la contratación de ingenieros de confiabilidad de sitios, para enfrentarse a desafíos operativos cada vez mayores. Pero solo esperar que tengan sentido las docenas de herramientas de monitoreo utilizadas es una receta para un pobre desempeño.

Capacidades y arquitectura técnica de la plataforma AIOps

¿Cómo puede AIOps mejorar el status quo? Las plataformas AIOps suelen tener las siguientes capacidades y componentes de arquitectura:

  • Una plataforma central de datos para agregar registros sin procesar y datos de diferentes herramientas de monitoreo
  • Integraciones listas para usar con los más comunes formatos de registro, herramientas de monitoreo, herramientas de gestión de servicios de TI, herramientas de desarrollo agile y otras plataformas de colaboración
  • Capacidades de aprendizaje automático para ayudar a identificar patrones en los datos agregados
  • Consolas, tableros y analítica para ayudar a las operaciones de TI a ver y gestionar múltiples sistemas desde una interfaz central
  • Capacidades de automatización que permiten que TI comunique el estado, dirija los problemas y responda de manera automática a problemas comunes.

Lo que diferencia a AIOps de otras plataformas operativas de TI es la capacidad de agregar datos fácilmente, aprovechar el aprendizaje automático para encontrar problemas y utilizar la automatización como herramienta para resolverlos. AIOps no reemplaza las herramientas de monitoreo existentes. Se integra con ellas para que más personas del departamento de TI tengan una mejor visibilidad de los problemas, sin la complejidad de tener que aprender y usar múltiples herramientas de monitoreo.

Del mismo modo, las plataformas AIOps no suelen sustituir a las actuales herramientas de gestión de servicios de TI, flujo de trabajo, agile y otras herramientas de comunicación. En cambio, son una plataforma central que interactúa con estas herramientas mientras se alerta y se resuelve un incidente.

El monitoreo de aplicaciones de misión crítica sin AIOps

Imagine que su aplicación de comercio electrónico experimenta un rendimiento lento cuando los usuarios intentan completar una compra. El primer indicador que envía alertas es la tasa de abandono del carrito de compras.

El líder de comercio electrónico abre rápidamente un ticket sobre el problema en la interfaz móvil de Cherwell, pero el equipo de TI ya ha sido alertado del problema. A medida que más usuarios intentan realizar compras, los servidores web subyacentes se cuelgan y las conexiones de la base de datos permanecen abiertas. Las alertas de DataDog informan sobre estos problemas, y Splunk reporta las excepciones de Java en los archivos de registro de la aplicación de comercio electrónico.

Ahora imagínese al NOC respondiendo a este problema. ¿Por dónde deberían comenzar, dada la cantidad de alertas que activadas al mismo tiempo? Los SREs llamados para ayudar también deben investigar las alertas de diferentes herramientas. Mientras tanto, el líder de comercio electrónico está molesto porque nadie respondió al ticket.

AIOps ayuda a TI a abordar los problemas más rápido y con menos estrés

Así es como las plataformas AIOps pueden abordar este problema de manera más rápida y efectiva.

Primero, AIOps ve que se activan múltiples alertas, incluyendo alertas de aplicaciones. Automáticamente alerta a los SREs, y cuando uno responde, actualiza de manera automática a Cherwell que el incidente ha sido respondido por un SRE. Nadie tuvo que actualizar manualmente ningún sistema para enviar estas comunicaciones.

En segundo lugar, las alertas de Cherwell, la plataforma de comercio electrónico, Splunk y DataDog están todas agregadas y secuenciadas en el tiempo. El SRE sabe de inmediato qué alerta se disparó, antes de que las otras se activaran. Eso es increíblemente útil, porque el SRE puede ver rápidamente que el servidor web colgado y las conexiones de la base de datos agrupadas, ocurrieron después de las excepciones de la aplicación Java.

Las capacidades de aprendizaje automático de la plataforma AIOps son bastante sofisticadas, por lo que, además de informar sobre las alertas, destaca otras condiciones operativas atípicas. En este caso, la aplicación de comercio electrónico tiene muchas conexiones lentas de salida a una sola dirección IP. No hay alertas o excepciones para este tema, pero su sincronización precede a cualquiera de las otras alertas.

Al SRE no le demora mucho más tiempo averiguar que se trata de una conexión a un servicio de terceros que valida la ciudad, el estado y el código postal del comprador. Claramente, este servicio está teniendo problemas de rendimiento que afectan a toda la aplicación.

Habiendo identificado la raíz del problema, el SRE agrega un defecto de alta gravedad al backlog de Jira del equipo de desarrollo de comercio electrónico, alertándolos sobre el problema. Un problema de alta gravedad alerta al equipo de desarrollo agile que interrumpa lo que está haciendo y lo aborde. Es una solución rápida para eludir el impacto del servicio, y es fácil probar e implementar el cambio a través de un pipeline CI/CD de Jenkins.

La plataforma AIOps rastrea este defecto, la implementación y la caída de todas las alertas, y mantiene al líder de comercio electrónico actualizado sobre el progreso. A pesar de que el SRE está monitoreando la situación, la plataforma AIOps cierra el problema automáticamente cuando todos los monitores vuelven a la normalidad.

Implementar este escenario no es trivial, y tampoco se trata de ciencia ficción con las plataformas AIOps.