Aller au contenu principal

MSTG: A Flexible and Scalable Microservices Infrastructure Generator

The last few years in the software engineering field have seen a paradigm shift from monolithic applications towards architectures in which the application is split in various smaller entities (i.e., microservices) fueled by the improved availability and ease of use of containers technologies such as Docker and Kubernetes. Those microservices communicate with each other using networking technologies in place of function calls in traditional monolithic software. In order to be able to evaluate the potential, the modularity, and the scalability of this new approach, many tools, such as microservices benchmarking, have been developed with that objective in mind. Unfortunately, many of these tend to focus only on the application layer while not taking the underlying networking infrastructure into consideration, leading to difficulties in developing and testing telemetry tools. In this paper, we introduce and evaluate the performance of a new modular and scalable tool, MicroServices Topology Generator (MSTG), that allows one to simulate both the application and networking layers of a microservices architecture. Based on a topology described in YAML format, MSTG generates the config- uration file(s) for deploying the architecture on either Docker Compose or Kubernetes. Furthermore, MSTG encompasses telemetry tools, such as Application Performance Monitoring (APM) relying on OpenTelemetry and in-band telemetry (e.g., IOAM). This paper also discusses a use case in whic MSTG finds a suitable usage.

Auteur(s)