Kewei Sun, Jie Qiu, Ying Li, Ying Chen IBM China Research Laboratory, Beijing, China.
description
Transcript of Kewei Sun, Jie Qiu, Ying Li, Ying Chen IBM China Research Laboratory, Beijing, China.
Kewei Sun, Jie Qiu, Ying Li, Ying ChenIBM China Research Laboratory, Beijing, China.
Network Operations and Management Symposium - NOMS 2008
Apresentado por Katia AbreuTópicos em Redes
Pós-Graduação em Informática – UFPR – out/2008
“A State Machine Approach for Problem Detection in Large-scale Distributed
System”
Motivação Detecção de problema é parte importante do
gerenciamento de um sistema de larga-escalaSistemas distribuídos geram logs detalhados
para gravar suas atividades
Problemas ainda são inevitáveis: bug da aplicação, middleware instável, hardwareEmpresas: QoS reduzido, competitividade
reduzida Abordagens existentes:
Poucas consideram a análise de log de múltiplos hosts de um sistema distribuído em larga-escala
Algumas detectam somente problemas conhecidos
Roteiro Objetivos Conceitos e Definições Transação, Eventos e Transições em ME Detecção de Anomalias e Padrões de
Problemas Um Estudo de Caso Conclusão
Objetivos Apresentar um novo modelo de análise de logs:
PDSM (Problem Detection State Machine) Baseia-se na projeção do comportamento de um
sistema distribuído e mantém informações estatísticas desse comportamento
Objetivo do método: coletar logs de componentes do sistema, construir uma Máquina de Estados, e usá-la pra verificar o comportamento de um
sistema.
Descrever como PDSM representa as atividades de um sistema de larga-escala em execução.
Definição do Ambiente
SD subsistema
s
componentes
Transação
Estados = componentes + transição Controle de processamento é passado de um componente a outro
Requisição da
aplicação
O que é Maq. Estados?
O que é SD em larga-escala?
SD é composto por um conjunto de componentesC = {c1,c2,…,cn}
Um ci é componente atômico se ele não contém outros componentes
Ponto de Log é o local onde log de eventos são gerados. O conjunto de pontos de log de um componente
atômico é L(ci) = {lp1,lp2,...lpm}
Para cada transação disparada por uma requisição r, ∃ um conjunto de componentes C(r), onde C(r) ⊂ C
Definições Para o PDSM
Máquina de Estados de Transação de Única Requisição
Define-se Máquina de Estados - Mr - de uma transação, servindo uma única requisição, através da tupla:
Estados da transação
Conjunto dos Eventos que geram
transiçõesA probab. de um Estado de Qr ser o
estado inicial
PDSM Global Une todas as máquinas de estados de todas
as requisições. Pode ser denotada por:
Questões com os Eventos Logs são geradas por diferentes
componentes Itens de log devem ter formato único
Não existe relógio global Um método deve determinar a ordem
relativa dos eventos
É requerido rastrear a transação e extrair os eventos relacionados a ela
PDSM: Processamento de Eventos
Log de eventos são convertidos em um formato único, isto é, eventos base comum
Para assegurar a abordagem adaptativa, não
assume que todos os relógios são sincronizados Ordem parcial em um conjunto de eventos +
informações de tempo real
Para extrair os eventos relacionados à transação Magpie, Pinpoint
Algoritmos
Construção de Máquina de Estados Usando Log de Eventos
Agrupamento de eventos em Estados De acordo com suas especificações e informações
de mensagens O algoritmo:
Detecção de Anomalianum.
Estados de S4
num. transições de um Estado para outro
99,9%
0,1% Ponto de problema ou execução de um serviço acessado raramente?
Como resolver?
Usar informações detalhadas da transição S2 S5 e do Estado S5
Algoritmo para avaliar a anomalia dos Estados
Idéia básica: visitar uma série de Estados ruins que se desviam do percurso normal
O Estado mais suspeito de ser um problema é distinguido dos demais
Classificação dos eventos em níveis de erro: error/fatal, exception, warning, information e unknown
É aplicada uma função para verificar o nível do Estado de erro E(s)
Para cada Estado a partir do seu nível de erro é calculado se o Estado é uma Anomalia, se é um estado Normal, ou se não é possível classificar.
Algoritmo para Avaliar Estado Anormal
Para erros que acontecem intermitentemente em um ou mais Estados
Conectividade: Existe uma ligação entre esses Estados com erros intermitentes
Verifica se o problema acontece em pares de Estados conectivos e se ambos têm o problema
Saída: o conjunto de transições consideradas padrões de problemas
Algoritmo para Detecção de Padrão de Problema
Experimentação 4 máquinas Emprego do benchmark Trade 6 A abordagem é validada sobre a aplicação J2EE 3-tier
Problemas Introduzidos Introduzidos separadamente Com duração de 1 hora Após 30 minutos de execução do sistema
Detecção de Problema Individual Projeção de um problema de shutdown acidental
em DB2
Inserção de Um Problema Um novo problema aumenta o número de Estados PDSM fornece uma projeção em tempo real
Detecção de Múltiplos Problemas
Máquina de Estados Global para todos os problemas introduzidos
Número de Estados e número de transições aumentam a cada novo problema
Inserção de Múltiplos Problemas
Compressão de Logs PDSM une informações redundantes De milhões de logs/cententas de Estados para
1.200.000 logs/291 Estados
Conclusão PDSM é um modelo de análise de log que
representa a execução de um sistema distribuído de larga-escala
Mantém informações estatísticas de comportamento
Reduz os esforços de análise de logs ao fazer compressão
Não necessita de conhecimento de alguma base de dados de problemas
É sensível a problemas desconhecidos