Экспортеры

Тема дорожной карты · Prometheus

Экспортёры — это программы, переводящие метрики сторонних систем в текстовый формат Prometheus и предоставляющие их на HTTP-эндпоинте для опроса Prometheus. Экосистема Prometheus насчитывает сотни сообщественных и официальных экспортёров для баз данных (например, mysqld_exporter, postgres_exporter), очередей сообщений, оборудования, облачных провайдеров и многого другого. Экспортёры выступают адаптерами: они взаимодействуют с целевой системой по её родному протоколу, собирают статистику и затем предоставляют её в виде метрик Prometheus на эндпоинте /metrics. При развёртывании экспортёров каждый из них настраивается как отдельная цель опроса в разделе scrape_configs файла prometheus.yml, как правило, с указанием хоста и порта экспортёра. Выбор хорошо поддерживаемых экспортёров и их актуализация важны для точного мониторинга и совместимости с текущим протоколом опроса Prometheus.

Как это работает

Экспортеры — процессы, экспонирующие метрики системы в формате Prometheus. Распространённые: node_exporter (host-метрики — CPU, RAM, диск, сеть), blackbox_exporter (HTTP/TCP/ICMP probe снаружи), postgres_exporter, mysqld_exporter, redis_exporter, nginx_exporter, kube-state-metrics (объекты k8s API), cadvisor (метрики контейнеров). Для своих приложений — Prometheus client library (prometheus_client для Python, prom-client для Node и т.д.) — экспозиция своих /metrics.

Когда применять

node_exporter — на каждый хост (CPU, RAM, disk-метрики). Специфический exporter — на каждую зависимость (БД, кеш, очередь). Для app-метрик инструментируйте client-библиотекой — кастомные бизнес-метрики намного ценнее инфры. kube-state-metrics + node_exporter — k8s-baseline.

Типичные ошибки

Ловушки Экспортеры: запущен exporter для X (например node_exporter), но не скрейпится (данные экспонированы, никогда не собираются); экспозиция exporter-портов публично (DoS + info leak); кастомный exporter с auth — Prometheus не может скрейпить (используйте bearer_token + tls config); слишком много exporters на одном хосте (overhead).

Связанные понятия

Полезные ресурсы