Grafana ставится на сервер с Ubuntu примерно за 15 минут: подключаете официальный APT-репозиторий, устанавливаете пакет, запускаете службу и открываете панель в браузере по адресу вида http://IP-сервера:3000. Сама Grafana ничего не измеряет — она рисует графики по числам, которые ей отдаёт отдельная база метрик, чаще всего Prometheus или Zabbix. Поэтому «установка Grafana» на практике всегда означает установку двух-трёх программ сразу. Минимум под такую связку — 2 ГБ оперативной памяти, и тарифы с такой памятью есть почти у каждого хостера из раздела VPS с Ubuntu.
Материал написан для тех, кто раньше не собирал мониторинг руками. Разберём, чем Grafana отличается от сборщика метрик, сколько ресурсов реально нужно, как поставить связку Grafana + Prometheus + node_exporter командами из репозитория, как собрать первый дашборд и как закрыть панель от посторонних, чтобы графики вашего сервера не индексировались поисковиками.
Что делает Grafana, а что за неё делает сборщик метрик
Grafana — это веб-панель для визуализации. Она умеет подключаться к десяткам источников данных, строить графики, таблицы и индикаторы, раскладывать их по дашбордам — экранам, где собраны нужные графики, — и слать уведомления, когда значение выходит за границу. Собственных измерений у неё нет: если не подключить источник, вы увидите пустой интерфейс.
Метрики собирает отдельная программа. Prometheus раз в 15 секунд опрашивает так называемые экспортёры — маленькие агенты, которые отдают текущие числа по HTTP. Zabbix работает иначе: его агент сам отправляет данные серверу Zabbix на порт 10051, а сервер складывает их в обычную базу данных. В обеих схемах Grafana стоит сверху и только читает готовые ряды.
Из-за этого разделения ошибка новичка выглядит одинаково: человек ставит Grafana, открывает :3000, видит логин-форму, входит — и не понимает, где графики нагрузки. Графиков нет, потому что нечему их питать. Сначала источник данных, потом панель.
Grafana с Prometheus или Zabbix: что выбрать под свою задачу
Prometheus проще в установке и хранит данные в собственном файловом формате — никакой отдельной СУБД, то есть системы управления базами данных, поднимать не нужно. Он идеален, когда серверов немного, а метрики нужны технические: загрузка ядер, память, диск, сетевой трафик, ответы веб-сервера.
Zabbix тяжелее: ему нужны MySQL или PostgreSQL, веб-интерфейс на PHP и собственный агент на каждой машине. Зато он умеет автообнаружение узлов, инвентаризацию оборудования и сложные триггеры из коробки. Разворачивание Zabbix подробно описано в гайде по установке Zabbix — если вы уже используете его, Grafana подключается к нему как источник данных за пять минут.
Сравнение по ресурсам и сложности выглядит так.
| Связка | Что нужно поставить | Минимум памяти | Когда брать |
|---|---|---|---|
| Grafana + Prometheus + node_exporter | 3 пакета, без СУБД | 2 ГБ | 1–20 серверов, технические метрики |
| Grafana + Zabbix | Сервер, агент, СУБД, веб-часть | 4 ГБ | Парк от 20 машин, сетевое оборудование |
| Grafana + внешний облачный источник | 1 пакет | 512 МБ | Только визуализация чужих данных |
| Без Grafana, лёгкий пингер | 1 контейнер | 512 МБ | Проверка доступности сайтов |
Сколько памяти и диска нужно под панель мониторинга
Одна Grafana занимает мало: службе хватает 512 МБ оперативной памяти, потому что настройки и пользователей она держит в файле SQLite в каталоге /var/lib/grafana. Как только рядом появляется Prometheus, аппетит растёт: сборщик держит в памяти свежие серии метрик, и комфортный минимум для пары — 2 ГБ.
Диск расходуется на историю. По умолчанию Prometheus хранит метрики 15 дней, и данные 20 хостов за месяц занимают ориентировочно 12–24 ГБ. Один сервер с базовым node_exporter укладывается в 300–600 МБ за 15 дней, поэтому диска на 10 ГБ хватает для старта.
Вывод простой: берут не самый дешёвый тариф, а тариф с 2 ГБ памяти и NVMe-диском. На медленном HDD сборщик подтормаживает уже на десятке хостов.
| Провайдер | Стартовая цена | Что в базовом тарифе | Под что хватит |
|---|---|---|---|
| Cloudcore | от 59 ₽/мес | 1 ядро, 1 ГБ, 10 ГБ NVMe | Только Grafana к внешнему источнику |
| Hosting-Russia | от 99 ₽/мес | Базовая конфигурация раздела | Тест связки на 1 хосте |
| HostVDS | от 127 ₽/мес | 1 ядро, 1 ГБ, 10 ГБ NVMe | Тест связки на 1 хосте |
| RuVDS | от 139 ₽/мес | 1 ядро, 0,5 ГБ, 10 ГБ HDD | Мало для Prometheus, нужен апгрейд |
| Selectel | от 200 ₽/мес | 1 ядро, 1 ГБ, 10 ГБ NVMe | Grafana + Prometheus на 3–5 хостов |
| Timeweb Cloud | от 477 ₽/мес | 1 ядро, 1 ГБ, 15 ГБ NVMe | Grafana + Prometheus на 3–5 хостов |
Данные проверены 03.09.2026.
Всего в разделе собрано 44 предложения на Linux со стартовыми ценами от 59 до 651 ₽/мес. Для личного мониторинга логично взять вариант из подборки недорогих VPS и добить память до 2 ГБ апгрейдом.
Установка Grafana на Ubuntu из официального репозитория
Пакет Grafana есть в стандартных репозиториях Ubuntu, но там он отстаёт на год и больше. Правильный путь — подключить репозиторий разработчика. Репозиторий — это сервер с готовыми пакетами программ, откуда система их скачивает; после подключения обновления будут приходить обычной командой apt upgrade. Все команды выполняются от root или через sudo.
Порядок действий на Ubuntu 22.04 и 24.04 одинаковый.
- Обновите список пакетов и поставьте утилиты:
apt update && apt install -y apt-transport-https wget. Они нужны, чтобы APT ходил по HTTPS и проверял подписи. - Скачайте GPG-ключ репозитория в каталог
/etc/apt/keyrings/. Ключ подтверждает, что пакеты действительно собраны разработчиком, а не подменены по дороге. - Добавьте строку репозитория в
/etc/apt/sources.list.d/grafana.list, указав в ней путь к скачанному ключу. - Выполните
apt updateещё раз, затемapt install -y grafana. Пакет весит около 100 МБ и тянет за собой только системные зависимости. - Включите автозапуск и стартуйте службу:
systemctl enable --now grafana-server. Команда одновременно прописывает запуск при перезагрузке и поднимает сервис сейчас. - Проверьте состояние:
systemctl status grafana-server. В выводе должно бытьactive (running), иначе смотрите причину вjournalctl -u grafana-server -n 50.
После старта Grafana слушает порт 3000 на всех интерфейсах. Откройте http://IP-сервера:3000 и войдите с логином admin и паролем admin — интерфейс сразу потребует задать новый. Пароль от 16 символов здесь не перестраховка: адрес панели быстро находят сканеры.
Где лежат настройки и данные Grafana
Основной конфигурационный файл — /etc/grafana/grafana.ini. В нём меняют порт, домен, режим анонимного доступа и параметры почты для уведомлений. Файл разбит на секции в квадратных скобках, и почти все строки в нём закомментированы символом ; — чтобы параметр заработал, точку с запятой нужно убрать.
Пользователи, дашборды и подключённые источники хранятся в базе SQLite по пути /var/lib/grafana/grafana.db. Это один файл, и его достаточно скопировать, чтобы получить резервную копию всей настройки панели. При переезде на другой сервер вы ставите чистую Grafana, останавливаете службу, кладёте на место старый файл и запускаете снова — все дашборды возвращаются.
После каждой правки grafana.ini службу перезапускают командой systemctl restart grafana-server, иначе изменения не подхватятся. Копирование конфига и базы стоит поставить на расписание сразу же: файл базы обычно весит меньше 5 МБ, поэтому ежедневная копия почти ничего не занимает. Логи службы пишутся в journald и читаются командой journalctl -u grafana-server — туда смотрят, когда панель не открывается после правки конфига.
Установка Prometheus и node_exporter
Prometheus — это и есть база, из которой Grafana читает числа. Он ставится одним исполняемым файлом: распаковываете архив с готовой сборкой, кладёте prometheus в /usr/local/bin/, конфиг — в /etc/prometheus/prometheus.yml, данные — в /var/lib/prometheus.
Рядом ставится node_exporter — агент, который отдаёт метрики хоста: загрузку ядер, свободную память, занятость диска, счётчики сети. Он слушает порт 9100 и отвечает на запрос /metrics простым текстом — несколько сотен строк вида «имя метрики и значение».
Дальше связываете их между собой.
- В
prometheus.ymlв секцииscrape_configsдобавьте job — задание на опрос — с цельюlocalhost:9100. Интервал опроса по умолчанию — 15 секунд, для одного сервера этого достаточно. - Запустите Prometheus как systemd-службу и убедитесь, что он поднялся на порту 9090.
- Откройте в браузере
http://IP-сервера:9090/targets— цель node_exporter должна быть в состоянииUP. Если она красная, чаще всего мешает закрытый порт или опечатка в адресе. - Чтобы добавить второй сервер, поставьте на него node_exporter и допишите адрес в тот же job. Сам Prometheus нужен в одном экземпляре.
Важная деталь: порты 9090 и 9100 нельзя оставлять открытыми в интернет — метрики раскрывают имена интерфейсов, точки монтирования и версию ядра. Между серверами их пускают по приватной сети провайдера либо ограничивают файрволом по IP.

