Команда инженеров · свой ЦОД в РФ · своё железо · своя панель · CloudStack + Linstor · MCP · база знаний по self-hosted
Наблюдаемость и аудит

Grafana

Свой экран на всю инфраструктуру: дашборды и алерты поверх Prometheus, Loki, Postgres и десятков источников. Огромная библиотека готовых дашбордов, ядро под AGPL-3.0. Стенд подняли на Fatmetal Cloud Server в связке с Prometheus и сняли живые дашборды с реального сервера.

Июль 2026 ~8 минут чтения Fatmetal Team
Наблюдаемость и аудит Лицензия: AGPL-3.0 Статус: запущен у нас, v13.1.1

Вердикт

Подходит
  • нужен один экран на всю инфру поверх Prometheus, Loki, Postgres и других источников
  • хочется богатые дашборды и алерты без облака, с данными в своем периметре под 152-ФЗ
  • нужна библиотека готовых дашбордов (Node Exporter Full и сотни других) вместо рисования с нуля
Не подходит
  • нет источника данных - Grafana сама ничего не собирает и не хранит, без Prometheus или аналога она пустая
  • нужен один простой сервис с готовым UI на один хост - тогда хватит Beszel или Uptime Kuma
  • встраиваете Grafana в свой SaaS-продукт - учитывайте копилефт AGPL-3.0
Мин. тариф: CPU2-RAM4-DISK50 Рекомендуем: CPU2-RAM4-DISK50 Сложность: low Время запуска: ~2 минуты Главный риск: без источника данных Grafana бесполезна - это слой визуализации, а не сбора Прод-готовность: да (реверс-прокси с TLS уже в стеке)
Что это

Что это и какую задачу решает

Метрики, логи и данные из БД обычно живут в разных местах и по-разному выглядят. Grafana сводит их в один экран: она подключается к источникам данных и рисует по ним графики, таблицы, гейджи и тепловые карты, собранные в дашборды. Одна панель может смешивать метрики из Prometheus, логи из Loki и строку из Postgres - и все это на своем сервере, без выноса в облако.

Важно понять роль: Grafana сама данные не собирает и не хранит. Это слой визуализации поверх чужих источников. Классическая связка - Prometheus собирает метрики, Grafana их рисует. Именно поэтому «везде пишут про Grafana и Prometheus» вместе: это две половины одного решения.

https://45-15-159-158.fatmetal.net/
Дашборд Node Exporter Full в Grafana: гейджи CPU и памяти, графики нагрузки, сети и диска за 6 часов
Готовый дашборд Node Exporter Full на нашем стенде: гейджи CPU и памяти, графики загрузки, сети и диска за 6 часов - все поверх данных Prometheus. Grafana v13.1.1.
Сравнение

Grafana и Prometheus, Kibana и встроенные дашборды

Grafana не заменяет Prometheus - она стоит над ним. Prometheus собирает и хранит метрики, Grafana рисует по ним дашборды и шлет алерты. Это не конкуренты, а пара; в нашем разборе Prometheus мы показываем нижний слой, здесь - верхний.

Kibana заточена под экосистему Elastic. Grafana мультиисточниковая: Prometheus и Loki для метрик и логов, но также InfluxDB, Postgres/MySQL, Elasticsearch, Zabbix, CloudWatch - десятки коннекторов, поэтому она и стала универсальным экраном.

Встроенные дашборды Beszel или Uptime Kuma монолитны и хороши для своей узкой задачи. Grafana - универсальный слой: если источников больше одного и нужен единый вид, она собирает все в одном месте.

ИнструментРольИсточникиПрофиль
Grafanaвизуализациядесятки (Prometheus, Loki, SQL...)универсальный экран поверх любых данных
Prometheusсбор метриксвои экспортерынижний слой, данные для Grafana
Kibanaвизуализацияв основном Elasticсильна в логах Elastic, уже по источникам
Beszel / Uptime Kumaмонолиттолько своеузкая задача с UI из коробки
Архитектура

Тех-стек и как это работает

