Grafana: Metrics Dashboards and Visualization
Grafana turns time-series data into dashboards. It stores almost nothing itself: it queries other systems and renders the results.
Understanding what Grafana is not
This is the most common source of confusion. Grafana does not collect metrics. It needs a data source underneath, most often Prometheus for metrics, Loki for logs, or InfluxDB for time-series. “Install Grafana to monitor my server” is half an answer; the collection layer is the other half.
What it does well
Dashboards combining panels from multiple data sources, template variables so one dashboard serves every host, alerting with routing to many notification channels, and an enormous library of community dashboards you can import by ID rather than building from scratch. That import library is a genuine accelerator: a usable Node Exporter dashboard is about ninety seconds of work.
Where it fits in a homelab
The full Prometheus and Grafana stack is powerful and is more moving parts than many people need. If the goal is seeing CPU, memory, and disk across a few machines, Beszel or Netdata get you there in minutes. Grafana earns its complexity when you have several data sources, want custom queries, or need alerting rules with real logic.
Licensing note
Grafana moved from Apache 2.0 to AGPLv3 in 2021. For self-hosting that changes nothing practical; it matters if you plan to build a product on top of it.
License
Grafana is released under the GNU Affero General Public License v3.0.