O que é o tempo médio até a falha (MTTF)?

Sala de servidores com gráficos em uma tela

MTTF, explicado

O tempo médio para falhas (MTTF) é o tempo médio que um sistema ou ativo não reparável (como uma lâmpada) funciona antes de sofrer uma falha que o torne indisponível ou fora de especificação. 

As empresas usam esse indicador-chave de desempenho (KPI) de confiabilidade para estimar a vida útil esperada de um componente técnico ou mecânico.

Em DevOps, o MTTF costuma ser uma medida de quanto tempo um serviço permanece disponível para os usuários antes de falhas e downtime impactantes.

Um MTTF baixo ou em queda avisa aos desenvolvedores e engenheiros de confiabilidade do site que a infraestrutura, o código ou as dependências são frágeis e precisam de melhorias para aumentar sua confiabilidade. Um MTTF alto significa que o ambiente de produção permanece estável por períodos mais longos entre incidentes e falhas importantes e, portanto, que a equipe de TI está executando uma arquitetura de TI robusta e fornecendo aplicações de software com segurança. 

As métricas do MTTF, juntamente com outras métricas de manutenção, como o tempo médio entre falhas (MTBF),ajudam as equipes DevOps a melhorar o planejamento da capacidade e do ciclo de vida de uma série de componentes de TI (incluindo nós de rede, contêineres e serviços gerenciados), reduzindo a probabilidade de interrupções inesperadas .

Essas métricas também permitem que as empresas acompanhem a confiabilidade do equipamento em todas as versões, para que possam determinar se o código, infraestrutura como código (IaC) e as mudanças de configuração tornam os sistemas mais Resilient, em vez de apenas torná-los mais rápidos para enviar.

Cálculo do MTTF

O MTTF representa o tempo médio de operação até a falha para uma população de itens idênticos. Na sua forma mais simples, o MTTF divide o tempo total de operação de todos os ativos pelo número total de falhas de ativos.

Onde "total de horas de operação" é a soma da vida útil de cada item até a falha (ou até a observação terminar), e "número de falhas" é o número de itens que realmente falharam:

MTTF = Total de horas de operação de todos os itens/Número total de falhas

Por exemplo, considere um cluster de contêineres.

Contêineres são instâncias efêmeras que normalmente não são reparadas. Quando um contêiner falha ou apresenta problemas, as ferramentas de orquestração de contêineres (como o Kubernetes) simplesmente destroem o contêiner e iniciam um novo.

Uma equipe de TI executando um serviço da web sem estado em 50 contêineres idênticos de aplicação pode calcular o MTTF medindo quanto tempo cada contêiner fica em execução (da criação até a falha) e dividindo esse valor pelo número de contêineres com falha. Em sua avaliação, a equipe descobre que o grupo de 50 contêineres funcionou por um total de 200 horas, com cinco contêineres falhando no processo.

MTTF = 200 horas de tempo de operação/5 falhas = 40 horas

MTTF para os contêineres neste cluster é de 40 horas.

O MTTF não é uma fórmula perfeita ou exata para casos de uso do mundo real, portanto, as equipes DevOps geralmente o usam como uma aproximação da durabilidade do componente e dentro do contexto de outros KPIs de gerenciamento de incidentes, como tempo médio para reparo (MTTR) e tempo médio entre falhas (MTBF). O MTTF pode, neste caso, ajudar as equipes a estimar quantas reinicializações o cluster de contêineres exigirá a cada dia, para que possam atribuir dimensionamento de cluster e recursos de dimensionamento automático adequadamente.

No entanto, quanto mais precisos forem os dados de falha e operacionais, e quanto mais dados as equipes incluírem, mais precisos serão os cálculos do MTTF.

Como o MTTF beneficia as práticas de DevOps

O acompanhamento do MTTF permite que as equipes quantifiquem a confiabilidade do sistema e tomem decisões informadas sobre o gerenciamento de ativos, incentivando um melhor planejamento e promovendo projetos e processos mais resilientes. Ele ajuda as empresas a priorizar:

Confiabilidade e visibilidade dos riscos

O MTTF fornece uma visão clara e numérica da vida útil de um ativo antes da falha, de modo que as equipes possam avaliar objetivamente a confiabilidade em vez de confiar em anedotas.

O MTTF também isola a confiabilidade inerente de componentes ou serviços do MTTR, que mede a rapidez com que as equipes fazem correções de problemas do sistema quando eles ocorrem. Quando o MTTF cai para um serviço, isso geralmente sinaliza problemas mais profundos de design ou dependência (uma biblioteca ruim, por exemplo). As equipes podem usar esses sinais para iniciar a solução de problemas e localizar a causa raiz das falhas do sistema.

Ao acompanhar as métricas de falha ao longo do tempo, as equipes podem identificar serviços frágeis e priorizar melhorias para reduzir a frequência de incidentes no futuro.

