Guide to Container Monitoring with Prometheus and Grafana
This project uses a monitoring system to keep track of the health and performance of a multi-container application. It uses Prometheus to collect metrics, Grafana to visualize them, and Alertmanager to send notifications when something goes wrong. Docker Compose makes it easy to run all these components together.
Source Repository: https://github.com/samin-irtiza/container-monitoring
%%{init: {"flowchart": {"defaultRenderer": "elk"}} }%%
flowchart TD
subgraph DockerCompose["Docker Compose"]
A1["Prometheus"]
A2["Alertmanager"]
A5["Grafana"]
subgraph Exporters["Exporters"]
A3["Node Exporter"]
A4["Blackbox Exporter"]
A9["cAdvisor"]
end
end
subgraph PrometheusConfig["Prometheus Configuration"]
A7["prometheus.yml"]
A8["rules.yml"]
end
A6["PromQL"] -->|Executed by| A1
A1 -->|Reads configurations| PrometheusConfig
A1 -->|Sends alerts| A2
A1 -->|Scrapes metrics| Exporters
A8 -->|Uses in expressions| A6
A5 -->|Visualizes metrics| A1
A5 -->|Uses for queries| A6
Exporters -->|Exposes metrics| A1