node_exporter: Prometheus exporter for machine metrics
Collects Unix system metrics for Prometheus monitoring.
Learn more about node_exporter
node_exporter is a Prometheus metrics exporter that collects hardware and operating system-level statistics from Unix-based systems and exposes them via an HTTP endpoint. It implements a modular collector architecture where individual collectors gather specific system metrics such as CPU usage, memory statistics, disk I/O, network interfaces, and filesystem information by reading from kernel interfaces like /proc and /sys on Linux systems. The exporter runs as a standalone daemon process, typically configured as a systemd service, and serves metrics in Prometheus text-based exposition format on a configurable port, defaulting to 9100. Collectors can be selectively enabled or disabled at startup to optimize resource usage and limit the scope of exported metrics, and the tool supports a textfile collector mechanism that allows custom metrics to be ingested from files written by external scripts. The lightweight design prioritizes minimal resource overhead while maintaining comprehensive coverage of system-level observability data for infrastructure monitoring.
Modular Collector Architecture
Individual collectors toggle via command-line flags to expose only required metrics. Reduces resource overhead by disabling unnecessary data collection, letting operators tailor monitoring to specific infrastructure needs.
Cross-Platform Unix Support
Runs on Linux, BSD, and other Unix-like systems with platform-specific kernel interface implementations. Accesses metrics through procfs, sysfs, and native APIs for consistent monitoring across heterogeneous environments.
Container-Aware Host Monitoring
Monitors host systems from within containers using path.rootfs and bind-mounted filesystems. Exposes true host metrics rather than container-level data, enabling Kubernetes and Docker deployments without agent installation on nodes.
import axios from 'axios';
const response = await axios.get('http://localhost:9100/metrics');
const metrics = response.data;
// Parse Prometheus text format
const lines = metrics.split('\n');
const cpuMetrics = lines.filter(line => line.startsWith('node_cpu_seconds_total'));
console.log(cpuMetrics);Top in Cloud & DevOps
Related Repositories
Discover similar tools and frameworks used by developers
cAdvisor
Daemon for monitoring container resource usage and metrics.
Proxmox VE Helper-Scripts
Shell scripts that automate Linux container and VM creation on Proxmox VE with interactive configuration dialogs.
Checkout
Clones repositories to workflows with configurable authentication and fetch depth.
OpenLens
Community-built Kubernetes IDE without authentication requirements.
Dockge
Self-hosted Docker Compose manager with real-time terminal streaming.