Найти в Дзене
WebHOST1.ru

Как настроить мониторинг сервера с Grafana и Prometheus — за 15 минут на хостинге Webhost1

Оглавление

Когда что-то идёт не так с сервером, администратор узнаёт об этом по звонку от клиента. Или — в лучшем случае — по резкому всплеску нагрузки в топе. Но зачем ждать, если можно следить за состоянием системы в реальном времени, получать уведомления о проблемах и понимать, что происходит — не догадываясь, а зная.

Мы в Webhost1 помогаем нашим клиентам развёртывать полноценный мониторинг на базе Grafana, Prometheus и Node Exporter. Это решение, которое можно установить на любой наш VDS — и за несколько минут получить прозрачную картину состояния инфраструктуры: от загрузки CPU до свободного места на дисках.

Что это за инструменты и как они работают

Мониторинг на связке Prometheus и Grafana устроен просто, но эффективно:

  • Node Exporter — агент, собирающий метрики о работе системы: загрузка CPU, память, диск, сеть. Публикует их на порту 9100.
  • Prometheus — хранилище и обработчик данных. Он сам опрашивает Node Exporter и сохраняет метрики во временных рядах. С ним можно работать через язык запросов PromQL.
  • Grafana — визуальный интерфейс. Она подключается к Prometheus и строит дашборды — понятные графики, шкалы, алерты.

Такая архитектура позволяет в любой момент увидеть, что происходит с сервером. Например, какой процесс начал потреблять всю оперативную память в 3 часа ночи. Или почему вырос пинг на одном из интерфейсов. Весь стек работает на Linux и легко разворачивается как вручную, так и через автоматизацию.

Установка Prometheus и Node Exporter

wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
tar -xvzf prometheus-2.52.0.linux-amd64.tar.gz
cd prometheus-2.52.0.linux-amd64

Создайте базовый конфиг prometheus.yml:

global:
scrape_interval: 15s

scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']

Запуск:

./prometheus --config.file=prometheus.yml

Параллельно установите Node Exporter:

wget https://github.com/prometheus/node_exporter/releases/download/v1.8.0/node_exporter-1.8.0.linux-amd64.tar.gz
tar -xvzf node_exporter-1.8.0.linux-amd64.tar.gz
cd node_exporter-1.8.0.linux-amd64
./node_exporter &

Prometheus начнёт собирать метрики с Node Exporter по адресу localhost:9100.

Установка Grafana

Для Debian/Ubuntu:

sudo apt-get install -y apt-transport-https
wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
sudo apt-get update
sudo apt-get install grafana

Старт и автозагрузка:

sudo systemctl start grafana-server
sudo systemctl enable grafana-server

После запуска Grafana будет доступна на http://ваш_IP:3000. Стандартный логин/пароль: admin/admin. Обязательно измените его при первом входе.

Подключение источника данных

В интерфейсе Grafana перейдите в “Settings” → “Data Sources” → “Add data source”.

  • Выберите Prometheus.
  • Введите http://localhost:9090 в поле URL.
  • Нажмите “Save & Test”.

Если Prometheus работает — увидите сообщение “Data source is working”.

Импорт готового дашборда

Графики можно создать вручную, но проще использовать готовый дашборд с ID 1860 (Node Exporter Full):

  • Нажмите “Create” → “Import”.
  • Вставьте ID 1860, нажмите “Load”.
  • Выберите источник данных (Prometheus).
  • Нажмите “Import”.

Появится дашборд с метриками: CPU, RAM, диск, сеть. Всё уже готово — остаётся только наблюдать.

Настройка алертов

Grafana позволяет настроить алерты — например, присылать уведомление, если нагрузка CPU больше 90% 5 минут подряд.

  • Перейдите в “Alerting” → “Contact points”.
  • Укажите способ уведомлений — email, Telegram, Slack.
  • Создайте Alert Rule в нужной панели (например, по CPU).
  • Укажите порог, интервал, способ уведомления.

Так вы узнаете о проблеме ещё до того, как она станет критичной.

Безопасность и устойчивость

  • Подключите HTTPS с помощью Certbot.
  • Включите вход через GitHub или LDAP.
  • Настройте резервное копирование SQLite-базы Grafana:
sqlite3 /var/lib/grafana/grafana.db .dump > grafana_backup.sql
  • Обновляйте Grafana и плагины:
sudo apt-get update && sudo apt-get upgrade grafana

Почему это важно и как мы помогаем

Мы в Webhost1 знаем, насколько дорого может стоить незамеченный сбой. Именно поэтому:

  • наши VDS полностью совместимы с Grafana и Prometheus;
  • мы помогаем с установкой мониторинга по запросу;
  • на тарифах с техподдержкой инженеры могут настроить мониторинг под ключ за 30 минут;
  • вы получаете панель, через которую можно следить за каждым сервером — нагрузка, диск, сеть, uptime — всё на виду.

Система мониторинга — это не роскошь, а минимальная гигиена инфраструктуры. Если вы ещё не знаете, что происходит на вашем сервере — самое время подключиться и посмотреть.