Repository logo
 
Loading...
Thumbnail Image
Publication

Monitoring and detection of anomaly in microservices environments

Use this identifier to reference this record.

Abstract(s)

Microservices architectures have become increasingly popular in recent years because of their scalability and agility. However, the distributed nature of this architecture also introduces some challenges, especially in terms of monitoring and detecting anomalies. Anomaly detection is the process of identifying anomalous events or patterns in data that do not conform to expected behavior. In microservices environments, this eventually becomes very important, since the number of services tends to grow increasingly, making the interaction between them complex. Because it is recent, there are still few studies on the best approaches to detecting anomalies in microservices. This thesis investigates how well PyOD library algorithms can detect anomalous behavior in a microservices dataset. PyOD is an open-source Python toolbox for performing scalable outlier detection on multivariate data. Some benefits of PyOD are that it is scalable, includes several algorithms, and can detect anomalies in multivariate data. We also review among the PyOD, KNN and HBOS algorithms, which one performs better at detecting anomalies. To evaluate the approach, we used TraceRCA dataset to detect anomalies such as application bugs, CPU exhausted, and network jam. This dataset contains logs from a real microservices system. The preliminary results show that the HBOS algorithm performs better than kNN, with Recall and F1-Score of 83% and 91%, respectively, while for kNN these metrics were 80% and 89%, respectively.
Resumo: A arquitetura de microserviços têm-se tornado cada vez mais popular nos últimos anos, devido à sua escalabilidade e agilidade. Contudo, a natureza distribuída desta arquitetura também introduz alguns desafios, especialmente em termos de monitorização e deteção de anomalias. A deteção de anomalias é o processo de identificação de eventos ou padrões anómalos em dados que não estão em conformidade com o comportamento esperado. Em ambientes de microserviços, isto acaba por se tornar muito importante, uma vez que o número de serviços tende a crescer cada vez mais, tornando a interação entre eles complexa. Por ser recente, existem ainda poucos estudos sobre as melhores abordagens para a deteção de anomalias em microserviços. Esta tese investiga até que ponto podem os algoritmos da biblioteca PyOD detetar comportamentos anómalos num conjunto de dados de microserviços. PyOD é uma biblioteca Python open source para efetuar a deteção de anomalias em dados multivariados. Também analisamos entre os algoritmos PyOD, KNN e HBOS, qual deles tem um melhor desempenho na deteção de anomalias. Para avaliar a abordagem, utilizamos o conjunto de dados TraceRCA para detetar anomalias tais como bugs de aplicação, esgotamento do CPU, e interferência na rede. Este conjunto de dados contém registos de um sistema de microserviços real. Os resultados preliminares mostram que o algoritmo HBOS tem melhor desempenho do que o kNN, com Recall e F1-Score de 83% e 91%, respetivamente, enquanto que para o kNN estas métricas foram de 80% e 89%, respetivamente.

Description

Dissertação submetida à Escola Superior de Tecnologia do Instituto Politécnico de Castelo Branco para obtenção do Grau de Mestre em Desenvolvimento de Software e Sistemas Interativos

Keywords

Microservices Monitoring Anomaly detection Py0D Outliers algorithms Microserviços Monitorização Deteção de anomalias Py0D Algoritmos outliers

Pedagogical Context

Citation

Research Projects

Organizational Units

Journal Issue