Grafana - один Go-бэкенд с веб-интерфейсом. Сама по себе она пустая: работа начинается, когда подключен источник данных. На стенде мы подняли ее в паре с Prometheus и провижинингом настроили все автоматически:

grafana/grafana:v13.1.1 (Go) источник данных Prometheus дашборд Node Exporter Full (провижининг) caddy:2 (TLS)

Провижининг - ключевая для эксплуатации вещь: источники данных и дашборды описываются файлами и подхватываются при старте, без ручной настройки в UI. Так стенд поднимается воспроизводимо. Панели строятся на запросах к источнику (для Prometheus - на PromQL), переменные-шаблоны позволяют переключать хост или инстанс прямо в дашборде.

Источники данных

Источники, дашборды и алерты

Первый шаг после установки - подключить источник. В нашем случае это Prometheus; на скрине - страница источников данных с подключенным и выбранным по умолчанию Prometheus.

https://45-15-159-158.fatmetal.net/connections/datasources
Страница источников данных в Grafana с подключенным Prometheus по умолчанию
Источники данных: Prometheus подключен и помечен как default. Отсюда Grafana тянет метрики для всех дашбордов. Поддерживаются десятки других коннекторов.

Дальше - дашборды. Не обязательно рисовать с нуля: у Grafana огромная библиотека готовых (grafana.com/dashboards), которые импортируются по id - например Node Exporter Full (1860), что на первом скрине. И алерты: unified alerting в самой Grafana умеет проверять условия и слать тревоги в Telegram, webhook или наш ntfy - альтернатива правилам в Prometheus/Alertmanager, когда хочется все держать в одном интерфейсе.

В маркетплейсе Fatmetal

Не хотите ставить руками?

Этот стек есть в маркетплейсе Fatmetal - можно не собирать дашборды с нуля вручную. Заказываете сервер, за пару минут получаете рабочий домен, валидный TLS и готовую Grafana - остается подключить источник данных.

Рекомендуемая конфигурация:
2 vCPU · 4 ГБ RAM · 50 ГБ NVMe от 450 ₽/мес

Развернуть в 1 клик →
Развертывание

Развертывание на Fatmetal

Стенд подняли на тарифе Fatmetal Cloud Server (CPU2-RAM4-DISK50) с Ubuntu 24.04 и Docker, в связке с Prometheus.

  1. Сервер и Docker

    Fatmetal Cloud Server на Ubuntu 24.04 с преднастроенным Docker. Домен вида 45-15-159-158.fatmetal.net резолвится сам.

  2. Grafana и источник

    Поднимаем Grafana в Docker, провижинингом подключаем источник Prometheus и импортируем дашборд Node Exporter Full. Пароль админа задаем через переменную окружения.

  3. TLS на Caddy

    Caddy берет сертификат Let's Encrypt на magic-DNS-домен и отдает Grafana в корне. Наружу только 80 и 443.

  4. Первый вход

    Открываем адрес, входим как admin с заданным паролем. Дашборды уже на месте благодаря провижинингу.

MCP

Стенд развернут не руками: агент Fatmetal заказал сервер через MCP, поднял связку Grafana + Prometheus и снял живые дашборды. Экраны и цифры ниже - с этого стенда.

Замеры

Что измерили после запуска

Замеры с живого стенда, docker stats в простое. Grafana - основной потребитель памяти в связке, но и он невелик.

Версия Grafanav13.1.1
RAM Grafana в простое~147 MiB
Весь стек (с Prometheus и экспортерами)~274 MiB
Образ Grafanaчасть из ~2.17 GB стека
Источник данныхPrometheus, подключен по умолчанию
Внешний ответHTTP 200, TLS Let's Encrypt, valid
Тариф стендаCPU2-RAM4-DISK50

Grafana в простое ест около 147 MiB. Потребление растет с числом одновременно открытых дашбордов и тяжестью запросов, но для типовой команды тарифа CPU2-RAM4-DISK50 с запасом хватает.

Грабли

Где может сломаться

Все панели дашборда: No data / N/A

Что происходит: дашборд импортирован, данные в Prometheus есть, но панели пусты - значит Grafana не достучалась до источника. Частая причина - неверный URL источника (например, забыт префикс пути, если Prometheus живет под поддиректорией).

