Hey Learners! Welcome back. We have basic understanding of Prometheus, as we install and integrate Prometheus with Grafana, Node Exporter, and Kube State services in the last some challenges. In this challenge we will understand the Architecture, components, Features and more about Prometheus. Let's dive deeper...
Prometheus is an open-source system for monitoring services and alerts based on a time series data model. Prometheus collects data and metrics from different services and stores them according to a unique identifier—the metric name—and a time stamp.
1- What is the Architecture of Prometheus Monitoring?
Prometheus can run with both Go and Docker applications. The monitoring application consists of a time-series databases, a user interface, and the PromQL query language, which is a flexible and intelligent query language.
Prometheus gathers metrics via instrumented jobs. The samples can be kept locally. It can also be scanned using rules to record or collect any new time-series via existing data and generate design alerts. Plaintext data can be transmitted over HTTP.
2- What are the Features of Prometheus?
Some of most important aspects of Prometheus:
Metrics are stored as Key-Value pairs, enabling flexible querying and aggregation
Abilities to use PromQL to support a data model's multidimensional feature
Numerous dashboards and graphing modes are available
Supports alerting based on predefined rules
We can configure data retention periods, ensuring efficient storage management.
3- What are the Components of Prometheus?
Prometheus consists of the following Components (Refer Que-1 snapshot)
Prometheus Server:- Prometheus server stores and scrapes metrics. It makes use of the persistence layer. This is the core component responsible for data collection, storage, querying, and alerting.
Exporters:- Exporters are agents or libraries that run alongside your applications and expose metrics in a format Prometheus can understand.
Targets:- These are the endpoints or entities from which Prometheus collects metrics. Targets are configured in the Prometheus server.
Alert Manager:- It is responsible for handling alerts generated by Prometheus also allow you to define alerting rules, group alerts, and send notifications via various channels like email, Slack or custom web-hooks.
4- What database is used by Prometheus?
Prometheus has its own time-series database, which is designed for efficient storage and querying of time-series data. It doesn't use external databases like MySQL or PostgreSQL by default.
5- What is the default data retention period in Prometheus?
The default data retention period in Prometheus is approximately 15 days. however, you can configure this period to your specific needs by adjusting the retention policies.
These are the some common questions you should know about Prometheus. We cover all the Theory with some practice part, from next blogs we will continue with Projects.
Thank you so much for taking the time to read till the end! Hope you found this blog informative.
Feel free to explore more of my content, and don't hesitate to reach out if need any assistance from me or in case of you have any questions.
Find me on:- Hashnode LinkedIn Github
Happy Learning!