node_exporter

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

node_exporter — стандартный экспортёр Prometheus для сбора метрик оборудования и операционной системы с Linux и других Unix-подобных систем; он предоставляет данные об использовании ЦП, памяти, дискового ввода-вывода, сетевой пропускной способности и статистике файловых систем. Это один из наиболее широко развёртываемых экспортёров в экосистеме Prometheus, служащий основой для дашбордов инфраструктурного мониторинга, таких как популярный дашборд Grafana Node Exporter Full. node_exporter обычно запускается как служба systemd на каждом хосте и по умолчанию прослушивает порт 9100; отдельные коллекторы метрик включаются или отключаются флагами --collector.<name>. Среди метрик, предоставляемых node_exporter, — node_cpu_seconds_total, node_memory_MemAvailable_bytes, node_disk_io_time_seconds_total и многие другие, следующие соглашениям об именовании Prometheus. В развёртываниях Kubernetes node_exporter обычно разворачивается как DaemonSet, чтобы каждый узел кластера передавал системные метрики в Prometheus.

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

node_exporter — процессы, экспонирующие метрики системы в формате 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.

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

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

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

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