Planejamento proativo de capacidade e estratégias de manutenção preditiva

O monitoramento do MTTF pode ajudar as empresas a otimizar as práticas de gerenciamento de manutenção e adotar uma abordagem mais proativa para a resolução de problemas.

Em vez de tarefas de manutenção baseadas em tempo ou ad hoc (como “reiniciar o serviço X todos os domingos”), as equipes podem usar o MTTF observado para programar a manutenção antes da janela de falha típica (“reciclar os pods em 80% de sua idade de falha típica”).

Na verdade, os gerentes de TI e as equipes de manutenção podem codificar runbooks - os conjuntos detalhados de instruções para a realização de tarefas de TI - com orientações explícitas baseadas no MTTF. Por exemplo, eles podem incluir um prompt de tarefa como "Se o serviço X estiver em execução há mais tempo do que o MTTF típico e mostrar sinais de aviso antecipado (erros, latência), descomissione-o proativamente e reinicie-o, em vez de esperar por uma falha grave".

Preparação e resposta a incidentes

Na gestão de incidentes, o MTTF pode representar o intervalo médio de tempo entre a detecção de um defeito e a falha completa do sistema, indicando por quanto tempo o sistema provavelmente continuará funcionando em estado degradado ou inseguro. Conhecer essa janela de degradação ajuda as equipes a decidir se têm minutos, horas ou dias para implementar uma correção antes que o componente seja desligado.

Também ajuda a reduzir a gravidade dos incidentes. Em vez de lutar durante uma falha inesperada, a equipe de TI pode executar trocas ou failovers que planejaram, testaram e receberam recursos com antecedência.​

Projeto das arquiteturas de TI resilientes

A incorporação do MTTF aos KPIs do DevOps leva as equipes de TI a projetar para confiabilidade e degradação suave, em vez de se concentrarem apenas na velocidade de entrega. As equipes podem comparar o MTTF entre componentes para informar as escolhas de arquitetura, como a substituição de componentes de baixo desempenho e o redesign de serviços.

Observar o MTTF ajuda arquitetos de TI a decidir onde as redundâncias são necessárias. Por exemplo, um serviço crítico com baixo MTTF provavelmente precisará de réplicas, clusters de failover ou disjuntores (que impedem que os serviços tentem repetir operações falhadas) para rodar com sucesso.

O MTTF também fornece aos arquitetos uma métrica orientadora para a combinação de serviços. Se uma aplicação depender de uma cadeia de dependências de baixo MTTF (que falharão com mais frequência), as equipes de DevOps podem optar por desacoplá-las ou adicionar caminhos de fallback para evitar falhas em cascata entre serviços.

Reduzindo dívida técnica

O MTTF ajuda as equipes de DevOps a priorizar a dívida técnica, transformando reclamações vagas de "isso parece frágil" em riscos de confiabilidade mensuráveis que podem ser classificados e executados. Eles podem usar os dados de MTTF para criar um backlog de confiabilidade ordenados pelo MTTF e pelo impacto do incidente, de modo que as refatorações, os reprojetos e as atualizações de dependências sejam direcionados às áreas que comprovadamente mais prejudicam a estabilidade do sistema.

Além disso, os dados do MTTF permitem que as empresas vinculem a dívida técnica aos resultados comerciais, mostrando a frequência com que um serviço é interrompido e quanto downtime ou interrupção do usuário ele causa ao longo do tempo. Isso ajuda os engenheiros a fornecer argumentos baseados em evidências para pagar dívidas. Em vez de confiar na intuição, eles podem dizer que “este módulo falha a cada N dias e gera X% dos nossos incidentes”, o que ressoa mais entre as equipes de liderança e de produto.

Objetivos de nível de serviço (SLOs) realistas e orçamentos de erro

Os SLOs são metas de desempenho acordadas para um determinado serviço durante um período de tempo específico. Eles ajudam a definir o estado esperado dos serviços e a agilizar a tomada de decisões em relação às modificações do sistema.

Os SLOs de disponibilidade ditam a janela de downtime aceitável de um serviço, conhecida como orçamento de erro. Os orçamentos de erro são projetados para ajudar as empresas a equilibrar inovação e estabilidade. Se o orçamento estiver saudável, as equipes podem priorizar com segurança a entrega de funcionalidades. Se estiverem quase se esgotando, devem mudar o foco para a confiabilidade.

Um serviço com MTTF baixo pode consumir rapidamente o orçamento de erros, sinalizando que o SLO não é realista para o design atual ou que as equipes de TI devem aumentar a confiabilidade do serviço para elevar o MTTF.

IBM DevOps

O que é DevOps?

Andrea Crawford explica o que é DevOps, seu valor e como suas práticas e ferramentas ajudam você a migrar suas aplicações por todo o pipeline de entrega de software, desde a concepção até a produção. Conduzido pelos principais líderes da IBM, o conteúdo foi concebido para ajudar os líderes empresariais a adquirir o conhecimento necessário para priorizar os investimentos em IA que podem estimular o crescimento.

