The openshift/node_exporter repository is a Prometheus exporter for hardware and operating system metrics exposed by UNIX kernels, written in Go with a pluggable metric collector architecture. This OpenShift fork of the upstream node_exporter project serves as a critical component for infrastructure observability within OpenShift environments, enabling collection and exposure of system-level performance data that Prometheus can scrape and monitor.
The exporter listens on HTTP port 9100 by default and exposes a comprehensive set of metrics covering CPU statistics, memory usage, disk I/O, network interfaces, and numerous other hardware and kernel-level metrics. The architecture is built around pluggable collectors, allowing operators to selectively enable or disable metric collection based on their specific monitoring needs. Collectors can be controlled via command-line flags using the --collector.<name> pattern, with the ability to enable only specific collectors or disable defaults as needed.
The repository includes extensive collector support across multiple operating systems, with varying degrees of support depending on the platform. Enabled-by-default collectors include arp, bcache, bonding, btrfs, boottime, conntrack, cpu, cpufreq, diskstats, dmi, edac, entropy, exec, fibrechannel, filefd, filesystem, hwmon, infiniband, ipvs, kernel_hung, loadavg, mdadm, meminfo, netclass, netdev, netisr, netstat, nfs, nfsd, nvme, os, powersupplyclass, pressure, rapl, schedstat, selinux, sockstat, softnet, stat, tapestats, textfile, thermal, thermal_zone, time, timex, udp_queues, uname, vmstat, watchdog, and xfs. Additional collectors are available but disabled by default due to concerns about high cardinality, extended runtime, or significant resource demands on the host system.
Many collectors support include and exclude flags for fine-grained control over which devices or metrics are collected. For example, the diskstats collector can be configured to include or exclude specific devices, while the filesystem collector allows filtering by filesystem types or mount points. This flexibility enables operators to reduce cardinality and resource consumption in large-scale deployments.
The repository provides deployment guidance for various environments, including Ansible-based automated installation through the Prometheus Community role and Docker containerized deployment with special considerations for host namespace access and bind-mounting requirements. For containerized deployments, the path.rootfs argument allows the exporter to access the host filesystem correctly, and certain collectors like timex may require additional Docker capabilities such as SYS_TIME.
According to GitGenius activity tracking, the repository shows a median and mean issue/PR response latency of 665.8 hours across tracked items, with tide/merge-blocker being the most active issue label. The primary contributor tracked is jmguzik with one recorded event. The repository shares overlapping contributors with openshift/installer, openshift/coredns, and openshift/descheduler, indicating integration within the broader OpenShift ecosystem. The project is classified across multiple domains including system monitoring, performance metrics, resource utilization, infrastructure observability, cloud-native environments, and Linux systems monitoring, reflecting its central role in observability infrastructure for containerized and cloud-native deployments.