测试学习-120-使用docker+jmeter+influx+grafana搭建性能测试可视化平台(整体搭建安装)
前言:
大家在使用jmeter进行压测或者说性能测试时,只能根据jmeter中的聚合报告来查看测试结果。
但是聚合报告存在两个问题:
1、只能自己看,无法实时共享;
2、报告信息的展示比较简陋单一,不直观;
为了解决上述问题,本文将docker+ InfluxDB+Grafana搭建性能监控平台;
InfluxDB:持续型数据库,有时间戳组件,以时间的形式去存储数据
Grafana:一款采用 Go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具
在上一篇博客中我们已经将docker安装好了:https://blog.csdn.net/u013521274/article/details/115868989
本文来完成后续的搭建
1、工具简介
名称 | 简介 |
docker | 开源的应用容器引擎,实现虚拟化。 |
Jmeter | 基于Java的压力测试工具 |
influxdb | 开源时序型数据库,常用的一种使用场景:监控数据统计 |
grafana | 跨平台的开源的度量分析和可视化工具 |
现在开始docker+influx+grafana可是化平台的搭建。框架图如下所示
2、性能监控平台搭建
2.1 influxdb安装
搜索influx:docker search influx
拉取influxdb镜像:docker pull tutum/influxdb
启动一个容器,并将端口8083和8086映射出来,如果用的是tutum/influxdb镜像,在访问8083端口时就可以看到网页端的展示,我这里用的是最新的,所以就没有啦:
启动容器:
docker run -d --name jmeter-influx -p 8083:8083 -p 8086:8086 tutum/influxdb
进入容器内部,创建名为jmeter的数据库:
进入jmeter-influx容器
docker exec -it jmeter-influx bash
进入influx数据内部
influx
创建名为jmeter的数据库
create database jmeter
命令查看数据库创建成功
show databases
使用 Jmeter 库,
user jmeter
查看数据,这个时候应该是没有数据的:
select * from jemter
执行:docker ps
influx已经在运行了
可以访问http://ip:8083参看influx的前端
2.2 grafana 安装
首先我们需要下载grafana的镜像:
$ docker pull grafana/grafana
2)启动一个grafana容器,将3000端口映射出来:
$ docker run -d --name grafana -p 3000:3000 grafana/grafana
$ docker ps
grafana已经在运行
3)网页端访问http://ip:3000(根据自己的)验证部署成功。初次登录时的账号密码是admin/admin;
首次进入会要求你改密码,安装操作来即可,到达首页;
2.2.2 配置数据源,influx链接grafana
测试是否链接成功,出现绿色提示代表成功。
2.3 grafana导入专属于jmeter的可视化模板
模板导入分别有以下3种方式:
1、直接输入模板id号
2、直接上传模板json文件
3、直接输入模板json内容
下载模板,在grafana的官网
https://grafana.com/grafana/dashboards?dataSource=influxdb&search=jmeter
下载完json文件,导入进去
点击import后,grafana会出现模板的可视化界面,此时是没有数据的,因为influx还没有接入jmeter数据,所以可视化没有图标显示
3、jmeter配置Backend Listener
Backend Listener的作用就是将实时产生的数据推送到influx,然后再由grafana显示出来
implementation:
选择influxdb所对应的:influxdbUrl:需要改为自己influxdb的部署ip和映射端口,端口是容器启动时映射的8086端口,db后面跟的是刚才创建的数据库名称
application:可根据需要自由定义,只是注意后面在grafana中选对即可
measurement:表名,默认是jmeter,也可以自定义
summaryOnly:选择true的话就只有总体的数据,false会将每个transaction都分别记录
4、开启jmeter运行,查看grafana的显示效果,下图是运行了约30分钟的结果
是不是很酷炫
grafana面板上可以设置数据更新时间,1s更新一次,5秒更新一次等等。
有问题留言,看到必回复哦
本文参考:https://www.cnblogs.com/yagao/p/12730405.html
https://blog.csdn.net/you297043284/article/details/105015352
更多推荐
所有评论(0)