Решение: проверьте URL источника в разделе Data sources и переменные дашборда (Job, Instance). У нас панели ожили после исправления URL Prometheus на путь с префиксом /prom.

Grafana без источника бесполезна

Свежая Grafana - пустой экран. Пока не подключен Prometheus или другой источник, показывать нечего. Это слой визуализации, а не сбора - планируйте источник заранее.

Безопасность

Безопасность и обновления

У Grafana своя аутентификация (логин/пароль, а в enterprise - SSO/LDAP). Пароль админа задавайте через переменную окружения, а не оставляйте дефолтный. Веб закрываем реверс-прокси с TLS (у нас Caddy); наружу только 80 и 443, сама Grafana слушает внутри docker-сети. Права раздаются по ролям и папкам, есть публичные дашборды - выставляйте их осознанно.

Обновление - смена тега образа и docker compose up -d; настройки и история лежат в docker-томе. Лицензия ядра - AGPL-3.0 (копилефт): для внутреннего self-host это не проблема, но при встраивании Grafana в собственный продукт условия стоит учесть.

Не ваш выбор

Когда это НЕ ваш выбор

Нет источника данных

Если нечего визуализировать - Grafana не нужна. Сначала появляется Prometheus (или Loki, БД), потом Grafana поверх. Ставить ее «на всякий случай» смысла нет.

Один простой сервис на один хост

Для базового мониторинга одного сервера проще цельные Beszel или Uptime Kuma с UI из коробки. Grafana раскрывается, когда источников несколько и нужен единый экран.

Встраивание в свой SaaS

AGPL-3.0 - копилефт. Для внутреннего использования это не мешает, но если вы встраиваете Grafana в продукт для клиентов, оцените лицензионные последствия.

FAQ

Частые вопросы

Grafana заменяет Prometheus?

Нет. Prometheus собирает и хранит метрики, Grafana рисует по ним дашборды. Это пара, а не конкуренты.

С какими источниками работает?

С десятками: Prometheus, Loki, InfluxDB, Postgres/MySQL, Elasticsearch, Zabbix, CloudWatch и другие. Одна панель может смешивать несколько источников.

Надо рисовать дашборды с нуля?

Нет. У Grafana большая библиотека готовых дашбордов на grafana.com, они импортируются по id - например Node Exporter Full (1860).

Есть ли алерты?

Да, unified alerting: Grafana сама проверяет условия и шлет тревоги в Telegram, webhook или ntfy - альтернатива Alertmanager, когда все хочется держать в одном интерфейсе.

Что такое провижининг?

Описание источников и дашбордов файлами, которые Grafana подхватывает при старте, без ручной настройки в UI. Так стенд поднимается воспроизводимо.

Какая лицензия?

Ядро под AGPL-3.0 (self-host свободен). Часть enterprise-фич - платные; AGPL стоит учитывать при встраивании в свой продукт.

Итог

Grafana - универсальный экран на всю инфраструктуру: дашборды и алерты поверх Prometheus, Loki, Postgres и десятков других источников, все на своем сервере под 152-ФЗ. Сама она данные не собирает - это верхний слой над источником, поэтому и живет в паре с Prometheus. Стек легкий (Grafana ~147 MiB, вся связка ~274 MiB), готовые дашборды импортируются по id, провижининг поднимает стенд воспроизводимо, TLS через Caddy в комплекте. Если мониторинг вырос из одного простого сервиса и источников стало несколько - Grafana собирает их в один вид, а тревоги уводит в ntfy.

Рекомендуемая конфигурация для установки:
2 vCPU · 4 ГБ RAM · 50 ГБ NVMe

Не хотите устанавливать вручную?

Запустите Grafana на этой конфигурации автоматически - от 450 ₽/мес.

Запустить Grafana →
Анонсы новых разборов в Telegram-канале Новые гайды и карточки в маркетплейсе первыми @fatmetal_channel →

Этот стек у нас запущен на тарифе CPU2-RAM4-DISK50. Нашли баг в гайде - напишите, поправим в течение дня.