Подключение источника данных и первый дашборд
Вернитесь в Grafana. В меню Connections выберите Data sources, добавьте тип Prometheus и укажите адрес http://localhost:9090. Нажмите Save & test — панель должна ответить, что источник доступен. Если ответа нет, проверьте, что Prometheus запущен, а адрес указан без лишнего слэша на конце.
Собирать первый дашборд с нуля не нужно. У сообщества есть готовые наборы панелей, которые импортируют по числовому номеру: в разделе Dashboards выбираете Import, вводите номер, указываете созданный источник данных — и получаете 30–40 готовых графиков по хосту сразу. Самый известный набор под node_exporter содержит блоки по процессору, памяти, дискам и сети.
После импорта пройдитесь по графикам и уберите лишнее. Дашборд на 40 панелей открывается медленно и на слабой машине грузит браузер, а реально смотрят обычно на пять-шесть показателей: загрузку ядер, свободную память, свободное место на диске, load average и сетевой трафик.
Как закрыть панель Grafana от посторонних
Панель на порту 3000 работает по открытому HTTP, без шифрования. Пароль в такой схеме уходит на сервер в читаемом виде, а сам порт находят автоматические сканеры за считаные часы после запуска сервера. Поэтому сразу после установки панель прячут.
Рабочая схема выглядит так: Grafana слушает только 127.0.0.1:3000, снаружи стоит веб-сервер nginx в режиме обратного прокси, наружу открыты только порты 80 и 443, а сертификат выпускают бесплатно через Let’s Encrypt: он живёт 90 дней и продлевается автоматически.
Файрвол настраивается в три команды через UFW: разрешить 22, 80 и 443, запретить всё остальное входящее, включить правила. После этого прямой заход на :3000 перестаёт работать, а панель открывается по домену с замком в адресной строке. Подробнее правила разобраны в материале про настройку файрвола на Linux-сервере.
Дополнительно в grafana.ini выключают регистрацию новых пользователей и анонимный просмотр, а администратору включают двухфакторный вход.

