原文链接,最终解释权归原作者所有
【写在前面的话】
因为个人的性能测试经验还不是很多,所以现在也在不断的学习和实践性能测试相关的一些技能。
【性能监控平台部署实践如下】
找一台支持运行docker的linux机器:
1、先启动dockerd服务
[root@zhaopintest3 ~]# service docker start
2、然后开始下载一些镜像(为什么下载这些镜像详见原文)
[root@zhaopintest3 ~]# docker pull influxdb
可能需要等一会
[root@zhaopintest3 ~]# docker pull grafana/grafana
可能需要等一会
3、完成后创建相关容器(注意端口可能被占用的情况)
[root@zhaopintest3 ~]# docker run -d --name jmeter-influx -p 8083:8083 -p 8086:8086 influxdb
[root@zhaopintest3 ~]# docker run -d --name grafana -p 3000:3000 grafana/grafana
[root@zhaopintest3 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9a5eaa675a08 grafana/grafana “/run.sh” 24 minutes ago Up 24 minutes 0.0.0.0:3000->3000/tcp grafana
9a0b4ad14100 influxdb “/entrypoint.sh infl…” 41 minutes ago Up 41 minutes 0.0.0.0:8083->8083/tcp, 0.0.0.0:8086->8086/tcp jmeter-influx
4、进入容器内部,创建名为jmeter的数据库
[root@zhaopintest3 ~]# docker exec -it jmeter-influx bash
root@9a0b4ad14100:/# influx
Connected to http://localhost:8086 version 1.7.10
InfluxDB shell version: 1.7.10
> create database jmeter
> show databases
name: databases
name
----
_internal
jmeter
> use jmeter
Using database jmeter
> select * from jmeter
> #空,正常的。暂时没数据。
5、Jmeter脚本设置
如下图所示设置即可,当然你得自己先写个jmx脚本。
然后设置后端监听器,选择influxdb相关,且注意修改host和application name(自定义即可,后面grafan对应选择这个自定义的name即可)
6、运行Jmeter脚本,然后再次在influxdb中查看数据
> use jmeter
Using database jmeter
> select * from jmeter
> xxxxxxxxxxxxx(数据略)
7、Grafana登录并部署
http://10.xxx.xx.xxx:3000/
默认是登录页面需要输入用户名和密码,默认是admin/admin。然后让你设置新密码,比如:123456。然后进入主界面:
相关设置查看原文即可。进入dashboard主界面,如下:点击自己创建的进入
可以看到看板目前是没有数据的
咱们启动jmeter来看看效果
可以看到数据了,注意可以设置右上角的自动刷新,比如:5s
8、这个实践就到这里了。
虽然比原生的查看起来方便了,但是还是依赖开源的第三方系统,后期想做二次开发或自定义一些功能,还是不好扩展。
todo:
基于jmeter的源码结合一些开源框架二次开发封装+前端页面化,应该是不错的选择。当然github上有些大牛已经做了一些类似的工具或平台,后面借鉴大牛们的框架实践一下,并开始二次开发之路,以迎合自身所在业务的性能测试需求。