С чего начать Первые шаги трек · 15 ступеней
Linux Labs

Grafana — дашборды

3 мин Grafana 11

Визуализация метрик и логов — источники данных, дашборды, переменные, алерты.

Шпаргалка

5 команд Версия для печати
  • systemctl status grafana-server состояние службы
  • ss -tlnp | grep 3000 слушает ли веб-интерфейс
  • sudo grafana-cli admin reset-admin-password <новый-пароль>
  • sudo grafana-cli plugins install grafana-piechart-panel
  • sudo systemctl restart grafana-server применить плагин
  • data source → Prometheus → Save & Test
  • «No data» → проверь запрос в :9090/graph и диапазон времени
  • как код: /etc/grafana/provisioning/ + JSON-дашборды в git

Обзор

Grafana рисует дашборды по данным из источников (Prometheus, Loki, Postgres и др.). Сама метрики не хранит — только запрашивает и визуализирует. Веб-интерфейс на :3000.

Поток: источник данных (data source) → панель с запросом (PromQL/SQL) → дашборд → (опц.) алерты.

bash
systemctl status grafana-server
ss -tlnp | grep 3000              # слушает ли (см. ss)
# конфиг: /etc/grafana/grafana.ini ; данные/дашборды/плагины: /var/lib/grafana

Конфигурация

  1. Add data source → Prometheus → URL http://prometheus:9090 → Save & Test.
  2. New dashboard → panel → запрос PromQL (rate(http_requests_total[5m])) → выбери визуализацию и единицы (Standard options → Unit).
  3. Переменные дашборда ($instance, $job) — Settings → Variables → Query — для фильтра по хосту/сервису.
  4. Explore (компас слева) — разовые запросы без создания панели.
bash
# плагины и обслуживание через CLI:
sudo grafana-cli plugins list-remote
sudo grafana-cli plugins install grafana-piechart-panel
sudo systemctl restart grafana-server
sudo grafana-cli admin reset-admin-password <новый-пароль>

Рецепты

1

Provisioning (как код)

Источники, дашборды и алерты задаются файлами — воспроизводимо, в git, а не кликами:

/etc/grafana/provisioning/datasources/*.yaml   # data sources
/etc/grafana/provisioning/dashboards/*.yaml    # пути к JSON-дашбордам
/etc/grafana/provisioning/alerting/*.yaml      # алерты

Дашборд экспортируется в JSON (Share → Export) и кладётся в репозиторий.

Неполадки

5

Panel: «No data»

  • Источник проходит Save & Test?
  • Запрос корректный? Проверь сначала в самом Prometheus (:9090/graph).
  • Временной диапазон (справа вверху) не «в будущем»/слишком узкий.
  • У метрики есть нужные лейблы под $переменную?

Data source: bad gateway / connection refused

Grafana не достучалась до источника. URL/порт верный, сеть есть (ss, firewall). Из контейнера — имя сервиса, не localhost.

Забыл пароль admin

sudo grafana-cli admin reset-admin-password <новый-пароль> (или переменная окружения при старте).

Дашборд пропал после переразвёртывания

Если не provisioning — дашборды в БД (/var/lib/grafana/grafana.db). Бэкапь её или храни дашборды как код (JSON в git + provisioning).

502 за обратным прокси

Если Grafana за nginx/haproxy на под-пути — задай root_url и serve_from_sub_path в grafana.ini, иначе ломаются ссылки/логин.

См. также

  • prometheus — Сбор метрик по pull-модели — таргеты, PromQL, экспортеры, алерты.
  • system-monitoring — Нагрузка, CPU, память, I/O — load average, top/htop, vmstat, iostat, free.
Загрузка…