Architecture Runtime Model Maintenance for Microservice Systems (bibtex)
Reference:
, "Architecture Runtime Model Maintenance for Microservice Systems", Master's thesis, Hasso Plattner Institute, University of Potsdam, Germany, 2019.
Links:
@MastersThesis{Detje.2019.Architecture,
AUTHOR = {Detje, Stephan},
TITLE = {{Architecture Runtime Model Maintenance for Microservice Systems}},
YEAR = {2019},
MONTH = {April},
SCHOOL = {Hasso Plattner Institute, University of Potsdam, Germany},
OPTacc_ABSTRACT = {Self-adaptive applications have the ability to adjust their structure and behavior to external and internal conditions at runtime. In order to make sustainable self-adaptation decisions, a knowledgebase has to be enriched with data about the system. In microservice systems, the knowledge about the system is distributed between multiple service instances. Therefore, gathering this data is challenging. Moreover, infrastructural tools like container orchestration systems manage the complexity of distribution and hide it from the monitored application. This shift alters the way system data is collected and composed into a single runtime model. Moreover, the question arises, whether the model itself should also be distributed alongside the services. Based on the requirements we deduct from microservice related principles, we propose an event-driven solution to generate CompArch runtime models for microservice systems. The resulting model is constantly updated to reflect the current system accurately. The solution mainly relies on data from container orchestration and tracing systems. It is adaptable, implementation- and runtime-independent, principally non-intrusive, and can easily be extended to integrate additional data sources. We evaluate our solution with a case study and inspect the latency from triggering a change until it is propagated into the model. Based on our experiments we identify issues regarding applicability and scalability of the prototype and provide a perspective on how to resolve them. We conclude that the CompArch modeling language can be used to represent microservice systems, however, it has some shortcomings. For instance, expressing transitive dependencies between services is not supported. Altogether, we envision a highly flexible, generic and self-configuring monitoring solution, which can be applied to a broad set of microservice applications. In order to promote these characteristics, we discuss directions for future research. One open question is, how the configuration of a cluster, e.g., the number of master and worker nodes, affects the performance of our solution. Furthermore, we included only some tools and data sources in this initial proposal. It would be interesting to conduct a comparison study, for instance between multiple container orchestration systems, to find out which ones have the best performance or provide the most data.  }
}
Copyright notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.
Powered by bibtexbrowser