О разделе
Здесь — практикум по 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 Alerting | 3000 | свободный <PORT_GRAFANA>; образ 12+ для ru-RU |
| windows_exporter | Метрики Windows-хоста (вне Docker) | — | свободный <PORT_WIN_EXP> (шаг 5, Windows) |
| Alertmanager | Маршрутизация алертов Prometheus | 9093 | 9093 (шаг 6) |
| node_exporter | Метрики ОС Linux | 9100 | 9100 (шаг 5) |
| Loki | Хранение и запрос логов | 3100 | 3100 (шаг 7) |
| Tempo | Распределённые трассировки | 3200 / 4317 | по compose (шаг 7) |
| Alloy | Единый агент сбора | 12345 | по compose (шаг 8) |
| Mimir (опционально) | Долгосрочные метрики | 9009 | по compose (шаг 7) |
Схема потока данных на финальном шаге:
Маршрут по шагам
| Шаг | Статья | Содержание |
|---|---|---|
| 1 | Архитектура Prometheus | Pull-модель, TSDB, exporters, Pushgateway, место в observability |
| 2 | Установка и первые метрики | Compose (Windows/Linux), структура каталога, Prometheus + Grafana, provisioning, health check |
| — | Как пользоваться | UI Prometheus и Grafana, добавить target, Explore, дашборд, шпаргалка |
| 3 | Типы метрик и PromQL | Counter, Gauge, Histogram, Summary, rate(), агрегации |
| 4 | Grafana — источники и дашборды | Проверка datasource, панель up, Explore, импорт |
| 5 | Экспортёры и инструментирование | node_exporter, blackbox, client libraries, /metrics |
| 6 | Алертинг | Alertmanager, правила Prometheus, Grafana Alerting |
| 7 | Loki, Tempo и Mimir | Логи, трейсы, долгосрочные метрики, LogQL, корреляция в Grafana |
| 8 | Alloy, Beyla, Faro и Pyroscope | Единый агент, eBPF, RUM, профилирование |
| 9 | OpenTelemetry, 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 и сверьте термины с теорией Prometheus.
- Поднимите Prometheus и Grafana по шагу 2 — health check и target UP.
- Пройдите Как пользоваться — targets,
up, Explore, первый target своего сервиса. - Отработайте PromQL из шага 3 и дашборды из шага 4.
- Добавьте
node_exporterи/metricsиз шага 5. - Настройте алерт в шаге 6.
- Расширьте стенд Loki + Tempo по шагу 7.
- Попробуйте Alloy / Beyla / Faro из шага 8 по желанию.
- Закройте маршрут шагом 9 — OTel, k6 и единый
docker-compose.
Как пользоваться
Два инструмента, русский UI Grafana 12, windows_exporter, UI-шпаргалки, targets, Explore, дашборд Windows и типичные сбои.
Практикум Prometheus — архитектура и модель данных
Pull-модель, компоненты Prometheus, временные ряды, метки, exporters и Pushgateway — основа перед установкой.
Практикум Prometheus — установка и первые метрики
Docker Compose на Windows и Linux, Grafana 12 и ru-RU, windows_exporter, provisioning, health check и типичные сбои первого запуска.
Практикум Prometheus — типы метрик и PromQL
Counter, Gauge, Histogram, Summary, функции rate и increase, агрегации и типовые запросы для дашбордов.
Практикум Grafana — источники данных и дашборды
Проверка provisioned datasource, первая панель up, переменные, Explore, импорт дашбордов — после шага 2.
Практикум Prometheus — экспортёры и инструментирование
node_exporter, windows_exporter на Windows, blackbox, Pushgateway, client libraries и /metrics.
Практикум Prometheus — Alertmanager и Grafana Alerting
Alerting rules, Alertmanager, маршрутизация, inhibition, Grafana Unified Alerting и туториал по алертам.
Практикум — Loki, Tempo и Mimir
PLG-расширение — логи в Loki, трейсы в Tempo, долгосрочные метрики в Mimir, LogQL и корреляция в Grafana.
Практикум — Alloy, Beyla, Faro и Pyroscope
Grafana Alloy как единый агент, eBPF-метрики Beyla, RUM Faro и профилирование Pyroscope.
Практикум — OpenTelemetry, k6 и итоговый стенд
OpenTelemetry Collector, инструментирование сервиса, нагрузочный тест k6 с метриками и полный docker-compose observability lab.
Практикум Prometheus — о разделе
Сквозной маршрут по Prometheus, Grafana, Alertmanager и стеку наблюдаемости Grafana Labs — Loki, Tempo, Mimir, Alloy, Beyla, Faro, Pyroscope, OpenTelemetry и k6.
Связь с теорией
| Тема | Материалы энциклопедии |
|---|---|
| Метрики, observability, PLG | 92.md |
| Корпоративный мониторинг (Zabbix) | Практикум Zabbix |
| DevOps и пайплайны | 8-04 DevOps |
| Kubernetes (service discovery) | 8-06 Контейнеризация |
| Наблюдаемость бэкенда | 1-23 Бэкенд |