¿Qué es el tiempo medio hasta el fallo (MTTF)?

Sala de servidores con gráficos en pantalla

Explicación de MTTF

El tiempo medio hasta el fallo (MTTF) es el tiempo medio que un sistema o activo no reparable (como una bombilla) funciona antes de experimentar un fallo que lo haga inaccesible o fuera de especificación. 

Las empresas utilizan este indicador clave de rendimiento (KPI) de fiabilidad para estimar la vida útil esperada de un componente técnico o mecánico.

En DevOps, el MTTF suele ser una medida del tiempo que un servicio permanece disponible para los usuarios antes de que se produzcan fallos y tiempos de inactividad impactantes.

Un MTTF bajo o en descenso advierte a los desarrolladores y a los ingenieros de fiabilidad del sitio que la infraestructura, el código o las dependencias son frágiles y requieren mejoras para aumentar su fiabilidad. Un MTTF alto significa que el entorno de producción permanece estable durante largos periodos entre incidentes graves y fallos, y por tanto, que un equipo de TI ejecuta una arquitectura de TI robusta y entrega aplicaciones de software de forma segura. 

Las métricas MTTF, junto con otras métricas de mantenimiento, como el tiempo medio entre fallos (MTBF), ayudan a los equipos de DevOps a mejorar la capacidad y la planificación del ciclo de vida de una serie de componentes de TI (incluidos nodos de red, contenedores y servicios gestionados), reduciendo la probabilidad de cortes inesperados.

Estas métricas también permiten a las empresas hacer un seguimiento de la fiabilidad de los equipos a través de las versiones, de modo que pueden determinar si el código, la infraestructura como código (IaC) y los cambios de configuración hacen que los sistemas sean más resiliente, en lugar de hacerlos más rápidos de enviar.

Cálculo del MTTF

El MTTF representa el tiempo medio de funcionamiento hasta el fallo de una población de elementos idénticos. En su forma más simple, el MTTF divide el tiempo total de funcionamiento de todos los activos entre el número total de fallos de los activos.

Donde el “total de horas de funcionamiento” es la suma de la vida útil de cada elemento hasta el fallo (o hasta que se detiene la observación), y el “número de fallos” es el número de elementos que realmente fallaron:

MTTF = Total de horas de funcionamiento de todos los elementos/Número total de fallos

Pongamos como ejemplo un clúster de contenedores.

Los contenedores son instancias efímeras que no suelen repararse. Cuando un contenedor se bloquea o pasa a estar en mal estado, las herramientas de orquestación de contenedores (como Kubernetes) simplemente destruyen el contenedor y hacen girar uno nuevo.

Un equipo de TI que ejecute un servicio web sin estado en 50 contenedores de aplicación idénticos puede calcular el MTTF midiendo el tiempo de ejecución de cada contenedor (desde la creación hasta el fallo) y dividiéndolo por el número de contenedores fallidos. En su evaluación, el equipo concluye que el grupo de 50 contenedores funcionó durante un total de 200 horas, con cinco contenedores fallando en el proceso.

MTTF = 200 horas de tiempo de funcionamiento/5 fallos = 40 horas

El MTTF para los contenedores de este clúster es de 40 horas.

El MTTF no es una fórmula perfecta ni exacta para los casos de uso del mundo real, por lo que los equipos de DevOps generalmente lo utilizan como una aproximación de la durabilidad de los componentes y en el contexto de otros KPI de gestión de incidentes, como el tiempo medio de reparación (MTTR) y el MTBF. El MTTF puede, en este caso, ayudar a los equipos a estimar cuántos reinicios requerirá el clúster de contenedores cada día, para que puedan asignar el tamaño del clúster y los recursos de autoescalado de forma adecuada.

Sin embargo, cuanto más precisos sean los datos de fallos y operativos, y cuantos más datos incluyan los equipos, más precisos serán los cálculos de MTTF.

Cómo MTTF beneficia las prácticas de DevOps

El seguimiento del MTTF permite a los equipos cuantificar la fiabilidad del sistema y tomar decisiones informadas sobre gestión de activos, lo que fomenta una mejor planificación e impulsa diseños y procesos más resilientes. Ayuda a las empresas a priorizar:

Fiabilidad y visibilidad del riesgo

El MTTF proporciona una visión numérica clara de la vida útil de un activo antes del fracaso, de modo que los equipos pueden evaluar objetivamente la fiabilidad en lugar de confiar en anécdotas.

El MTTF también aísla la fiabilidad inherente de los componentes o servicios del MTTR, que mide la rapidez con la que los equipos realizan correcciones de los problemas del sistema cuando se producen. Cuando MTTF deja de usar un servicio, a menudo indica problemas de diseño o dependencia más profundos (una biblioteca mala, por ejemplo). Los equipos pueden utilizar esas señales para iniciar la solución de problemas y localizar la causa raíz de los fallos del sistema.

Mediante el seguimiento de las métricas de fallos a lo largo del tiempo, los equipos pueden identificar los servicios frágiles y priorizar las mejoras para reducir la frecuencia de incidentes en el futuro.

