Prometheus+Grafana+Jmeter监控服务器资源及中间件(超详细)

发布时间 2023-10-01 22:32:14作者: Test挖掘者

一、Prometheus & node_exporter & Grafana 的原理

  1. Prometheus:Prometheus是一个开源的系统监控和报警工具包,它负责定时从各种数据源(如Node Exporter)中获取指标数据,并将其存储在自己的时间序列数据库中。Prometheus支持灵活的查询和报警功能,用户可以方便地对这些指标数据进行查询和分析,以及设置相关的报警规则。
  2. Node Exporter:Node Exporter是一个独立的组件,它负责收集目标节点(如服务器、主机或容器等)上的各种指标数据,如CPU、内存、磁盘、网络等,并将这些数据以Prometheus支持的格式暴露出来。Prometheus Server通过HTTP协议定时从Node Exporter中获取这些数据。
  3. Grafana:Grafana是一个开源的可视化平台,它可以与Prometheus无缝集成,将Prometheus中的指标数据以图表的形式展示出来。用户可以通过Grafana创建各种自定义的仪表板,以便更好地理解和分析系统的性能和行为。

这三个组件的结合使用可以实现全面的系统监控和可视化。具体来说,Prometheus负责收集指标数据,Node Exporter则提供指标数据的来源,而Grafana则负责将指标数据以图表的形式展示出来。这样,用户就可以通过Grafana方便地查看系统的各种指标数据,并对系统进行全面的监控和分析。

原理图:

二、环境与配置关系

三、node_exporter介绍、下载、解压、启动

1、node_exporter介绍

  Node Exporter是Prometheus的一个指标数据收集组件,用于采集目标节点(如服务器、主机或容器等)的各种运行指标,如CPU、内存、磁盘、网络等。

  Node Exporter是由Prometheus官方提供并维护的,它是一个用Go语言编写的独立组件。它通过各种系统命令或者访问操作系统的接口来获取指标数据,然后将这些数据转换成Prometheus支持的格式并暴露出来。

2、下载node_exporter

下载地址:https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【192.168.124.129】服务器的/home/tools/ 目录中。

3、解压node_exporter

[root@centos7 tools]# tar -xvzf node_exporter-1.6.1.linux-amd64.tar.gz

 4、启动node_exporter

node_exporter默认监听端口为9100,我们启动可以指定监听端口为:8100

[root@centos7 node_exporter]# nohup ./node_exporter --web.listen-address=:8100 &

四、mysql_exporter介绍、下载、解压、启动

1、mysql_exporter介绍

MySQL Exporter是一个专门用于监控MySQL数据库的Prometheus Exporter。它可以提供有关MySQL的各种指标,以便对数据库进行全面、深入的分析和了解。

MySQL Exporter的工作原理是,通过查询MySQL服务器的状态变量、内存使用情况、锁状态、QPS等信息,将这些数据转换成Prometheus支持的格式并暴露出来。Prometheus Server通过HTTP协议定时从MySQL Exporter中获取这些数据,并将其存储在自己的时间序列数据库中。

2、下载mysql_exporter

下载地址:https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.0/mysqld_exporter-0.15.0.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【192.168.124.129】服务器的/home/tools/ 目录中。

 3、解压mysql_exporter

[root@centos7 tools]# tar -xzvf mysqld_exporter-0.15.0.linux-amd64.tar.gz

 

 4、启动mysql_exporter

mysql_exporter默认监听端口为9104,我们启动可以指定监听端口为:8200,新建my.cnf文件。

my.cnf 配置文件输入如下内容

[client]
host = 192.168.124.129
port = 3306
user = root
password = root

启动mysql_exporter命令

[root@centos7 mysqld_exporter]# ./mysqld_exporter --config.my-cnf='/home/tools/mysqld_exporter/my.cnf' --web.listen-address=:8200 &

 五、redis_exporter介绍、下载、解压、启动

1、redis_exporter介绍

Redis Exporter是一个用于Prometheus监控的工具,它可以抓取Redis服务器的指标数据,并将其转换为Prometheus可以理解的格式。

Redis Exporter通过访问Redis服务器的INFO命令来获取各种指标数据,如内存使用情况、客户端连接数、键值存储统计信息等。然后,它将这些数据转换成Prometheus支持的格式并暴露出来。Prometheus Server通过HTTP协议定时从Redis Exporter中获取这些数据,并将其存储在自己的时间序列数据库中。

2、下载redis_exporter

下载地址:https://github.com/oliver006/redis_exporter/releases/download/v1.54.0/redis_exporter-v1.54.0.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【192.168.124.129】服务器的/home/tools/ 目录中。

3、解压redis_exporter

[root@centos7 tools]# tar -xvzf redis_exporter-v1.54.0.linux-amd64.tar.gz

4、启动redis_exporter

redis_exporter 默认监听端口为 9121,我们可以修改其监听端口为:8300

[root@centos7 redis_exporter]# ./redis_exporter -redis.addr 'redis://192.168.124.129:6379' -redis.password '123456' -web.listen-address ':8300' &

六、Prometheus下载,配置,启动

1、下载Prometheus

详见:Prometheus(普罗米修斯)常用exporter类下载地址大全

下载地址:https://github.com/prometheus/prometheus/releases/download/v2.47.0/prometheus-2.47.0.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【192.168.124.130】服务器的/home/tools/ 目录中。

2、解压Prometheus

[root@centos71 tools]# tar -xzvf prometheus-2.47.0.linux-amd64.tar.gz

3、启动Prometheus及添加Node_exporter、redis_exporter、mysq_exporterl配置

Prometheus默认端口:9090,支持修改端口,进入 vi prometheus.yml 

进入 vi prometheus.yml ,分别追加Node_exporter 、mysq_exporterlredis_exporter配置如下内容(注意Yaml格式):

 

 
启动prometheus命令 -- 默认监听端口8010

[root@centos71 prometheus]# ./prometheus --config.file='/home/tools/prometheus/prometheus.yml' --web.listen-address='192.168.124.130:8010' &

 进入http://192.168.124.130:8010/targets 查看 Prometheus 启动显示

 http://192.168.124.130:8010/metrics 、 http://192.168.124.130:8100/metrics 、 http://192.168.124.130:8200/metrics 、 http://192.168.124.130:8300/metrics 地址查看收集数据源

七、Grafana下载,启动,配置数据源,导入模板

1、Grafana下载,启动,请参考此篇文章:Jmeter+Influxdb+Grafana平台监控性能测试过程(三种方式)

2、Prometheus 配置数据源

进入 Configuration -> Data Sources ,点击 Prometheus 

2、导入服务器主机模板,选择模板ID:12633,导入Mysql监控模板,选择模板ID:17320,导入Redis监控模板,选择模板ID:11835

 

服务器资源展示

 Mysql中间件资源展示

 Redis中间件资源展示

 八、压测主机【192.168.124.129】,查看Grafana平台主机服务器的变化

 服务器主机明显变化。