Node Exporter常用Prometheus指标
Node Exporter 是一个常用的 Prometheus 导出器,用于采集主机操作系统层面的指标。以下是 Node Exporter 中一些常用的指标分类和关键指标:
1. CPU 相关指标
常用指标:
- CPU 使用率
rate(node_cpu_seconds_total{mode!="idle"}[5m])
- 每个核心的 CPU 使用时间(按模式)
node_cpu_seconds_total{mode="user"} node_cpu_seconds_total{mode="system"}
- CPU 空闲时间
node_cpu_seconds_total{mode="idle"}
2. 内存相关指标
常用指标:
- 总内存
node_memory_MemTotal_bytes
- 可用内存
node_memory_MemAvailable_bytes
- 内存使用率
1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)
- 已使用内存
node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes
- 缓存内存
node_memory_Cached_bytes
- 缓冲区内存
node_memory_Buffers_bytes
3. 磁盘相关指标
常用指标:
- 磁盘总大小
node_filesystem_size_bytes
- 磁盘可用大小
node_filesystem_avail_bytes
- 磁盘使用率
1 - (node_filesystem_avail_bytes / node_filesystem_size_bytes)
- 已使用磁盘空间
node_filesystem_size_bytes - node_filesystem_free_bytes
- 磁盘读/写速率
rate(node_disk_read_bytes_total[5m]) rate(node_disk_written_bytes_total[5m])
4. 网络相关指标
常用指标:
- 网络接收和发送字节数
rate(node_network_receive_bytes_total[5m]) rate(node_network_transmit_bytes_total[5m])
- 网络错误
rate(node_network_receive_errs_total[5m]) rate(node_network_transmit_errs_total[5m])
- 网络丢包
rate(node_network_receive_drop_total[5m]) rate(node_network_transmit_drop_total[5m])
5. 文件系统相关指标
常用指标:
- 打开文件句柄数
node_filefd_allocated
- 文件句柄限制
node_filefd_maximum
- 打开文件句柄使用率
node_filefd_allocated / node_filefd_maximum
6. 负载相关指标
常用指标:
- 系统负载
- 1分钟、5分钟和15分钟负载:
node_load1 node_load5 node_load15
- 1分钟、5分钟和15分钟负载:
- CPU 核心负载
node_load1 / count(node_cpu_seconds_total{mode="idle"})
7. 温度与风扇
- CPU 温度(如果支持)
node_hwmon_temp_celsius
- 风扇速度(如果支持)
node_hwmon_fan_speed_rpm
8. 系统信息指标
- 主机名和操作系统信息
node_uname_info
- 系统启动时间
node_boot_time_seconds
9. 特定进程或应用程序的指标
(需要配合 textfile
或其他 exporter)
- 自定义进程运行状态
node_processes_running
- 自定义脚本输出
- 使用
node_textfile_collector
配置采集自定义指标。
- 使用
10. 常用组合查询
CPU 使用率(百分比)
(1 - avg(rate(node_cpu_seconds_total{mode="idle"}[5m]))) * 100
磁盘使用率(百分比)
100 * (1 - (node_filesystem_avail_bytes / node_filesystem_size_bytes))
内存使用率(百分比)
100 * (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes))
总结
Node Exporter 提供的指标覆盖了系统的各个方面(CPU、内存、磁盘、网络等),可以通过 PromQL 灵活组合使用这些指标,监控系统健康状态并及时排查问题。根据实际需求选取重要的指标进行监控和报警即可。