Planificación proactiva de la capacidad y estrategias de mantenimiento predictivo

La monitorización del MTTF puede ayudar a las empresas a optimizar las prácticas de gestión del mantenimiento y adoptar un enfoque más proactivo para la resolución de problemas.

En lugar de tareas de mantenimiento basadas en el tiempo o ad hoc (como “reiniciar el servicio X cada domingo”), los equipos pueden utilizar el MTTF observado para programar el mantenimiento antes de la ventana de fallo típica (“reciclar los pods al 80 % de su edad de fallo típica”).

De hecho, los responsables de TI y los equipos de mantenimiento pueden codificar los manuales de procedimientos (conjuntos detallados de instrucciones para completar tareas de TI) con directrices explícitas basadas en el MTTF. Por ejemplo, podrían incluir una instrucción de tarea como “Si el servicio X ha estado funcionando más tiempo que su MTTF típico y muestra señales de advertencia tempranas (errores, latencia), desconéctelo de forma proactiva y reinícielo, en lugar de esperar a que se produzca un fallo grave”.

Preparación y respuesta a incidentes

En la gestión de incidentes, el MTTF puede representar el tiempo medio entre la detección de un defecto y el fallo completo del sistema, lo que indica cuánto tiempo es probable que el sistema siga funcionando en un estado degradado o inseguro. Conocer esta ventana de degradación ayuda a los equipos a decidir si tienen minutos, horas o días para implementar una corrección antes de que el componente se apague.

También ayuda a reducir la gravedad de los incidentes. En lugar de luchar durante un fallo inesperado, el personal de TI puede ejecutar intercambios o conmutaciones por error que han planificado, probado y dotado de recursos con antelación.​

Diseño de arquitecturas de TI resilientes

La incorporación del MTTF en los KPI de DevOps impulsa a los equipos de TI a diseñar con miras a la fiabilidad y la degradación gradual, en lugar de centrarse únicamente en la velocidad de entrega. Los equipos pueden comparar MTTF entre componentes para informar decisiones arquitectónicas como reemplazar componentes con bajo rendimiento y rediseñar servicios.

Observar el MTTF ayuda a los arquitectos de TI a decidir dónde son necesarias las redundancias. Por ejemplo, un servicio crítico con un MTTF bajo probablemente necesitará réplicas, clústeres de conmutación por error o disyuntores (que impiden que los servicios intenten repetir operaciones fallidas) para funcionar con éxito.

MTTF también proporciona a los arquitectos una métrica orientadora para combinar servicios. Si una aplicación depende de una cadena de dependencias de MTTF bajo (que fallarán con mayor frecuencia), los equipos de DevOps pueden optar por desacoplarlas o agregar rutas de respaldo para evitar fallas en cascada en los servicios.

Reducción de la deuda técnica

MTTF ayuda a los equipos de DevOps a priorizar la deuda técnica convirtiendo las vagas quejas de “esto se siente frágil” en riesgos de fiabilidad medibles que se pueden clasificar y actuar en consecuencia. Pueden utilizar los datos de MTTF para crear un backlog de fiabilidad ordenado por MTTF e impacto incidente, de modo que los refactores, rediseños y actualizaciones de dependencias se dirijan a las áreas que más perjudican la estabilidad del sistema.

Además, los datos de MTTF permiten a las empresas vincular la deuda técnica con los resultados empresariales al mostrar la frecuencia con la que un servicio se interrumpe y el tiempo de inactividad o interrupción de los usuarios que provoca con el tiempo. Esto ayuda a los ingenieros a proporcionar argumentos basados en pruebas para el pago de la deuda. En lugar de confiar en la intuición, pueden decir “este módulo falla cada N días y genera un X % de nuestros incidentes”, lo que tiene más peso ante los equipos directivos y de producto.

Objetivos de nivel de servicio (SLO) realistas y presupuestos de errores

Los SLO son objetivos de rendimiento acordados para un servicio en particular durante un período de tiempo específico. Ayudan a definir el estado esperado de los servicios y agilizan la toma de decisiones en torno a las modificaciones del sistema.

Los SLO de disponibilidad dictan el intervalo de tiempo de inactividad aceptable de un servicio, conocido como presupuesto de errores. Los presupuestos de errores están diseñados para ayudar a las empresas a equilibrar la innovación y la estabilidad. Si el presupuesto es saludable, los equipos pueden priorizar de forma segura la entrega de características. Si está casi agotado, deberían centrar su atención en la fiabilidad.

Un servicio de bajo MTTF puede consumir rápidamente el presupuesto de errores, lo que indica que el SLO no es realista para el diseño actual o que los equipos de TI deben aumentar la fiabilidad del servicio para aumentar el MTTF.

IBM DevOps

¿Qué es DevOps?

Andrea Crawford explica qué es DevOps, su valor y cómo las prácticas y herramientas de DevOps ayudan a desarrollar las aplicaciones a lo largo de todo el proceso de entrega de software, desde la ideación hasta la producción. El plan de estudios, dirigido por los principales líderes de opinión de IBM, está diseñado para ayudar a los líderes empresariales a adquirir los conocimientos necesarios para priorizar las inversiones en IA que pueden impulsar el crecimiento.

