Jmeter系列之Jmeter+Grafana+InfluxDB实时监控

在使用Jmeter做性能测试,监控系统性能的时候,无论是使用插件还是报告生成,都比较麻烦,而且样式看起来比较丑,所以使用Jmeter+Grafana+InfluxDB来打造压测可视化实时监控。

环境说明:

本次搭建都在Linux环境下进行,本篇文章使用到的安装包在公众号后台回复关键词“Jmeter实时监控”即可一键获取。




InfluxDB安装及使用



1
InfluxDB概念


InfluxDB是一款用Go语言编写的开源分布式时序、事件和指标数据库,无需外部依赖。该数据库现在主要用于存储涉及大量的时间戳数据,如DevOps监控数据,APP metrics, loT传感器数据和实时分析数据。



2
InfluxDB特点


InfluxDB的特点可以归纳为以下9个方面:

  • 无结构(无模式):可以是任意数量的列;

  • 可以设置metric的保存时间;

  • 支持与时间有关的相关函数(如min、max、sum、count、mean、median等),方便统计;

  • 支持存储策略:可以用于数据的删改。(influxDB没有提供数据的删除与修改方法);

  • 支持连续查询:是数据库中自动定时启动的一组语句,和存储策略搭配可以降低InfluxDB的系统占用量;

  • 原生的HTTP支持,内置HTTP API;

  • 支持类似sql语法;

  • 支持设置数据在集群中的副本数;

  • 支持定期采样数据,写入另外的measurement,方便分粒度存储数据。



3
InfluxDB安装


具体步骤如下:

①上传influxdb.rpm包到服务器;

②输入命令:yum localinstall influxdb.rpm,安装influxdb;

③启动服务:systemctl start influxdb;

④查看启动状态:systemctl status influxdb;

⑤输入influx,即可进入交互界面。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控



4
InfluxDB使用

①InfluxDB中创建数据库,使用命令:create database 数据库名。如下,创建一个名称为jmeter的数据库:create database jmeter。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


②查看当前的数据库,使用命令:show databases;

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


③切换数据库,use database。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


④创建用户名及密码,使用命令:

create user "root" with password "root" with all privileges。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


⑤查看用户,使用命令:show users。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控

如果root权限显示为true,那么root的用户就创建好啦。



Jmeter脚本配置


以下对Jmeter脚本进行配置,具体分为如下四步。


①打开jmeter,创建一个线程组,配置如下:

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


②添加一个HTTP Request,压测地址为:www.baidu.com。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


③添加一个Backend Listener,配置如下:

Backend Listener implementation选择influxdb;

influxdbURL 例"http://localhost:8086/write?db=jmeter"。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


④配置完后运行一下Jmeter脚本,再去influxdb的jmeter数据库中查看是否有数据,有数据即配置成功。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控




Grafana安装配置


1
Grafana安装


步骤如下:

①上传grafana.rpm包到服务器;

②安装Grafana,命令:yum localinstall grafana.rpm;

③启动服务,systemctl start grafana-server;

④查看启动状态,systemctl status grafana-server;

⑤启动后,在浏览器输入:http://ip:3000即可访问,效果如下:

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控



2
Grafana登录


①Grafana登录页面,用户名密码默认为admin。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


②重置密码:根据自己需要重置密码或直接跳过。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控




3
Grafana数据源配置


①在主界面,依次点击Data Sources-->add data source。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


选择“Add data source"添加数据源。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


②数据源选择influxDB。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


③输入ip和端口,InfluxDB信息。如果没做更改的话,user和pwd都是默认的root, 为了安全起见,可以自行修改。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控



4
Grafana Dashboards导入InfluxDB Jmeter模板


①InfluxDB Jmeter模板下载地址:https://grafana.com/grafana/dashboards?search=influxdb

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


②点击Copy ID to Clipboard。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


③在Grafana首页,点击import。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


④将复制的ID粘贴。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


⑤DB name选择influxDB,点击Import。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


⑥配置完成后,页面效果如下:

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


⑦在页面右上角,下拉选择5s,即每5s更新一次。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


⑧运行jmeter脚本,查看监控数据。

Jmeter系列之Jmeter+Grafana+InfluxDB实时监控


至此,整个Jmeter+Grafana+InfluxDB就搭建完成了,等着老板加鸡腿吧。                               


上一篇:grafana


下一篇:opentsdb