Análise de Sensibilidade de Modelos Hierárquicos para Computação em Nuvem Rubens de Souza Matos Júnior Orientador: Prof. Paulo Maciel Agenda • • • • • • Motivação Objetivos Conceitos de Análise de Sensibilidade Métodos de composição de índices Estudo de caso Próximos passos Motivação • Computação em nuvem é usada/almejada por várias empresas • Como propor melhorias de desempenho/dependabilidade para sistemas complexos tais como as nuvens computacionais? • Muitos componentes de hardware e software altamente acoplados • Modelos hierárquicos facilitam a descrição desses sistemas e o tratamento de largeness e stiffness. Motivação • Análise de sensibilidade: • • Métodos para verificar o quanto as mudanças nos parâmetros de entrada irão afetar as saídas (resultados) de um sistema/modelo. Técnica essencial para detecção de “gargalos” de desempenho/dependabilidade • Variação dos parâmetros, um por vez • Análise diferencial • Análise de correlação/regressão • Design of Experiments: Full-factorial, 2k-Factorial, ... MTTF_1 MTTR_1 2 1 MTTF_2 3 Objetivos • Análise de sensibilidade em modelos hierárquicos: • Combinar índices de sensibilidade e vários modelos Hierárquico homogêneo Hierárquico heterogêneo Objetivos • Principais contribuições esperadas: • • • Criação de modelos abragendo nível de aplicação e de infraestrutura (Software executando em IaaS) Inclusão de aspectos de aspectos de envelhecimento de software nos modelos de desempenho e dependabilidade Análise de sensibilidade automatizada dos modelos hierárquicos Análise de Sensibilidade Análise de Sensibilidade • Análise diferencial (A.S. formal) • Derivada parcial da métrica Y com relação a cada parâmetro λ_i. • Existem métodos e ferramentas para análise de sensibilidade de modelos simples CTMC, SPN e QN* (não-hierárquicos). A.S. em Modelos Hierárquicos 1/MTTF Down Up X Y Z 1/MTTD 1/MTTR Repairing A Sys =AX ⋅ AY⋅ AZ A X =P (Ativo ) MTTF Y AY = MTTF Y +MTTRY ∂ ASys ∂ MTTF X = ( ∂ AX ∂ MTTF X ) ( ⋅ AY⋅ A Z +AX ⋅ ∂ A Y⋅ A Z ∂ MTTF X ) Estudo de caso • • Modelos de disponibilidade para ambientes Eucalyptus de nuvem privada – Incluindo eventos de falha/reparo de hardware e software Componentes Eucalyptus: – Cloud Controller – Cluster Controller – Storage Controller – Node Controller – Walrus Estudo de caso • Controladores da Nuvem e do Cluster redundantes • Mecanismo Warm-standby Modelos hierárquico: • RBD • CTMC • Ambos modelos podem ser resolvidos através de equações de forma fechada Modelos para arquitetura redundante Sistema completo Subsistema do Controlador da Cloud/Cluster Modelos para arquitetura redundante Redução significativa do downtime Mas se quisermos melhorar esse sistema ainda mais? Quais componentes/parâmetros merecem prioridade? Modelo RBD Disponibilidade do sistema ? Sensibilidade da Disponibilidade Avaliação da Cadeia de Markov Modelo RBD ∂ ACLC ∂ θi ∂ ACC ∂ θi Calculados com a ajuda de frameworks de álgebra computacional, e.g. GiNaC, Wolfram Mathematica. Índice de sensibilidade para modelo com CLC e CC redundantes Verificação dos resultados Verificação dos resultados Otimização guiada pela análise de sensibilidade • Composição de web services (mashup) – Pode haver muitos provedores possíveis para o mesmo serviço: • Google Places • Yahoo Place Finder • Foursquare – Identificar a combinação de provedores de serviço que resultará no melhor desempenho e confiabilidade para a aplicação – Uso de índices de sensibilidade como heurística para melhorar algoritmos de otimização tais como o GRASP (Greedy Randomized Adaptive Search Procedure) Próximos passos • • • • Testar o uso A.S. no algoritmo de otimização Incluir funções de A.S. de modelos hierárquicos no Mercury. Experimentos para validar os resultados de alguns cenários Comparar os resultados índices de derivadas parciais com os resultados de DoE fatorial