BARO: Robust Root Cause Analysis for Microservices via Multivariate Bayesian Online Change Point Detection
Description
Artifacts for the paper titled BARO: Robust Root Cause Analysis for Microservices via Multivariate Bayesian Online Change Point Detection.
This artifact repository contains 3 compressed folders, as follows:
File Name | Benchmark System |
fse-ob.zip | Online Boutique |
fse-ss.zip | Sock Shop |
fse-tt.zip | Train Ticket |
Each zip file contains the collected data from the corresponding microservice benchmark systems (e.g., fse-ob.zip contains metrics data collected from the Online Boutique system).
Data description
To collect the metrics data, we deploy three benchmark microservice systems: Online Boutique, Sock Shop, and Train Ticket, on a Kubernetes cluster consisting of one master node and five worker nodes. Then, we deploy a monitoring system to monitor and collect resource-level and service-level metrics. To generate traffic, we use the load generators supplied by these systems and tailor them to explore all services with a load of 40-50 requests per second. Initially, we operate the applications normally to gather metrics data under normal conditions. Then, we inject faults into the running services. We execute into the designated container using kubectl exec. For CPU hog and memory leak, we use stress-ng to stress the container resource. For network delay and packet loss, we use tc (traffic control) to manipulate the traffic of the container. Specifically, we inject faults into five targeted services of Sock Shop (carts, catalogue, orders, payment, and user), five targeted services of Online Boutique (adservice, cartservice, checkoutservice, currencyservice, and productcatalogue), and five targeted services of Train Ticket (ts-auth-service, ts-order-service, ts-route-service, ts-train-service, ts-travel-service). For each combination of fault type and targeted service, we repeat the operation (i.e., fault injection and metrics data collection) five times, resulting in 100 failure cases for each benchmark microservice system.
Code
The code to reproduce the experimental results in the paper is available at https://github.com/phamquiluan/baro.
Files
fse-ob.zip
Additional details
Software
- Repository URL
- https://github.com/phamquiluan/baro/tree/main
- Programming language
- Python
- Development Status
- Active