Large microservice clusters deployed in the cloud can be very difficult to both monitor and debug. Monitoring theses clusters is a first step towards detection of anomalies, deviations from normal behaviour. Anomalies are often indicators that a component is failing or is about to fail and should hence be detected as soon as possible. There are often lots of metrics available to view. Furthermore, any errors that occur often propagate to other microservices making it hard to manually locate the root cause of an anomaly, because of this automatic methods are needed to detect and correct the problems. The goal of this thesis is to create a solution that can automatically monitor a microservice cluster, detect anomalies, and find a root cause. The anomaly detection is based on an unsupervised clustering algorithm that learns the normal behaviour of each service and then look for data that falls outside that behaviour. Once an anomaly is detected the proposed method tries to match the data against predefined root causes. The proposed solution is evaluated in a real microservice cluster deployed in the cloud, using Kubernetes together with a service mesh and several other tools to help gather metrics and trace requests in the system.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:umu-164740 |
Date | January 2019 |
Creators | Forsberg, Viktor |
Publisher | Umeå universitet, Institutionen för datavetenskap |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | UMNAD ; 1206 |
Page generated in 0.0014 seconds