node exporter 可直接采集 linux 系统指标,无需依赖中间件,通过 /proc、/sys 获取 cpu、内存、磁盘、网络等全维度数据;v1.6.1 版本需按架构下载对应二进制,非 root 运行并配置 systemd 服务,关键指标默认启用,prometheus 抓取 /metrics 接口即可。

直接用 Node Exporter 就能采集 Linux 主机系统指标,它不依赖 MySQL、Redis 等中间件,而是通过读取 /proc、/sys 等内核接口,覆盖 CPU、内存、磁盘、网络、文件系统、负载等全部基础维度。
下载与部署要对架构、非 root 运行
别从 GitHub 页面右键复制链接——容易漏路径导致 404。当前稳定版是 v1.6.1:
- AMD64 服务器执行:
wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gztar -xvzf node_exporter-1.6.1.linux-amd64.tar.gz -C /opt/ln -sf /opt/node_exporter-1.6.1.linux-amd64 /opt/node_exporter - ARM 设备(如树莓派)必须用
linux-arm64后缀,硬套 amd64 会报cannot execute binary file - 创建专用用户:
useradd --no-create-home --shell /bin/false node_exporter - 授权并设权限:
chown -R node_exporter:node_exporter /opt/node_exporter,chmod 755 /opt/node_exporter/node_exporter - systemd 服务中明确指定
User=node_exporter,避免 root 运行带来的安全风险和 collector 权限误判
关键指标默认就可用,不用额外开 collector
Node Exporter 默认已启用最常用采集器,无需加参数就能拿到核心数据:
- CPU 使用率:用
node_cpu_seconds_total{mode="user|system|iowait|idle"}配合rate()计算 - 内存剩余量:直接查
node_memory_MemAvailable_bytes - 磁盘使用率:计算
1 - node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} - 网络流入/流出:
node_network_receive_bytes_total和node_network_transmit_bytes_total - 系统负载:
node_load1、node_load5、node_load15
像 --collector.bonding 或 --collector.wifi 这类冷门采集器,没业务需求就别开,避免无谓开销。
Prometheus 抓取目标必须指向 exporter 的 /metrics 接口
抓取的是 Node Exporter 暴露的 HTTP 接口,不是 Linux 本身。典型配置如下:
job_name: 'linux-hosts' static_configs: - targets: ['192.168.1.100:9100', '192.168.1.101:9100'] scrape_interval: 15s
确保目标地址可访问,端口开放,且防火墙允许 Prometheus Server 发起连接。
Windows 和 VMware 等环境也有对应 Exporter
Windows 主机推荐用 Windows Exporter,它通过 WMI 和性能计数器采集 CPU、内存、磁盘、服务状态等指标,默认启用 cpu、memory、logical_disk、service 等收集器,资源占用低(CPU
VMware 环境用 VMware Exporter,支持采集虚拟机 CPU/内存、主机资源利用率、存储容量、快照数量等;推荐 Docker 部署,只需设置 VSPHERE_HOST、VSPHERE_USER、VSPHERE_PASSWORD 等环境变量即可启动。
不复杂但容易忽略










