Monitoring of the microservice architecture: Ridango case study
Laen...
Kuupäev
Autorid
Ajakirja pealkiri
Ajakirja ISSN
Köite pealkiri
Kirjastaja
Tartu Ülikool
Abstrakt
Monitoring is an essential part of the software production lifecycle, as it provides
feedback about the state and well-being of the observed system, allowing to detect
issues and to make informed decisions based on the gathered data. Whether a system
is sufficiently monitored depends mostly on its purpose, but often also on its general
architecture and structure. In recent years, microservice architecture (MA) has been a
common choice for IT systems of all sizes, favored for the various benefits it provides that
streamline the development and deployment of modern applications. The MA, however,
is significantly more difficult to monitor than most of its predecessors due to the inherent
complexity of its distributed and dynamically changing structure, requiring the user to
navigate through the various levels of virtualization and correlate the gathered metrics
between a service and the rest of the system’s components. Observability tools which
have also gained popularity among the software engineering community, aim to solve
this problem by combining the monitoring data of metrics, logs, and traces into a single
platform while providing real-time analysis of the incoming data with the help of AI
models. In this study, we compare three observability tools: New Relic, IBM Instana,
and Datadog in their ability to monitor microservices in a self-hosted Kubernetes cluster
of a mid-sized IT firm Ridango based on the gathered requirements from a conducted
user requirements analysis. Finally, we describe a proposed monitoring solution for the
company that is adjusted to its business requirements and the particularities of monitoring
the MA.
Kirjeldus
Märksõnad
Software engineering, monitoring, software architecture, microservice architecture