
Grafana / Node Exporter Full 实现主机监控
一、概述
在 Prometheus 的架构设计中,Prometheus Server 并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的 CPU 使用率,我们需要使用到 Exporter。Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是 /metrics)拉取监控样本数据。
从上面的描述中可以看出 Exporter 可以是一个相对开放的概念,其可以是一个独立运行的程序独立于监控目标以外,也可以是直接内置在监控目标中。只要能够向 Prometheus 提供标准格式的监控样本数据即可。
这里为了能够采集到主机的运行指标如 CPU, 内存,磁盘等信息。我们可以使用 node_exporter。
node_exporter 用于采集服务器层面的运行指标,包括机器的 loadavg、filesystem、meminfo等基础监控,类似于传统主机监控维度的 zabbix-agent node-export 由 prometheus 官方提供、维护,不会捆绑安装,但基本上是必备的 exporter

二、功能
node_exporter 用于提供 *NIX 内核的硬件以及系统指标。
- 如果是 windows 系统,可以使用 wmi_exporterr
- 如果是采集 NVIDIA 的 GPU 指标,可以使用 prometheus-dcgm根据不同的 *NIX 操作系统,node_exporter 采集指标的支持也是不一样的,如:
- diskstats 支持 Darwin, Linux
- cpu 支持Darwin, Dragonfly, FreeBSD, Linux, Solaris 等,
三、安装
1、使用docker-compose 安装
注意 node_exporter 的端口是 9100
2、打开 /home/prometheus/prometheus.yml 普罗米修斯 的配置文件 scrape_configs 节点下 添加以下内容, 注意内容对齐格式
全部配置如下:
3、使用 docker-compose up -d 启动
4、成功后 使用 命令 **curl http://localhost:9100/ **会看到如下内容
可以 使用 curl http://localhost:9100/metrics 会看到获取的数据
部分如下:

5、在 3.2 配置 prometheus 后 我们访问 http:// ip:9090 进入到 Prometheus Server 在status 下点击 targets 会出现 state 为 up 的node 即完成

四、配置 Grafana
1、进入 Grafana Service 在 Dashboards 下 点击 Import

2、在 Import via grafana.com 下输入面板ID : 1860 后点击Load。
3、选择 Prometheus 后 点击下边的Import 完成导入。注:在选项种如果没有 Prometheus 选项 可以参考我的另一篇Blog 种的 四.9docker-compose搭建Grafana与Prometheus监控SpringBoot应用

4、最后效果图

- 感谢你赐予我前进的力量