Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

22
Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007

Transcript of Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Page 1: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Sistema de Detecção de Falhas baseando em Naive

Bayes

Ricardo ClementeJun - 2007

Page 2: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Índice Problema Proposta de solução Trabalho realizado Experimentos Conclusão

Page 3: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Problema Ambiente de TI com centenas de servidores,

roteadores, aplicativos, etc sendo constantemente monitorados.

Cada ponto de monitoração é capaz de gerar alarmes para um sistema central quando está fora de sua operação padrão.

Nem sempre um alarme signfica uma falha real Threshold mal configurados, ou desatualizados

(ex: número máximo de sessões) Alarmes não significativos (ex: query lenta)

Page 4: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Problema Grande volume de alarmes por

intervalo de tempo torna inviável uma análise humana em tempo real para identificar falhas reais.

Sistema capaz de correlacionar eventos de alarmes e gerar uma informação de alto nível seria grande utilidade

Page 5: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Proposta da solução Inspirada em soluções anti-spam Utilizar Naive-bayses como base do

algoritmo de classificação Sistema capaz de calcular a

probabilidade de uma falha de indisponibilidade, dado os eventos de alarme que ocorreram em uma janela de tempo definida P(falha indisponibilidade | eventos alarmes)

Page 6: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Proposta da solução O sistema a ser criado é composto

por: Módulo de diagnóstico Módulo de treinamento Módulo coletor (acesso ao banco)

Page 7: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Proposta da solução O processo de treinamento deve funcionar da seguinte

forma: Em intervalos de 10 minutos o módulo coletor varre os

30 minutos anteriores. O coletor entrega para o módulo de treinamento uma

tabela com os alarmes e uma contagem de quantas vezes ele apareceu em um determinado tempo.

O módulo de treinamento consulta a base de falhas para saber se existem falha para o período

O módulo de treinamento atualiza a base de conhecimento com a contagem de cada alarme para casos de falha e não-falha

Page 8: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Proposta da solução O processo de diagnóstico deve funcionar da seguinte forma:

Em intervalos de 10 minutos o módulo coletor varre os 30 minutos anteriores.

O coletor entrega para o módulo de diagnóstico uma tabela com os alarmes e uma contagem de quantas vezes ele apareceu em um determinado tempo.

O módulo de dignóstico consulta a base de conhecimento que possui a contagem de cada alarme para casos de falha e não-falha

Com base nesta informação, o módulo de diagnóstico calcula a probabilidade de ter ocorrido uma falha

Se a probabilidade for maior que 90%, o módulo de diagnóstico alarma.

Page 9: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Trabalho realizado Transformação dos dados dos

alarmes Estrutura de dados atual é imprópria Criado software de transformação Executado o software em base de 3GB

Desenvolvimento do módulo de treinamento

Desenvolvimento do módulo de diagnóstico

Page 10: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Trabalho realizado Realização de dois experimentos Limitações:

Registro de falhas só dos meses de maio

Confiabilidade baixa destes registros Registros não estruturado de falhas

Page 11: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos Experimento 1

Treinar com as falhas disponíveis; Diagnosticar os eventos de alarmes

disponíves Salvar os diagnósticos em planilhas Analisar os resultados

Page 12: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos Experimento 2

Treinar com as falhas disponíveis menos uma;

Diagnosticar os eventos de alarmes disponíves

Salvar os diagnósticos em planilhas Analisar os resultados Verificar o resultado para a falha retirada

Page 13: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - Alarmes

• Base de dados é formada por eventos de alarmes coletados entre os dias 01 e 24 de maio de 2007

• Total de 73.520 alarmes

•Cada evento de alarme possui um código que identifica o alarme e um timestamp.

Page 14: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimento - Falhas

ID INÍCIO FIM1 5/8/2007 9:48 5/8/2007 11:302 5/8/2007 13:13 5/8/2007 13:333 5/8/2007 21:25 5/8/2007 23:504 5/20/2007 19:34 5/20/2007 19:365 5/22/2007 15:40 5/22/2007 15:56

• Cinco falhas que representaram indisponibilidade de algum serviço no mês de maio.

Page 15: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 1 Janela de 30 minutos Período de 10 minutos Total de 3687 observações Todas salvas em uma planilha

Page 16: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 1 Total de observações classificadas com

mais de 90% que se enquadram dentro das falhas cadastradas: 108

Total de observações classificadas com menos de 90% que se enquadram dentro das falhas cadastradas: 8

Estas oito observações correspondem a um único período de falha. Provavelmente a falha ocorrida não deveria ter alarmes específicos e significativos.

Page 17: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 1 Total de observações classificadas

com mais de 90% que não se enquadram dentro das falhas cadastradas: 143

Este número deve corresponder: Falhas não registradas Manutenções realizadas sem

desligamento dos alarmes

Page 18: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 1 Número de alarme não é por si só

um bom indicador: Número de alarmes pequeno e alta

probabilidade

Número de alarmes grande e baixa probabilidade

observação probabilidade número de alarmes5/7/2007 17:21 0.9828656 2

observação probabilidade número de alarmes5/15/2007 17:31 0.01 17

Page 19: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 2 Retirar de 1 falha do treinamento

Verificar o comportamento do classificador durante o espaço de tempo correspondente a falha retirada

ID INÍCIO FIM1 5/8/2007 9:48 5/8/2007 11:302 5/8/2007 13:13 5/8/2007 13:333 5/8/2007 21:25 5/8/2007 23:504 5/20/2007 19:34 5/20/2007 19:365 5/22/2007 15:40 5/22/2007 15:56

Page 20: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - 2 Comportamento no período:

observação probabilidade número de alarmes5/20/2007 19:31 0.01 25/20/2007 19:41 0.99 245/20/2007 19:51 0.99 245/20/2007 20:01 0.99 275/20/2007 20:11 0.01 95/20/2007 20:21 0.01 8

Page 21: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Experimentos - Limitações Somente 5 registros de falhas Registro é falho: nem todas as falhas

são devidamente registradas. Não há classificação das falhas. Se

houvesse uma classificação, no sentido de identificar o serviço afetado, seria possível ter probabilidades de falhas por serviço.

Page 22: Sistema de Detecção de Falhas baseando em Naive Bayes Ricardo Clemente Jun - 2007.

Conclusão Registro completo das falhas é

determinante para um bom treinamento

Resultados fazem sentido Séries de com alta probabilidade são

indícios de falhas Resultados dos experimentos (excel)

Para ter maior certeza somente com mais dados