Propostas Atribuidas

DEI - FCTUC
Gerado a 2024-04-19 08:55:36 (Europe/Lisbon).
Voltar

Titulo Estágio

Online Failure Prediction in Containerized Environments

Áreas de especialidade

Engenharia de Software

Local do Estágio

SSE-CISUC

Enquadramento

Failure Prediction is a technique to predict failures by learning from past failure data. It evolved into Online Failure Prediction, which correlates past failure data with the current system state, increasing the quality of the prediction. The prediction of a future failure allows performing mitigation actions, such as saving data or restarting parts of a system, to avoid or lessen possible consequences.
Current approaches use software fault injection and virtualization to quickly generate failure related data. Software fault injection is used to induce representative failures, allowing the generation of failure-related data in short time for a system, accelerating the training, optimization and validation of different prediction models. Virtualization is used to build sandboxed copies of the target system, where the fault injection processes can be applied avoiding the effects of the injected faults and of possible damages caused by their activation. However, current approaches present limitations of applicability and is hard to be implemented in complex systems, where the boundaries are not always clear.
Containerized applications based on microservices are highly flexible and scalable, and are becoming widely spread, for instance in cloud environments. Predicting the failures in such applications is an enticing proposition and in the characteristics of containers may reside the solution for the identified limitations, as the containers promise to provide the application with a context that is relatively uniform across different support systems.

Objetivo

In this context, this work aims at assessing the feasibility of using online failure prediction in containerized microservices applications. The idea is that by limiting the monitored information to the containers, a more uniform information can be obtained to feed the failure prediction algorithms. However, this can also reduce the effectiveness of the algorithms. Therefore, the specific objectives of this work are: understand which variables can be monitored at container level, study how these variables vary depending on the supporting operating system and hardware, and study the effectiveness of failure prediction algorithms when used in this context.

Plano de Trabalhos - Semestre 1

T1. [01/09/2017 a 31/10/2017] State of the art analysis
Understand online failure prediction concepts, study containers environment and tools. Study software fault injection techniques and tools. Review existing system and process monitoring tools and which are more adequate to monitor containers. Familiarize with existing failure prediction algorithms.
T2. [01/11/2017 a 30/11/2017] Creation of an experimental setup.
Install and configure a setup based on Docker, finding or developing representative applications to deploy there. Configure the selected tools for monitoring and failure prediction.
T3. [01/12/2017 a 31/12/2017] Comparison of monitored variables across supporting systems.
Perform a small experimental evaluation, running the setup in variations of supporting operating system and hardware and understand the type of variations observed in the monitored variables.
T4. [15/12/2017 a 22/01/2018] Write the Dissertation Plan

Plano de Trabalhos - Semestre 2

T1. [01/02/2018 a 15/03/2018] Software Fault Injection
Adapt existing software fault injection techniques to the setup to generate failure data. Repeat the comparison experiment to understand the impact of the induced failures in the observations.
T2. [16/03/2018 a 30/04/2018] Evaluation of Online Failure Prediction
Define an experimental to evaluate and compare different failure prediction techniques according to their ability to predict the failures generated by the injected faults in the defined containerized setup.
T3. [01/04/2018 a 31/05/2018] Write a scientific publication.
T4. [01/03/2018 a 31/06/2018] Write the Dissertation.

Condições

The work is to be executed at the laboratories of the CISUC’s Software and Systems Engineering Group. A work place will be provided as well as the required computational resources.

Observações

Sem observações.

Orientador

Nuno Antunes
nmsa@dei.uc.pt 📩