Info: Zenodo’s user support line is staffed on regular business days between Dec 23 and Jan 5. Response times may be slightly longer than normal.

Published January 3, 2017 | Version v1
Dataset Open

Performance Anomaly Detection in Microservice Architectures under Continuous Change

  • 1. Student at University of Stuttgart

Description

Supplementary material for the master's thesis
    "Performance Anomaly Detection in Microservice Architectures under Continuous Change"
of
    Thomas F. Düllmann


The folder for the supplemental material is structured as follows:.

  • abstract-de.txt (abstract in german)
  • abstract-en.txt (abstract in english)
  • 01-MicroserviceMetamodel (Eclipse project containing the Ecore meta model and the Xtend generation template)
  • 02-AnomalyDetectionImplementation (Eclipse project containing the implementation of the customized RanCorr approach and the EAR approach)
    • EARExperimentSetup (the Evaluation Setup that is run based on the input data from the experiment and the EAR implementation)
    • Kieker (Kieker and the customized RanCorr approach)
  • 03-ExperimentTools (supplementary microservices and scripts that were used for the experiment setup. The generated services need to be placed next to these files and have to have the folder prefix "gen-")
    • jmeter (the microservice that is used for generating load)
    • jmsserver (the microservice that runs ActiveMQ to bundle the monitoring logs from the services)
    • monitoringserver (the microservice that collects the monitoring data from the jmsserver microservice and stores them)
    • registry (the microservice that is responsible for managing the delays that should be injected)
    • copyResults.sh (simple bash script that masks the scp command to copy the monitoring data from the monitoringserver to the local file system)                  
    • deployPackage.sh (bash script that uploads the docker images to defined remote systems via ssh and initiates the start of the microservices on a Kubernetes cluster using the said docker images)
    • dockerinit.sh (bash script that goes into the microservice folders to compile and package them and create the corresponding Docker images (useful if running minikube for example))
    • kubeinit.sh (bash script that starts the microservices on a Kubernetes cluster that is associated with the kubectl Kubernetes tool)
    • kubeclean.sh (bash script that removes the microservices from a Kubernetes cluster that is associated with the kubectl Kubernetes tool)                             
  • 04-EvaluationData
    • RawData  (the raw data that was extracted from the experiment environment)
      • kieker-monitoring-data (the Kieker monitoring data obtained from the experiment setup)
      • anomalies.log (the log data that shows the injected real anomalies)
      • events.log (log file that contains the timesstamps, the scope and the type of event injections)
      • registry.log (registry microservice log showing the injections of real and change anomalies)
    • Results (results for the evaluation with different thresholds)
      • *folders* (contain the results of the anomaly detection using the threshold represented by the folder name)
      • results.csv (the calulated results in terms of TP/FN/FP/FN for every approach with every threshold)
      • results-calculated.csv (further metrics that were calculated based on the TP/FN/FP/FN values)
  • 05-EvaluationServices (the folders containing the microservices that were used for the evaluation)

 

Files

MastersThesisSupplementaryMaterialTFDuellmann.zip

Files (139.4 MB)

Name Size Download all
md5:186ac0f219764b69357fe0ba05a0521b
139.4 MB Preview Download