Dissertação

FaultSee: Reproducible fault injection in distributed systems EVALUATED

Os sistemas informáticos distribuídos são cada vez mais importantes na sociedade moderna operando, muitas vezes, a uma escala global e com requisitos de disponibilidade muito perto dos 100%. Para alcançar um nível tão elevado de disponibilidade é necessário ter processos de desenvolvimento focados na qualidade, com testes rigorosos e exaustivos. Os sistemas distribuídos, por serem formados por vários componentes, são bastante difíceis de avaliar e testar de uma forma sistemática e reproduzível. Esta dificuldade pode constatar-se ao analisar artigos científicos ou outros estudos sobre um sistema distribuído em operação, em que é frequente ver afirmações sobre a injeção de faltas em nós do sistema, que não são explicadas nem contextualizadas de forma a permitir a reprodução num ambiente de teste alternativo. Dado que o comportamento do sistema pode variar substancialmente consoante o tipo de "falta" injetada, torna-se praticamente impossível a um investigador reproduzir o comportamento observado nesse teste. Se não existir reproducibilidade, então não se consegue fazer a adequada comparação de alternativas, e o progresso técnico torna-se mais lento e dispendioso. Neste trabalho propomos a criação da plataforma FaultSee que permite avaliar sistemas reais de uma forma mais sistemática e reproduzível do que o estado da arte. Propomos também uma linguagem, a FDSL, usada pelo FaultSee, de especificação de sistemas distribuídos e injeção de faltas que capturam precisamente variáveis como o ambiente de teste, a carga de trabalho e tipo de faltas. Estas funcionalidades são demonstradas em cenários realistas usando o Apache Cassandra e o BFT-Smart como casos de estudo.
Sistemas distribuídos, Avaliação de sistemas, Reprodutibilidade, Tolerância a faltas

dezembro 5, 2019, 9:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Miguel Filipe Leitão Pardal

Departamento de Engenharia Informática (DEI)

Professor Auxiliar

ORIENTADOR

Miguel Ângelo Marques de Matos

Departamento de Engenharia Informática (DEI)

Professor Auxiliar