前言

入职一家医疗器材公司,研发团队组建不久,缺乏性能测试搭建平台,性能测试工具jmeter自带的聚合报告在Windows系统下展示效果不是很好,在linux环境下又无法实时可视化。

如果有一个性能测试平台可以将结果实时展示,可以提高我们对系统性能表现的掌握程度,另一方面也提高了我们的测试效率。市面上阿里的PTS性能测试平台体验还不错,但是要收费。

前段时间发现InfluxDB+Telegraf+Grafana+Jmeter的框架集成,就很好的解决了这些问题。

本文就记录下如何集成这些开源工具,搭建属于自己的性能测试监控平台。

一、安装环境

组件名称 版本说明
服务器 Centos7.8 64位
jmeter 5.1.1
JDK 1.8
InfluxDB 1.15.2
Grafana 7.3.2

 

二、JDK和jmeter安装

1.登录linux服务器,查看可用的jdk版本

输入命令: yum -y list java* 

执行成功后,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

2.安装jdk

输入命令:yum install -y java-1.8.0-openjdk-devel.x86_64

执行后安装成功后,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

3.验证安装结果

输入命令:java -version,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

此时显示了jdk的版本信息,代表安装成功了

4.安装jmeter

官方地址:Download Apache JMeter

下载压缩包,然后将安装包上传至linux服务器,我采用的是直接将zip文件拖至linux服务器上

首先安装输入命令: yum install -y lrzsz ,安装linux下的上传和下载功能包,安装成功界面如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

输入命令:cd /usr 进入usr目录下

输入命令: mkdir jmeter 新建一个名叫jmeter的文件夹

输入命令:cd /usr/jmeter 进入新建的目录下

将windows本地下载好的jmeter压缩包拖拽至linux的/usr/jmeter目录下,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

输入命令:yum install -y unzip zip 安装解压工具

输入命令: unzip apache-jmeter-5.1.1.zip ,进行解压

5.配置环境变量

输入命令 vim /etc/profile ,按 i 进入编辑模式,在最下面添加如下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0
export CLASSPATH=.:JAVA_HOME/lib/dt.jar:$JAVA_HOME.lib/tools.jar:$JRE_HOME.lib
export PATH=$JAVA_HOME/bin:$PATH

export JMETER_HOME=/usr/jmeter/apache-jmeter-5.1.1
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH

按esc按钮退出编辑模式,输入命令:wq 保存并退出

最后,输入命令 source /etc/profile ,使修改的配置生效

输入命令:jmeter -v,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

此时jdk和jmeter的安装就大功告成啦!

三、InfluxDB安装

1.InfluxDB介绍

InfluxDB 是用Go语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。它可以存储我们jmeter实时的压测数据,然后用Grafana仪表盘看板来展示实时的压测数据。

2.下载安装

官网下载地址:InfluxDB

在linux服务器上,输入命令 wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.3.x86_64.rpm ,下载安装包

下载完成后,输入命令 sudo yum localinstall influxdb-1.8.3.x86_64.rpm ,解压安装包,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

3.修改配置

输入命令:vim /etc/influxdb/influxdb.conf

修改InfluxDB的配置,主要配置jmeter存储的数据库与端口号,还有需要将UI端口开放

# 找到graphite并且修改它的库与端口

[[graphite]]

  enabled = true

  database = "jmeter"

  bind-address = ":2003"

  protocol = "tcp"

  consistency-level = "one"

 

# 找到admin,将前面的#号去掉,开放它的UI端口

[admin]
  # Determines whether the admin service is enabled.
  enabled = true

  # The default bind address used by the admin service.
  bind-address = ":8083"

  # Whether the admin service should use HTTPS.
  # https-enabled = false

  # The SSL certificate used when HTTPS is enabled.
  # https-certificate = "/etc/ssl/influxdb.pem

4.启动服务

输入命令:/etc/init.d/influxdb restart

5.检查是否安装成功

输入命令:influxd,此时界面显示:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

6.创建jmeter数据库

输入命令:influxd,打开数据库,输入命令:create database jmeter创建名称为jmeter的库,输入命令:show databases显示所有的库,包含jmeter就代表创建成功

四、Grafana安装

1.输入命令:wget https://dl.grafana.com/oss/release/grafana-7.3.2-1.x86_64.rpm,下载
2.输入命令:sudo yum install grafana-7.3.2-1.x86_64.rpm,安装

3.启动

下载安装完成后,输入命令 service grafana-server start 启动服务,打开浏览器,输入IP+端口,3000为Grafana的默认侦听端口。

系统默认用户名和密码为admin/admin,第一次登陆系统会要求修改密码,修改密码后登陆,界面显示如下:

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

 

 

添加数据源

首先是添加数据源,点击左上角的grafana图标,示例如下:

PS:选择influxdb作为数据源,需要在influxdb中创建该用户以及对应的数据库!

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

创建DashBoard

创建好数据源之后,就需要创建DashBoard(仪表盘),可以自定义,也可以导入你需要的仪表盘,官方提供了很多的可选仪表盘。

BashBoard地址:BashBoard

这里我选择jmeter相关的仪表盘,选择导入,示例如下:

①、搜索jmeter仪表盘

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

②、选择对应的仪表盘ID

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

③、复制ID,填入导入界面

PS:导入时候需要选择用户组以及对应的数据库!

linux下性能测试监控平台InfluxDB+Grafana+Jmeter的搭建

④、展示仪表盘

PS:右上角可以选择数据展示的时间段和刷新频次!

五、实际使用

 

六、安装过程中遇到的坑

 

相关文章: