Docker+Jmeter+InfluxDB+Grafana搭建性能测试监控平台

时间:2024-01-26 18:43:15

搭建需求?

jmeter自身的聚合测试报告可视化效果极差,为更加形象的、动态的展示测试过程,需要一个具有时序性的可视区来展示给我们的测试者,

这时候就需要用到后端监控,下面我们来开始搭建符合这种测试需求的测试平台

此次测试平台基于阿里云进行搭建,具体的环境读者可自行选择,例如centos或者readhat

 

Docker环境搭建:

本章重点讲解性能平台建设,docker搭建及常用操作命令请参考docker讲解章节

jmeter环境搭建:

详细内容请参看jmeter环境

influxDB环境搭建:

1.下载安装镜像(默认是拉取最新版本):

docker pull influxdb

 

2.启动influxdb容器

docker run -d --name jmeter-influx -p 8083:8083 -p 8086:8086 influxdb

 

3.进入influxdb容器内部

docker exec -it 4fc20c7f4bba /bin/bash

4.进入influxdb , 创建数据库jmeter

至此influxdb的环境搭建已结束,下面讲解jmeter

 

Jmeter后端监控配置:

1.创建测试项目

点击”添加->监听器->后端监听器”

 2.添加结果如下

此时jmeter要加载influxdb的数据需要做以下配置

3.修改后端监听器配置

  3.1Backend Listener implementation配置选择

  Org.apache.jmeter.visualizers.Backend.influxdb.influxdbBackendListenerClient

  

  3.2.修改Parameters

  

4.参数讲解:

influxdbUrl:需要改为自己influxdb的部署ip和映射端口,我这里部署到阿里云上,读者可根据自己环境修改

application:可根据需要*定义,只是注意后面在grafana中选对即可

measurement:表名,默认是jmeter,也可以自定义

summaryOnly:选择true的话就只有总体的数据,false会将每个transaction都分别记录

5.数据验证

运行Jmeter脚本,然后再次在influxdb中查看数据,发现类似下面的数据说明输入导入成功


至此jmeter后端监控配置已搭建结束,下面讲解grafana部署

 

grafana环境部署:

1.下载安装grafana镜像(默认是拉取最新版本):

docker pull grafana/grafana

2.启动grafana容器(将3000端口映射到本机的8000端口上,读者可自己定义):

docker run --name grafana -d -p 8000:3000 grafana/grafana

3.访问grafana

http://xxx.xxx.xxx.xxx:8000/login

默认的用户名和登录密码为admin,admin

4.选择添加数据源

5.选择数据源为influxDB

6.配置选项

7.测试数据源是否添加正确

8.下载模板

模板下载路径:https://grafana.com/grafana/dashboards?dataSource=influxdb&search=jmeter

 

9.导入json模板

10.展示设置

11.成果展示

对测试对象开启20个线程,展示动态的测试结果