siliconflow/node_exporter
forked from prometheus/node_exporter
Captured source
source ↗siliconflow/node_exporter
Description: Exporter for machine metrics and asset info
License: Apache-2.0
Stars: 0
Forks: 0
Open issues: 1
Created: 2026-07-21T03:11:05Z
Pushed: 2026-07-21T06:03:14Z
Default branch: master
Fork: yes
Parent repository: prometheus/node_exporter
Archived: no
README:
Node exporter
 !bsd workflow !golangci-lint workflow ![Docker Repository on Quay][quay] ![Go Report Card][goreportcard]
Prometheus exporter for hardware and OS metrics exposed by \*NIX kernels, written in Go with pluggable metric collectors.
The Windows exporter is recommended for Windows users. To expose NVIDIA GPU metrics, prometheus-dcgm can be used.
Installation and Usage
If you are new to Prometheus and node_exporter there is a simple step-by-step guide.
The node_exporter listens on HTTP port 9100 by default. See the --help output for more options.
Linux distribution packages
On Enterprise Linux (RHEL, CentOS Stream, Rocky Linux, AlmaLinux) and Fedora, node_exporter is packaged in EPEL as golang-github-prometheus-node-exporter (available for EPEL 7, 8 and 9):
Ansible
For automated installs with Ansible, there is the Prometheus Community role.
Docker
The node_exporter is designed to monitor the host system. Deploying in containers requires extra care in order to avoid monitoring the container itself.
For situations where containerized deployment is needed, some extra flags must be used to allow the node_exporter access to the host namespaces.
Be aware that any non-root mount points you want to monitor will need to be bind-mounted into the container.
If you start container for host monitoring, specify path.rootfs argument. This argument must match path in bind-mount of host root. The node\_exporter will use path.rootfs as prefix to access host filesystem.
docker run -d \ --net="host" \ --pid="host" \ -v "/:/host:ro,rslave" \ quay.io/prometheus/node-exporter:latest \ --path.rootfs=/host
For Docker compose, similar flag changes are needed.
--- version: '3.8' services: node_exporter: image: quay.io/prometheus/node-exporter:latest container_name: node_exporter command: - '--path.rootfs=/host' network_mode: host pid: host restart: unless-stopped volumes: - '/:/host:ro,rslave'
On some systems, the timex collector requires an additional Docker flag, --cap-add=SYS_TIME, in order to access the required syscalls.
Collectors
There is varying support for collectors on each operating system. The tables below list all existing collectors and the supported systems.
Collectors are enabled by providing a --collector. flag. Collectors that are enabled by default can be disabled by providing a --no-collector. flag. To enable only some specific collector(s), use --collector.disable-defaults --collector. ....
Include & Exclude flags
A few collectors can be configured to include or exclude certain patterns using dedicated flags. The exclude flags are used to indicate "all except", while the include flags are used to say "none except". Note that these flags are mutually exclusive on collectors that support both.
Example:
--collector.filesystem.mount-points-exclude=^/(dev|proc|sys|var/lib/docker/.+|var/lib/kubelet/.+)($|/)
List:
Collector | Scope | Include Flag | Exclude Flag --- | --- | --- | --- arp | device | --collector.arp.device-include | --collector.arp.device-exclude cpu | bugs | --collector.cpu.info.bugs-include | N/A cpu | flags | --collector.cpu.info.flags-include | N/A diskstats | device | --collector.diskstats.device-include | --collector.diskstats.device-exclude ethtool | device | --collector.ethtool.device-include | --collector.ethtool.device-exclude ethtool | metrics | --collector.ethtool.metrics-include | N/A filesystem | fs-types | --collector.filesystem.fs-types-include | --collector.filesystem.fs-types-exclude filesystem | mount-points | --collector.filesystem.mount-points-include | --collector.filesystem.mount-points-exclude hwmon | chip | --collector.hwmon.chip-include | --collector.hwmon.chip-exclude hwmon | sensor | --collector.hwmon.sensor-include | --collector.hwmon.sensor-exclude infiniband | device | --collector.infiniband.device-include | --collector.infiniband.device-exclude interrupts | name | --collector.interrupts.name-include | --collector.interrupts.name-exclude netdev | device | --collector.netdev.device-include | --collector.netdev.device-exclude qdisc | device | --collector.qdisc.device-include | --collector.qdisc.device-exclude slabinfo | slab-names | --collector.slabinfo.slabs-include | --collector.slabinfo.slabs-exclude sysctl | all | --collector.sysctl.include | N/A systemd | unit | --collector.systemd.unit-include | --collector.systemd.unit-exclude
Enabled by default
Name | Description | OS ---------|-------------|---- arp | Exposes ARP statistics from /proc/net/arp. | Linux bcache | Exposes bcache statistics from /sys/fs/bcache/. | Linux bonding | Exposes the number of configured and active slaves of Linux bonding interfaces. | Linux btrfs | Exposes btrfs statistics | Linux boottime | Exposes system boot time derived from the kern.boottime sysctl. | Darwin, Dragonfly, FreeBSD, NetBSD, OpenBSD, Solaris conntrack | Shows conntrack statistics (does nothing if no /proc/sys/net/netfilter/ present). | Linux cpu | Exposes CPU statistics | Darwin, Dragonfly, FreeBSD, Linux, Solaris, OpenBSD cpufreq | Exposes CPU frequency statistics | Linux, Solaris diskstats | Exposes disk I/O statistics. | Darwin, Linux, OpenBSD dmi | Expose Desktop Management Interface (DMI) info from /sys/class/dmi/id/ | Linux dmmultipath | Exposes DM-multipath device and path metrics from /sys/block/dm-*. | Linux...
Excerpt shown — open the source for the full document.