Сколько хранить метрики и как не забить диск
Prometheus по умолчанию удаляет данные старше 15 дней. Этот срок называют retention — глубина хранения истории. Меняют его ключом запуска --storage.tsdb.retention.time: например, значение 90d оставит историю за квартал. Увеличение срока в 6 раз примерно во столько же раз увеличивает занятое место, поэтому срок подбирают под размер диска.
Ориентиры простые. Один хост с базовым набором метрик — это 20–40 МБ в сутки, десять хостов — 200–400 МБ в сутки. Отсюда и получается диапазон 12–24 ГБ на 20 хостов за месяц: разброс даёт количество экспортёров и частота опроса.
| Число хостов | Retention | Место под метрики | Рекомендуемый диск |
|---|---|---|---|
| 1 | 15 дней | 0,3–0,6 ГБ | 10 ГБ |
| 5 | 30 дней | 3–6 ГБ | 15 ГБ |
| 20 | 30 дней | 12–24 ГБ | 40 ГБ |
| 20 | 90 дней | 36–72 ГБ | 100 ГБ |
Если история нужна за год, метрики прореживают: свежие данные хранят с шагом 15 секунд, а старые — усреднёнными до пяти минут. Это отдельная настройка долговременного хранилища, и на одном сервере с 20 хостами она обычно не нужна.
Уведомления: чтобы не смотреть в графики круглосуточно
Дашборд полезен при разборе инцидента, но караулить его руками бессмысленно. В Grafana есть встроенные правила оповещений: вы задаёте условие, период и канал доставки, и панель сама отправляет сообщение, когда условие держится дольше заданного времени.
Разумный стартовый набор — четыре правила: свободное место на диске меньше 15 %, загрузка процессора выше 90 % дольше 10 минут, свободная память меньше 10 %, и цель в Prometheus не отвечает дольше 5 минут. Условие «дольше N минут» здесь ключевое: без него вы получите десятки ложных срабатываний на коротких всплесках. Порог по диску лучше ставить именно на 15 %, а не на 5 % — за оставшиеся проценты вы успеете почистить логи без аварийной остановки сервисов.
Каналы доставки настраиваются в разделе Contact points. Самый удобный вариант для одного администратора — бот в мессенджере, самый универсальный — почта, но для неё в grafana.ini придётся прописать SMTP-сервер, иначе письма просто не уйдут. Более широкий обзор схем оповещения есть в гайде о том, как настроить мониторинг сервера.
Частые ошибки при установке Grafana
Большая часть проблем возникает не в установке, а в том, что делают сразу после неё. Отдельно про диск: HDD под метрики — плохая идея, потому что Prometheus пишет мелкими порциями каждые 15 секунд.
Ниже — случаи, которые встречаются чаще всего при первой настройке связки.
- Оставить пароль
adminи открытый порт 3000: панель находят сканеры, а через источник данных видно внутреннюю сеть. - Ставить мониторинг на тот же сервер, за которым он следит: когда машина ляжет, уведомление отправлять будет некому.
- Брать тариф с 512 МБ памяти под связку с Prometheus: система будет аварийно закрывать сборщик из-за нехватки памяти.
- Оставлять retention 15 дней, а потом искать причину аварии месячной давности, которой в базе уже нет.
- Импортировать десяток чужих дашбордов сразу: интерфейс становится медленным, а нужные графики теряются.
- Забыть про бэкап
/var/lib/grafana/grafana.dbи потерять все настроенные панели при переустановке.
Частые вопросы
Можно ли поставить Grafana без Prometheus? Да, если у вас уже есть другой источник данных — Zabbix, база InfluxDB, MySQL с вашими бизнес-метриками. Одной Grafana хватает 512 МБ памяти. Но без источника графиков не будет: она не собирает метрики сама.
Какой порт использует Grafana и можно ли его сменить? По умолчанию 3000/TCP. Порт меняется параметром http_port в секции [server] файла /etc/grafana/grafana.ini. Смена порта не заменяет файрвол — она лишь снижает шум от сканеров.
Сколько ресурсов заказывать под мониторинг небольшого проекта? Для панели плюс Prometheus на 1–5 хостов достаточно 1 ядра, 2 ГБ памяти и 10–15 ГБ NVMe. Такие конфигурации в каталоге начинаются примерно от 200 ₽/мес, а варианты с 2 ядрами и 2 ГБ встречаются от 145 ₽/мес.
Что выбрать новичку — Grafana с Prometheus или Zabbix? До десяти серверов ставьте связку с Prometheus: меньше компонентов, не нужна СУБД, хватает 2 ГБ памяти. Zabbix оправдан на парке от 20 машин с сетевым оборудованием.
Почему дашборд импортировался, но панели пустые? Причина обычно одна: при импорте не выбран источник данных. Проверьте страницу /targets — если цель в состоянии DOWN, node_exporter не запущен либо его порт 9100 закрыт файрволом.
Нужен ли для панели российский дата-центр? Для личного мониторинга — нет, важнее задержка до наблюдаемых серверов. Но если Grafana собирает данные о клиентах или сотрудниках, размещение внутри страны упрощает вопросы с персональными данными, и такие площадки есть в разделе VPS в России.
Итог
Установка Grafana занимает 15 минут, а рабочий мониторинг — примерно час: подключить репозиторий, поставить панель, поднять рядом Prometheus с node_exporter на порту 9100, импортировать дашборд и закрыть всё это обратным прокси с сертификатом. Ресурсов нужно немного — 2 ГБ памяти и 10–15 ГБ быстрого диска, при retention 15 дней один хост занимает меньше 600 МБ.
Главное решение принимается до установки: не ставьте мониторинг на ту же машину, за которой он следит, и не экономьте на памяти — на 512 МБ Prometheus падает под нагрузкой. Подобрать отдельный сервер под панель можно в разделе VPS на Linux, где собрано 44 предложения со стартовыми тарифами от 59 ₽/мес.