Disponibilidad y Rendimiento de Sistemas de Información
La mayoría de las empresas enfocan sus esfuerzos en establecer infraestructuras redundantes y planes de contingencia para garantizar la continuidad del negocio, pero prescinden de asignar la importancia necesaria a la disponibilidad y rendimiento de los sistemas de información.
Es importante establecer una estrategia basado en un modelo a nivel empresarial para describir la madurez del enfoque de la empresa en la disponibilidad y el rendimiento de los sistemas de información.
Las funciones principales del modelo de disponibilidad y rendimiento son:
Modelo de madurez de disponibilidad de los sistemas de información del negocio
Cada empresa que utiliza tecnología tiene dudas sobre la disponibilidad y el rendimiento de sus sistemas de información. Dependiendo de su madurez tecnológica esta ubicados en un punto del siguiente modelo de madurez:
Nivel 1: Esperanza y Orar
Muchas empresas crean aplicaciones de negocios de manera iterativa, comenzando con una prueba de concepto y luego usando talento creativo interno y externo para construir el concepto en un prototipo funcional. Que luego se extiende al producto.
He visto sistemas construidos de esta manera que ofrecen ideas innovadoras muy potentes. El desafío es que a menudo se diseñan sin ninguna consideración de cómo serían operados, siendo soportados por infraestructuras locales o basadas en la nube construidas desde cero con bases de código multiusuario, que no tienen integración de monitoreo, los resultados son los esperados, una experiencia de aprendizaje difícil para todos los involucrados.
Básicamente aquí es donde no existe un enfoque sistemático específico para la disponibilidad, se tiene la esperanza que nada se rompa y rezan para que, si se rompe, nadie se dé cuenta antes de resolver el problema.
Nivel 2: Latido del Corazón
Las empresas que no planificaron una forma de supervisar la disponibilidad o el rendimiento de sus sistemas de información, a menudo agregan mecanismo de detección una vez que se identifican los problemas, ya que parecen una forma inmediata y de bajo costo de resolver sus problemas.
Implementan la estrategia de construir scripts para hacer ping a servidores específicos y canalizar la salida en archivos de registro, los datos se pueden presentar en tableros y proporcionan una sensación de logro.
He visto que las empresas llegan a asumir la responsabilidad de brindar asistencia para presionar F5 cada 30 segundos en las instancias de sus servidores para confirmar que todavía están funcionando. Y al usar recursos internos y externos, pueden hacer esto las 24 horas del día, los 7 días de la semana, con requisitos de presupuesto importantes.
Esto funciona hasta el punto en que no funciona. Y es entonces cuando la empresa se da cuenta de que solo porque los servidores tienen pulso y los muestran una página de inicio de sesión, esto no es indicativo de disponibilidad o rendimiento para sus usuarios. Los problemas persisten, y no importa cuántos servidores haga ping o páginas web que actualice, un cliente con la cara colorada en el teléfono para quejarse sobre su incapacidad para realizar el servicio que está pagando.
Nivel 3: APM
Application Performance Monitoring (APM) ha sido la respuesta aceptada dentro de TI durante décadas. La idea es simple, puedes monitorear los parámetros clave de la tecnología para asegurarte de que todo funciona como se espera, y si algo funciona más lento de lo esperado o no se ejecuta en absoluto, recibirás una alerta.
Pero los sistemas individuales ya no son el problema en los negocios. Con redundancia y conmutación por error, el problema no es a menudo uno de los recursos de un sistema individual que falla. Los problemas ahora son mucho más complejos. Los sistemas APM lo alertarán de cada matiz y puede ser increíblemente difícil discernir alertas críticas del mar de falsos positivos. Y cuando una serie de eventos críticos lleva a cabo un proceso comercial, puede ser tan difícil como con las alertas de latidos para identificar y remediar la causa raíz.
Muchos clientes de soluciones APM encuentran que necesitan más conocimiento sobre los elementos de su entorno proporcionados por su solución de proveedores de APM, a pesar de los coloridos tics en la lista de componentes de soporte en la hoja de datos.
APM supervisa la tecnología a un nivel más profundo, yendo más allá de los latidos del corazón para ver el tiempo que tardan los procesos en completarse y la cantidad de recursos que consumen estos procesos. Si bien esto puede proporcionar algunos indicadores de disponibilidad y rendimiento, simplemente no es suficiente para proporcionar a los equipos que ejecutan sistemas el conocimiento que necesitan para mantenerse disponibles y el rendimiento en todos los escenarios.
Nivel 4: APM con Deep Scripting
Los clientes de las soluciones de APM comienzan el camino de agregar código a sus aplicaciones para comenzar a proporcionar sus soluciones de APM con los datos que necesitan para poder comprender todas las alertas disponibles. Antes de que lo sepan, su equipo de operaciones está gestionando millones de líneas de código. Este código debe mantenerse para respaldar todos los cambios en la plataforma, la infraestructura y las aplicaciones que se implementan a medida que la empresa evoluciona. Los equipos que administran este código siempre están luchando para mantenerse al día, y con los cambios en el personal a lo largo de los años, esto se convierte en un costoso factor limitante en su capacidad para mejorar su rendimiento.
Las empresas comienzan a construir código adicional para "reforzar" su monitoreo de nivel APM. A menudo, las empresas de APM utilizan un "enfoque de tic-tac" para decir que admiten todo tipo de plataformas, infraestructuras y aplicaciones, y solo una vez que los clientes se dan cuenta de que están enganchados para escribir grandes cantidades de código adicional incluso acercarse a la solución que a través de ellos habían comprado. Estos scripts se basan en expertos que deben tener un conocimiento profundo de los usos que se le da a la tecnología. Con el tiempo, las empresas terminan manteniendo millones de líneas de código en estos scripts, que deben mantenerse a medida que evolucionan los sistemas. La complejidad del scripting APM conduce a la fatiga a medida que los expertos se sienten abrumados con el tiempo. La mayoría de las empresas que han seguido este camino encuentran que el trabajo no tiene fin,
Nivel 5: seguimiento de transacciones
Si bien el rastreo de transacciones como tecnología no solo es utilizado por quienes monitorean aplicaciones comerciales, proporciona un gran paso para mejorar la comprensión de la experiencia que tiene un cliente cuando usa sus aplicaciones.
Transaction Tracking permite ver una transacción comercial en cada paso que atraviesa. Por ejemplo, puede seguir una transacción desde el momento en que un usuario la inicia hasta durante todo el proceso se completa la transacción.
Una sola transacción puede moverse a través de cientos de sistemas, pero al comprender cómo fluye, puede ver los indicadores de problemas mucho antes que el usuario.
Todos los datos que están siendo capturados por los sistemas de tipo APM ahora se pueden considerar en contexto. Con los datos reales de la transacción que se evalúa.
La diferencia entre esto y APM es profunda. Los equipos de Operaciones ahora pueden monitorear el negocio tal como lo prevén los propietarios de la aplicación. Los objetivos compartidos permiten que todas las partes de la pila de aplicaciones tengan en cuenta los mismos resultados deseados, lo que reduce drásticamente el tiempo para decidir sobre las acciones. Cuando ocurren problemas, se identifican y solucionan rápidamente.
El próximo nivel de madurez buscan más allá de la tecnología en bruto para comenzar a estudiar las transacciones comerciales de manera integral. Aquí pueden ver el "impacto" de la tecnología en la empresa y pueden ver cómo se propagan las transacciones de cada usuario, permitiendo que se entienda la experiencia del usuario y se identifiquen y remedien pequeños indicadores de problemas futuros antes de que los usuarios se den cuenta.
Nivel 6: seguimiento de transacciones con aprendizaje automático
El uso de la inteligencia artificial basada en el aprendizaje automático permite que los datos de transacción se utilicen para determinar problemas y prever acciones que serán necesarias a partir de los indicadores más sutiles.
Ahora se proporcionan alertas con un análisis de las causas más probables y las acciones más efectivas. La automatización de muchos más procesos permite una mayor escala.
Una vez que una empresa ha alcanzado el nivel 6 de su madurez, está utilizando las últimas soluciones más innovadoras disponibles, y tiene la capacidad de hacer crecer a la velocidad de los negocios sin ver aumentos lineales en el costo.
El próximo nivel de madurez es aprender continuamente de cada transacción, automáticamente, reconociendo los sutiles indicadores de cambio en la experiencia del usuario y alertando a las operaciones y equipos de negocios sobre posibles problemas junto con un conocimiento acumulado de lo que se debe hacer para mejorar el rendimiento. Esto requiere aprendizaje automático (inteligencia artificial).
Implementando APM & AI
El monitoreo del rendimiento de aplicaciones (APM) es un área de la tecnología de la información (TI) que se centra en asegurarse de que los programas de aplicaciones de software se desempeñan tal y como se espera, están integrado por uno o más programas y / o componentes de hardware que facilitan el seguimiento de cumplir tres principales dimensiones funcionales:
Monitoreo Digital de la Experiencia (DEM): La monitorización de la experiencia digital es una disciplina de vigilancia de la disponibilidad y el rendimiento que soporta la optimización de la experiencia operativa y el comportamiento de un agente digital, humano o máquina, ya que interactúa con las aplicaciones y servicios de la empresa que incluye el monitoreo del usuario real (RUM) y el monitoreo de transacciones sintéticas (STM) para los usuarios finales basados en móvil y web.
Descubrimiento de aplicaciones, rastreo y diagnóstico (ADTD) - Es un conjunto de procesos diseñados para comprender las relaciones entre los servidores de aplicaciones, para mapear las transacciones a través de estos nodos, y para permitir la inspección profunda de métodos y otros recursos de acogida. Combina tres dimensiones anteriormente separadas: Descubrimiento y visualización de la topología de la aplicación, Perfil de transacción definido por el usuario y Análisis en profundidad del componente de la aplicación. Las tres dimensiones se centran principalmente en la solución de problemas y están interrelacionadas
Inteligencia artificial para operaciones de TI (AIOps) para aplicaciones: AIOps para aplicaciones permite el descubrimiento automático del rendimiento y patrones de eventos, y detección del origen (o causa raíz) de anomalías de rendimiento para transacciones HTTP / S soportadas por Java y Servidores de aplicaciones .NET. Esto se logra a través del aprendizaje automático, la inferencia estadística y / u otros métodos.
Las plataformas AIOps son sistemas de software que combinan big data e inteligencia artificial (AI) o la funcionalidad de aprendizaje automático para mejorar y parcialmente reemplazar una amplia gama de procesos y tareas de TI, incluyendo disponibilidad y supervisión del rendimiento, correlación y análisis de eventos, gestión de servicios de TI y automatización.