借助Docker搭建JMeter+Grafana+Influxdb监控平台
我们都知道Jmeter提供了原生的结果查看,既然有原生的查看结果,为什么还要多此一举使用其他工具进行查看呢,除了查看内容丰富外还有最主要的原因:
Jmeter提供的查看结果插件本身是比较消耗性能的,所以在正式压测中应当禁用。但是我们又需要在脚本运行时实时查看结果,这时就需要借助外在工具实现。
除此之外,在真实压测过程中还需要注意Jmeter图形化模式只适合调试使用,不要进行压测。图形化的压测方式会消耗较多的客户端性能,在压测过程中容易因为客户端问题导致内存溢出。官方也给出了提示通过命令行执行。执行命令:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
- -n 表示在非 GUI 模式下运行 JMeter;
- -t 表示要运行的 JMeter 测试脚本文件,一般是 jmx 结尾的文件;
- -l 表示记录结果的文件,默认以 jtl 结尾;
- -e 表示测试完成后生成测试报表;
- -o 表示指定的生成结果文件夹位置。
实现原理
接下来详解借助 docker 使用 InfluxDB 和 Grafana 搭建性能可视化监控平台。
InfluxDB概念:InfluxDB是一款用Go语言编写的开源分布式时序、事件和指标数据库,无需外部依赖。该数据库现在主要用于存储涉及大量的时间戳数据,如DevOps监控数据,APP metrics, loT传感器数据和实时分析数据。
InfluxDB概念特点:
- 无结构(无模式):可以是任意数量的列;
- 可以设置metric的保存时间;
- 支持与时间有关的相关函数(如min、max、sum、count、mean、median等),方便统计;
- 支持存储策略:可以用于数据的删改。(influxDB没有提供数据的删除与修改方法);
- 支持连续查询:是数据库中自动定时启动的一组语句,和存储策略搭配可以降低InfluxDB的系统占用量;
- 原生的HTTP支持,内置HTTP API;
- 支持类似sql语法;
- 支持设置数据在集群中的副本数;
- 支持定期采样数据,写入另外的measurement,方便分粒度存储数据。
Grafana概念:一个开源软件,拥有丰富的指标仪表盘和图形编辑器,适用Graphite, Elasticsearch, OpenTSDB, Prometheus,InfluxDB。简单点说就是一套开源WEB可视化平台。
JMeter引入Backend Listener将在压测过程中实时发送统计指标数据发送到Influxdb数据库,Grafana(开源的WEB可视化看板)数据源连接到Influxdb,创建可视化看板,并实时获取到测试指标数据。
安装InfluxDB
docker 下进行安装
拉取influxdb镜像:docker pull influxdb
运行influxdb容器:docker run --name my_influxdb -p 8086:8086 influxdb
进入容器:docker exec -it 容器id /bin/bash
创建数据库 jmeter
influx
show databases;
create database jmeter;
show databases;
use jmeter;
select * from jmeter;
exit;
安装Grafana
拉取grafana镜像:docker pull grafana/grafana
运行容器:docker run --name my_grafana -p 3000:3000 grafana/grafana
访问grafana:http://ip:3000
用户名与密码都是"admin"
进入后添加数据库
进入后对数据库进行配置
保存并且测试
配置展示模板
模板比较丰富,可以预览进行查看,选择合适的进行下载
下载地址:https://grafana.com/grafana/dashboards
下载json文件
准备导入
将下载下来的json文件导入之后即可。
设置完成后进入面板
在此可设置刷新频率
配置Jmeter
创建Jmeter脚本。
设置后端监听器
运行脚本后可查看结果
借助Docker搭建JMeter+Grafana+Influxdb监控平台的更多相关文章
- 搭建Jmeter + Grafana + InfluxDB性能测试监控环境
背景 Jmeter原生的实时监控每半分钟收集一次数据,只能在Linux控制台查看日志输出,界面看起来不直观,图表报告只能等压测结束后才能生成.如下图为jmeter在Linux下运行的实时日志: 那么如 ...
- 基于Docker 部署Jmeter + Grafana + InfluxDB 性能测试监控配置(亲测可用)
工具介绍: InfluxDB:是一款用Go语言编写的开源分布式时序.事件和指标数据库,无需外部依赖.该数据库现在主要用于存储涉及大量的时间戳数据,如DevOps监控数据,APP metrics, lo ...
- [转]Jmeter + Grafana + InfluxDB 性能测试监控
https://www.cnblogs.com/yyhh/p/5990228.html Jmeter + Grafana + InfluxDB 性能测试监控 效果不错
- [转帖]基于docker 搭建Prometheus+Grafana
基于docker 搭建Prometheus+Grafana https://www.cnblogs.com/xiao987334176/p/9930517.html need good study 一 ...
- 基于Prometheus和Grafana的监控平台 - 运维告警
通过前面几篇文章我们搭建好了监控环境并且监控了服务器.数据库.应用,运维人员可以实时了解当前被监控对象的运行情况,但是他们不可能时时坐在电脑边上盯着DashBoard,这就需要一个告警功能,当服务器或 ...
- JMeter+Grafana+Influxdb搭建可视化性能测试监控平台(使用了docker)
[运行自定义镜像搭建监控平台] 继上一篇的帖子 ,上一篇已经展示了如何自定义docker镜像,大家操作就行 或者 用我已经自定义好了的镜像,直接pull就行 下面我简单介绍pull下来后如何使用 拉取 ...
- 基于Centos7.4搭建prometheus+grafana+altertManger监控Spring Boot微服务(docker版)
目的:给我们项目的微服务应用都加上监控告警.在这之前你需要将 Spring Boot Actuator引入 本章主要介绍 如何集成监控告警系统Prometheus 和图形化界面Grafana 如何自定 ...
- influxdb + Grafana可视化监控平台
在centos6.5上influxdb + Grafana监控平台配置: 1.RedHat and CentOS users can install the latest stable version ...
- Jmeter + Grafana + InfluxDB 性能测试监控
阅读目录 1. 安装InfluxDB 2. 安装Grafana 3. 配置Jmeter 序章 前几天在群里看到大神们在讨论Jmeter + InfluxDB + Grafana监控.说起来Jmeter ...
随机推荐
- vue之keep-alive组件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CF1147F Zigzag Game & 稳定婚姻问题学习笔记
CF1147F Zigzag Game 这题太神仙了,不得不记录一下. 我网络流做不动了,DS做不动了,DP做不动了,特别自闭.于是博弈论之神(就是随手切3500博弈的那种) \(\color{bla ...
- NOIP2017 D1T3 逛公园
发现 \(K\) 很小,不妨设置一个 \(O(NK)\) 的 \(DP\). 发现可行的最短路必须满足是 \(d <= dis <= d + K\). 由逆向思维,则是从某点出发,可以消耗 ...
- redis学习之——主从复制(replication)
准备:拥有linux环境,并安装redis mater:主机,进行写操作 slave:从机,进行读操作 一.配置 继续前边的学习.我们是拷贝redis.conf,文件到了/root /redis 下. ...
- Service Cloud 零基础(二)Knowledge浅谈
本篇参考:https://trailhead.salesforce.com/content/learn/projects/set-up-salesforce-knowledge https://tra ...
- 使用collectd+influxdb+grafna监控进程的健康状态
一,前言 本文将介绍如何使用collectd+influxdb+grafna进行进程的监控,监控项为:进程健康状态. 思路为:使用collectd的processes插件进行程序进程的监控,储存到in ...
- 个人微信公众号搭建Python实现 -开发配置和微信服务器转入-配置说明(14.1.2)
@ 目录 1.查看基本配置 2.修改服务器配置 3.当上面都配置好,点击提交 4.配置如下 1.查看基本配置 登录到微信公众号控制面板后点击基本配置 这里要讲的就是订阅号 前往注册微信公众号 2.修改 ...
- Typora + 七牛云图床快速配置,告别手动上传图片!
大家好,我是zeroing,本文将介绍关于 Typora 软件如何配置七牛云图床,实现图片即插即用,可以先看一下最终效果! 可以看到图片借助 Typora 软件自动将本地存储转化为第三方图片网络链接 ...
- 在linux下搭建NFS服务器实现文件共享
目录 一.关于NFS 二.搭建一台NFS服务器共享特定资源 三.调优 一.关于NFS 1.NFS是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系 ...
- Docker来搭建分布式文件系统FastDfs
对于文件存储来说,一般情况下简单的处理就是在Django配置文件中配置存储目录,按照规则对文件进行上传或者下载. 实际上,当文件较少的时候,Django是可以应付的过来的.但当文件以海量形式出现的时候 ...