MTTF vs. MTBF

El MTTF y el MTBF son métricas de fiabilidad que describen cuánto tiempo tiende a funcionar el equipo, pero se aplican a diferentes tipos de activos y ciclos de vida. Mientras que el MTTF representa el tiempo medio hasta el primer fallo de un componente, el MTBF representa el tiempo medio entre ciclos de fallo.

MTTF estima el tiempo medio de funcionamiento de un activo no reparable hasta el fallo permanente, tras el cual debe ser sustituido. Se parte del supuesto de que un único fallo pondrá fin a la vida útil de un componente.

MTTF se aplica a componentes de hardware que se reemplazan directamente, como los discos de almacenamiento, unidades centrales de procesamiento (CPU) y cables. También se aplica a componentes de software como contenedores y microservicios, que acaban siendo sustituidos por una nueva versión o un servicio diferente en lugar de ser reparados en su lugar.

MTBF mide el tiempo medio que transcurre entre fallos consecutivos de activos reparables (incluidos servidores, componentes de red y código de software) que se reparan y vuelven a ponerse en servicio tras una avería. Asume que un equipo fallará, será reparado y luego volverá a fallar, por lo que la vida útil del sistema comprende varios ciclos de “fallo → reparación”.

En conjunto, las métricas MTTF y MTBF informan sobre cómo los equipos de TI abordan las incidencias y la gestión de servicios de TI.

En muchas arquitecturas, los componentes no reparables (seguidos con MTTF) están integrados en sistemas grandes, complejos y reparables (seguidos con MTBF), por lo que el MTTF puede ayudar a los equipos a predecir cuándo los mecanismos internos provocarán un fallo que contribuirá al MTBF del sistema más grande.

Supongamos que los datos de observabilidad revelan que un microservicio de procesamiento de pagos dentro de una aplicación de comercio minorista tiene un MTTF de 1000 horas antes de que una fuga de memoria crítica provoque que se bloquee irremediablemente. Los equipos DevOps pueden programar y automatizar reinicios de microservicios a las 800 horas para evitar una cadena de fallos que haría que el MTBF de la aplicación cayera en picado.

Como tal, la sustitución preventiva del microservicio no reparable aumenta directamente la fiabilidad de toda la aplicación.

Ambas métricas son también fundamentales para la planificación de la disponibilidad y el mantenimiento. MTTF respalda las decisiones sobre la gestión de inventario y el almacenamiento de piezas de repuesto, mientras que el MTBF respalda las decisiones sobre los programas de mantenimiento preventivo y la frecuencia prevista de interrupciones.

Utilizado junto con métricas del tiempo de reparación, como MTTR, MTTF y MTBF, permiten a los planificadores estimar el tiempo de actividad del sistema, presupuestar las piezas de repuesto y afinar los sistemas de TI para lograr una fiabilidad óptima.

Prácticas para mejorar el MTTF

El proceso para aumentar el MTTF de un activo varía ampliamente en función del sistema en cuestión, sus dependencias, el ecosistema DevOps más grande en el que opera y los objetivos empresariales más amplios. Sin embargo, suele implicar ciertas prácticas clave, entre ellas:

  • Monitorización continua. Mediante el uso de herramientas de monitorización y observabilidad, los equipos de TI pueden realizar un seguimiento de las desviaciones de rendimiento y fiabilidad en tiempo real, lo que les permite implementar contramedidas que evitan que problemas menores aceleren los fallos del sistema.
  • Mantenimiento preventivo. Realizar inspecciones periódicas y programar de forma proactiva el mantenimiento del sistema puede ayudar a los equipos a reducir las tasas de fallos y prolongar la vida útil media de los servicios de TI.
  • Estrategias de redundancia. Muchas empresas confían en réplicas con equilibrio de carga, arquitecturas de TI multirregionales, herramientas de orquestación de contenedores y procesos de replicación de datos para eliminar los puntos únicos de fallo y ayudar a los equipos a mitigar el impacto de los fallos.

Autor

Chrystal R. China

Staff Writer, Automation & ITOps

IBM Think

Soluciones relacionadas
IBM Instana Observability

Aproveche la potencia de la IA y la automatización para resolver problemas de manera proactiva en toda la pila de aplicaciones.

Explore IBM Instana Observability
Soluciones DevOps

Utilice el software y las herramientas de DevOps para construir, implementar y gestionar aplicaciones nativas de la nube en varios dispositivos y entornos.

Explore las soluciones DevOps
Servicios de consultoría en la nube

Acelere la agilidad y el crecimiento empresarial: modernice continuamente sus aplicaciones en cualquier plataforma utilizando nuestros servicios de consultoría en la nube.

Explore los servicios de consultoría en la nube
Dé el siguiente paso

Desde la detección proactiva de problemas con IBM® Instana hasta los conocimientos en tiempo real en toda su pila, puede mantener las aplicaciones nativas de la nube funcionando de forma fiable.

  1. Descubra IBM Instana
  2. Explore las soluciones DevOps