VPS под мониторинг — отдельный сервер, изолированный от продакшен-инфраструктуры, на котором работают инструменты наблюдаемости: сбор метрик, хранение временных рядов, визуализация, алертинг. Размещение мониторинга на том же сервере, что и продакшен — распространённая ошибка: если основной сервер перегружен или недоступен, мониторинг тоже не работает, когда нужен больше всего.
Как работает
Типовой стек: Prometheus (сбор и хранение метрик) + Grafana (визуализация и алертинг) + Node Exporter (агент метрик на каждом сервере). Node Exporter устанавливается на каждый контролируемый сервер и предоставляет HTTP-эндпоинт с метриками CPU, RAM, disk I/O, network. Prometheus периодически опрашивает (scrape) все Node Exporter-ы и сохраняет метрики в TSDB (Time Series Database). Grafana подключается к Prometheus как источнику данных и строит дашборды.
Альтернативный стек: Zabbix — монолитное решение с агентами, сервером и веб-интерфейсом. Более традиционный подход, сильнее в enterprise-мониторинге SNMP-устройств. VictoriaMetrics — замена Prometheus с лучшей сжимаемостью и производительностью, совместима с Prometheus API. Uptime Kuma — простой self-hosted мониторинг доступности сайтов.
Алертинг: Prometheus Alertmanager отправляет уведомления в Telegram, Slack, email, PagerDuty при срабатывании правил. Правило примера: «если CPU > 90% в течение 5 минут — алерт». Grafana имеет встроенный алертинг с аналогичными возможностями.
Требования к VPS под мониторинг: Prometheus + Grafana требует 1–2 CPU, 2–4 ГБ RAM для мониторинга до 20 серверов. При 100+ серверах — 4 CPU, 8–16 ГБ RAM. Дисковое пространство зависит от retention period: Prometheus по умолчанию хранит 15 дней, 1 ГБ/сервер/месяц — типичный объём.
История
Nagios (1999) — первая популярная open-source система мониторинга на основе проверок. Zabbix появился в 2001 году. Graphite + StatsD — метрики временных рядов — в 2008-м. Prometheus создан в SoundCloud в 2012 году, открыт в 2015-м, стал вторым проектом (после Kubernetes), принятым в CNCF. Grafana — в 2014 году (форк Kibana 3). Сегодня Prometheus + Grafana — де-факто стандарт мониторинга в DevOps.
На что обращать внимание
Выбирайте геолокацию VPS мониторинга отдельно от основных серверов — в идеале в другом дата-центре или облаке. Тогда при аварии основного дата-центра мониторинг сообщит о ней. Открывайте порт Node Exporter (9100) только для IP мониторинг-сервера через файрвол — метрики содержат чувствительную информацию об инфраструктуре. Настройте мониторинг самого мониторинга: Heartbeat-проверки, что Prometheus и Grafana доступны.
Конфигурация VPS для мониторинга
Мониторинг-стек (Prometheus + Grafana + Alertmanager): минимум 2 ГБ RAM, 2 vCPU, 40 ГБ SSD. ELK Stack: минимум 8 ГБ RAM (Elasticsearch требователен). Netdata: 512 МБ RAM. Zabbix Server с PostgreSQL: 2–4 ГБ RAM.
Метрики и инструменты
Prometheus: scrape interval 15–60 сек, retention 15–30 дней. Grafana: дашборды, алерты. node_exporter — системные метрики. mysql_exporter, postgres_exporter — БД. blackbox_exporter — внешние HTTP/TCP проверки. VictoriaMetrics — drop-in замена Prometheus с меньшим потреблением RAM.
Централизованный мониторинг
Один мониторинг-VPS для десятков серверов. Prometheus federation: несколько Prometheus → центральный. SNMP для сетевого оборудования. Netdata parent-child: все метрики агрегируются на parent. Изоляция: мониторинг в отдельной приватной сети.