Перейти к основному содержимому

О разделе

Здесь — практикум по Prometheus, Grafana и экосистеме наблюдаемости для инженера и разработчика, который поднимает cloud-native мониторинг на учебном стенде. Маршрут ведёт от первого scrape до корреляции метрик, логов и трассировок и к нагрузочному тесту с k6.

Общая теория pull/push, PromQL и PLG-стека уже есть в 92.md. Этот раздел не дублирует сравнение Zabbix и Prometheus — он учит руками собрать стек по официальным гайдам Prometheus и Grafana.

Перед docker compose up на стенде — Запуск и перезапуск приложений (терминал, порты, остановка).

Стек уже поднят?

Переходите сразу к Как пользоваться — два URL, up, добавление своего сервиса, Explore и дашборд.

Для кого раздел

Нужны понимание HTTP и портов и Docker Compose (контейнеризация). Подойдут Linux VM, WSL2 или Windows 10/11 + Docker Desktop — минимальный стенд из шага 2 проверен на последнем: нестандартные порты, windows_exporter, русский UI Grafana 12, provisioning дашборда Windows.


Сценарий учебного стенда

КомпонентРольПорт внутри контейнераПорт на хосте
PrometheusСбор метрик (pull), TSDB, правила9090свободный <PORT_PROM> (часто 9090 или альтернатива, если занят)
GrafanaДашборды, Explore, Unified Alerting3000свободный <PORT_GRAFANA>; образ 12+ для ru-RU
windows_exporterМетрики Windows-хоста (вне Docker)свободный <PORT_WIN_EXP> (шаг 5, Windows)
AlertmanagerМаршрутизация алертов Prometheus90939093 (шаг 6)
node_exporterМетрики ОС Linux91009100 (шаг 5)
LokiХранение и запрос логов31003100 (шаг 7)
TempoРаспределённые трассировки3200 / 4317по compose (шаг 7)
AlloyЕдиный агент сбора12345по compose (шаг 8)
Mimir (опционально)Долгосрочные метрики9009по compose (шаг 7)

Схема потока данных на финальном шаге:


Маршрут по шагам

ШагСтатьяСодержание
1Архитектура PrometheusPull-модель, TSDB, exporters, Pushgateway, место в observability
2Установка и первые метрикиCompose (Windows/Linux), структура каталога, Prometheus + Grafana, provisioning, health check
Как пользоватьсяUI Prometheus и Grafana, добавить target, Explore, дашборд, шпаргалка
3Типы метрик и PromQLCounter, Gauge, Histogram, Summary, rate(), агрегации
4Grafana — источники и дашбордыПроверка datasource, панель up, Explore, импорт
5Экспортёры и инструментированиеnode_exporter, blackbox, client libraries, /metrics
6АлертингAlertmanager, правила Prometheus, Grafana Alerting
7Loki, Tempo и MimirЛоги, трейсы, долгосрочные метрики, LogQL, корреляция в Grafana
8Alloy, Beyla, Faro и PyroscopeЕдиный агент, eBPF, RUM, профилирование
9OpenTelemetry, k6 и итоговый стендOTel Collector, нагрузочный тест, compose «всё в одном»

Что понадобится

  • Docker Desktop (Windows/macOS) или Docker Engine + Compose v2 (Linux/WSL)
  • Свободные порты на хосте для UI Prometheus и Grafana
  • Каталог проекта с YAML-конфигами (структура — шаг 2)
  • Браузер
Официальные материалы

База — документация Prometheus, Getting started, First steps, Grafana docs, туториалы метрики, Grafana, алерты. Полезен обзорный Prometheus workshop.


Как учиться по разделу

  1. Прочитайте шаг 1 и сверьте термины с теорией Prometheus.
  2. Поднимите Prometheus и Grafana по шагу 2 — health check и target UP.
  3. Пройдите Как пользоваться — targets, up, Explore, первый target своего сервиса.
  4. Отработайте PromQL из шага 3 и дашборды из шага 4.
  5. Добавьте node_exporter и /metrics из шага 5.
  6. Настройте алерт в шаге 6.
  7. Расширьте стенд Loki + Tempo по шагу 7.
  8. Попробуйте Alloy / Beyla / Faro из шага 8 по желанию.
  9. Закройте маршрут шагом 9 — OTel, k6 и единый docker-compose.

Связь с теорией

ТемаМатериалы энциклопедии
Метрики, observability, PLG92.md
Корпоративный мониторинг (Zabbix)Практикум Zabbix
DevOps и пайплайны8-04 DevOps
Kubernetes (service discovery)8-06 Контейнеризация
Наблюдаемость бэкенда1-23 Бэкенд