Jmeter监控平台搭建:JMeter+InfluxDB+Grafana
背景
平时一般用Jmeter的Gui模式,添加对应的插件,查看每秒线程数、TPS、响应时间等曲线,其实高并发是不建议这么看的。
解决方案
可以搭配InfluxDB+Grafana工具,使Jmeter异步发送数据到InfluxDB,然后由Grafana查询并展示出来,方便查看与比对。
之前使用Docker方式搭建过这个监控平台,这里记录下。
安装Docker
网上安装Docker的方式很多,我之前也写过一篇Centos7下安装Docker可以参考,本次是CentOS8.2安装(华为云 root账户)。

安装所需软件包:
yum install -y yum-utils device-mapper-persistent-data lvm2

发现报错了,原来是镜像链接不对,官方描述该版本停止更新相应依赖了
于是换源:参考链接,重新执行命令

添加阿里云镜像:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
直接安装最新版本:
yum install docker-ce
安装完成后,输入systemctl start docker命令启动docker。

安装InfluxDB
InfluxDB是一个时间序列数据库,旨在处理高写入和查询负载。用作涉及大量带时间戳数据的任何用例的后备存储,包括DevOps监控,应用程序指标,物联网传感器数据和实时分析。
使用docker命令拉取容器镜像(由于2.x版本与1.x版本语法不一样,这里安装1.8版本的):
docker pull influxdb:1.8

运行容器(这里如果不用镜像id会默认拉取influxdb的最新版本):
docker run --name my_influxdb -p 8086:8086 镜像id
为了保存jmeter的发送的数据,需要先建一个数据库,进入容器(docker ps查看容器id)
docker exec -it 容器id /bin/bash

输入influx进入数据库交互命令行,创建一个jmeter的数据库。
influx
show databases;
create database jmeter;
show databases;
use jmeter;
select * from jmeter;
exit;

安装Grafana
Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知,有着精美的可视化图表模板。
使用docker命令拉取容器镜像:
docker pull grafana/grafana

运行容器:
docker run --name my_grafana -p 3000:3000 grafana/grafana
输入IP:3000就可以访问grafana了, 默认用户名:admin,密码admin。(本地访问华为云,需要在云服务器控制台—安全组,找到对应的安全组开放出入端口)

Grafana配置数据源
登录grafana,在界面中找到配置中心

接着添加数据源

选择influxDB

配置数据源的名称,远程URL为上面influxdb的ip:8086,database为jmeter


点击save&test按钮,会自动连接保存,出现下面弹窗就ok了

数据源添加好后,接着导入图表展示模板,可以官方下载导入json文件方式,也可以直接输入模板id导入,这里选择后面一种。

直接填写模板id5496,点击load

修改模板名称,匹配数据源,点击import就ok了

如下所示:

Jmeter配置
Jmeter的安装就省略了,这里说下插件配置,添加后端监听器:

后端监听器配置如下,其他配置不用动:

调试对比数据
添加一个简单jmeter脚本,运行5分钟

查看聚合报告

查看grafana图表,选择最近15分钟的数据,和上面的报告数据也能对得上。

Jmeter监控平台搭建:JMeter+InfluxDB+Grafana的更多相关文章
- 【Docker】性能测试监控平台搭建:InfluxDB+Grafana+Jmeter+cAdvisor
前言 在做性能测试时,如果有一个性能测试结果实时展示的页面,可以极大的提高我们对系统性能表现的掌握程度,进而提高我们的测试效率.但是我们每次打开Jmeter都会有几个硕大的字提示别用GUI模式进行负载 ...
- jmeter的性能监控框架搭建记录(Influxdb+Grafana+Jmeter)
查看笔记 http://note.youdao.com/noteshare?id=c700365713abb98bd3d10e6f45393af9&sub=6F4E14FF3F9D4167AE ...
- Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(三)
在之前系列博文中,已经介绍完了数据采集和数据存储,那数据如何展示呢?所以今天就专门来讲下数据如何展示的问题. 以前博文参考: Docker系列--InfluxDB+Grafana+Jmeter性能监控 ...
- inux监控平台搭建-监控项
linux监控平台搭建-监控项 本人运维某生态互联网监控平台服务.过程中遇见了很多问题.目前互联网有很多的开源监控工具:nagios.zabbix.falcon.cacti...各有优点.这里不讲解监 ...
- linux监控平台搭建-cpu
linux监控平台搭建-cpu 目前服务器的主流CPU是intel或者AMD.到底主频是什么.多核.多线程.并发.并行.超频.一级缓存.二级缓存.三级缓存.i386.x86 cpu:含有算术逻辑.控制 ...
- linux监控平台搭建-内存
linux监控平台搭建-内存 上一篇文章说的硬盘.就写一下.更加重要的东西.在手机上面是RAM.机器是memory.内存是按照字节编址.每个地址的存储单元可以存放8bit的数据.cpu 通过内存地址获 ...
- linux监控平台搭建-磁盘
linux监控平台搭建-磁盘 磁盘:随着大数据快速发展.人工智能.自动化.云平台.数据量指数的增长.磁盘的使用量也在增长.目前的机器基本上采用SSD或者SATA盘,一直有人比较那个好.会不会使用时间短 ...
- Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(一)
在做性能测试的时候,重点关注点是各项性能指标,用Jmeter工具,查看指标数据,就是借助于聚合报告,但查看时也并不方便.那如何能更直观的查看各项数据呢?可以通过InfluxDB+Grafana+Jme ...
- Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(二)
在上一篇博文中,主要是讲了InfluxDB的配置,博文链接:https://www.cnblogs.com/hong-fithing/p/14453695.html,今天来分享下Jmeter的配置. ...
随机推荐
- YCCMS 3.3 CSRF漏洞--代码执行
一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软件 2.点击新建项目按钮,弹出对画框中选择(C:\ ...
- Linux下安装jdk-7u67-linux-x64.rpm
1.新建一个jdk的安装目录,我这里是在/usr/下新建了java目录,我是使用WinSCP创建的文件夹,把 jdk-7u80-linux-x64.tar.gz压缩包从本地Windows系统中拖到Li ...
- Eureka server
Eureka server使用的不是spring mvc的框架,而是使用Jersey. Eureka server ,启动的流程,追本溯源,是在 DiscoveryClient里面,使用这个构造方法 ...
- 集合学习之"将集合对象List<Product>转换为Map"
将集合对象List<Product>转换为Map key = Product对象的sku value =Product对象 1 List<Product> products = ...
- Flink调优
第1章 资源配置调优 Flink性能调优的第一步,就是为任务分配合适的资源,在一定范围内,增加资源的分配与性能的提升是成正比的,实现了最优的资源配置后,在此基础上再考虑进行后面论述的性能调优策略. ...
- 纯干货数学推导_傅里叶级数与傅里叶变换_Part3_周期为2L的函数展开
- 行内元素的padding和margin是否有效
行内元素的纵向padding和margin都是不考虑的,这是css规范定义的.inline元素确实可以设置垂直方向的padding和margin值,但是inline元素的margin和padding的 ...
- java继承时能包括静态的变量和方法吗?举例说明!
子类继承了超类定义的所有实例变量和方法包括静态的变量和方法(马克-to-win见下例),并且为它自己增添了独特的元素.子类只能有一个超类.Java不支持多超类的继承. 子类拥有超类的所有成员,但它不能 ...
- PAT A1001 A+B Format
Calculate a+b and output the sum in standard format -- that is, the digits must be separated into gr ...
- px,rem,em 通过媒体查询统一的代码
@media only screen and (max-width: 1080px), only screen and (max-device-width:1080px) { html,body { ...