MTTF vs. MTBF

O MTTF e o MTBF são métricas de confiabilidade que descrevem por quanto tempo o equipamento tende a operar, mas se aplicam a diferentes tipos de ativos e ciclos de vida. Enquanto o MTTF representa o tempo médio até a primeira falha de um componente, o MTBF representa o tempo médio entre os ciclos de falha.

O MTTF estima o tempo médio de operação de um ativo não reparável até a falha permanente, após a qual ele deve ser substituído. Ela pressupõe que um único evento de falha encerrará a vida útil de um componente.

O MTTF se aplica a componentes de hardware que são substituídos imediatamente, como discos de armazenamento, unidades de processamento central (CPUs) e cabos. Isso também se aplica a componentes de software, como contêineres e microsserviços, que são substituídos por uma nova versão ou um serviço diferente, em vez de serem reparados no local.

O MTBF mede o tempo médio entre falhas consecutivas de ativos reparáveis — incluindo servidores, componentes de rede e código de software — que são corrigidos e retornam ao serviço após falhas. Ele assume que um equipamento irá falhar, ser reparado e depois falhar novamente, então a vida útil do sistema compreende vários ciclos de "falha → reparo".

Juntas, as métricas MTTF e MTBF informam como as equipes de TI abordam o gerenciamento de incidentes e de serviços de TI.

Em muitas arquiteturas, componentes não reparáveis (rastreados com MTTF) são incorporados em sistemas grandes, complexos e reparáveis (rastreados com MTBF), portanto, o MTTF pode ajudar as equipes a prever quando os mecanismos internos forçarão uma falha que contribui para o MTBF do sistema maior.

Suponha que os dados de  observabilidade revelem que um microsserviço de processamento de pagamentos em uma aplicação de varejo tem um MTTF de 1.000 horas antes que um vazamento crítico de memória cause uma falha irrecuperável. As equipes DevOps podem agendar e automatizar as reinicializações de microsserviços às 20 horas para evitar uma cadeia de falhas que faria com que o MTBF da aplicação diminuísse.

Assim, a substituição preventiva do microsserviço não reparável aumenta diretamente a confiabilidade de toda a aplicação.

Ambas as métricas também são fundamentais para o planejamento de disponibilidade e manutenção. O MTTF auxilia nas decisões sobre gestão de inventário e estoque de peças de reposição, enquanto o MTBF auxilia nas decisões sobre o cronograma de manutenção preventiva e a frequência esperada de interrupção.

Usado em conjunto com métricas de tempo de reparo, como MTTR, MTTF e MTBF, permite que os planejadores estimem o tempo de atividade do sistema, façam o orçamento de peças sobressalentes e façam um ajuste fino dos sistemas de TI para obter a confiabilidade ideal.

Práticas para melhorar o MTTF

O processo para aumentar o MTTF de um ativo varia amplamente com base no sistema em questão, em suas dependências, no ecossistema de DevOps mais amplo em que opera e em objetivos de negócios mais amplos. No entanto, tende a envolver certas práticas fundamentais, incluindo:

  • Monitoramento contínuo. Usando ferramentas de monitoramento e observabilidade, as equipes de TI podem acompanhar desvios de desempenho e confiabilidade em tempo real, permitindo que implementem contramedidas que previnam pequenos problemas que acelerem falhas do sistema.
  • Manutenção preventiva. Realizar inspeções regulares e agendar proativamente a manutenção do sistema pode ajudar as equipes a reduzir as taxas de falhas e estender a vida útil média dos serviços de TI.
  • Estratégias de redundância. Muitas empresas dependem de réplicas com balanceamento de carga , arquiteturas de TI multirregionais, ferramentas de orquestração de contêiner e processos de replicação de dados para eliminar pontos únicos de falha e ajudar as equipes a mitigar o impacto de falhas.

Autora

Chrystal R. China

Staff Writer, Automation & ITOps

IBM Think

Soluções relacionadas
IBM instana observability

Aproveite o poder da IA e da automação para resolver problemas de forma proativa em todo o stack de aplicações.

Explore o IBM Instana Observability
Soluções de DevOps

Utilize softwares e ferramentas de DevOps para desenvolver, implementar e gerenciar aplicações nativas da nuvem em diversos dispositivos e ambientes.

Explore as soluções de DevOps
Serviços de consultoria em nuvem

Acelere a agilidade e o crescimento dos negócios, modernize suas aplicações de forma contínua em qualquer plataforma utilizando nossos serviços de consultoria de nuvem.

Explore os serviços de consultoria em nuvem
Dê o próximo passo

Da detecção proativa de problemas com IBM Instana a insights em tempo real em todo o seu stack, você pode manter aplicações nativas em nuvem funcionando de forma confiável.

  1. Descubra o IBM Instana
  2. Explore as soluções de DevOps