Prometheus学习笔记——使用Node Exporter采集主机运行数据

运行node exporter:node_exporter
启动成功后,可以看到以下输出:INFO[0000] Listening on :9100 source="node_exporter.go:76"

初始Node Exporter监控指标

访问http://localhost:9100/metrics,可以看到当前node exporter获取到的当前主机的所有监控数据,如 下所示。每一个监控指标之前都会有一段类似于如下形式的信息:

# HELP node_cpu Seconds the cpus spent in each mode. 
# TYPE node_cpu counter 
node_cpu{cpu="cpu0",mode="idle"} 362812.7890625 
# HELP node_load1 1m load average. 
# TYPE node_load1 gauge 
node_load1 3.0703125

其中HELP用于解释当前指标的含义,TYPE则说明当前指标的数据类型。在上面的例子中node_cpu的注释表明当前指标是cpu0上idle进程占用CPU的总时间,CPU占用时间是一个只增不减的度量指标,从类型中也可以看出node_cpu 的数据类型是计数器(counter),与该指标的实际含义一致。又例如node_load1该指标反映了当前主机在最近一分 钟以内的负载情况,系统的负载情况会随系统资源的使用而变化,因此node_load1反映的是当前状态,数据可能增 加也可能减少,从注释中可以看出当前指标类型为仪表盘(gauge),与指标反映的实际含义一致。
除了这些以外,在当前页面中根据物理主机系统的不同,你还可能看到如下监控指标:
node_boot_time:系统启动时间
node_cpu:系统CPU使用量
nodedisk*:磁盘IO
nodefilesystem*:文件系统用量
node_load1:系统负载
nodememeory*:内存使用量
nodenetwork*:网络带宽
node_time:当前系统时间
go_:node exporter中go相关指标
process_
:node exporter自身进程相关运行指标

从Node Exporter收集监控数据

为了能够让Prometheus Server能够从当前node exporter获取到监控数据,这里需要修改Prometheus配置文 件。编辑prometheus.yml并在scrape_configs节点下添加以下内容:

scrape_configs: 
 - job_name: 'prometheus' 
   static_configs: 
    - targets: ['localhost:9090'] 
 # 采集node exporter监控数据 
 - job_name: 'node' 
   static_configs: 
    - targets: ['localhost:9100']

重新启动Prometheus Server。访问http://localhost:9090,进入到Prometheus Server。如果输入“up”并且点击执行按钮以后,可以看到 如下结果,如果Prometheus能够正常从node exporter获取数据,则会看到以下结果:

1. up{instance="localhost:9090",job="prometheus"} 1 
2. up{instance="localhost:9100",job="node"} 1

其中“1”表示正常,反之“0”则为异常。
Prometheus学习笔记——使用Node Exporter采集主机运行数据

上一篇:【prometheus】Prometheus的服务发现


下一篇:prometheus监控主机