借助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监控平台的文章就介绍到这了,更多相关Docker搭建JMeter+Grafana+Influxdb监控平台内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 基于spring-boot和docker-java实现对docker容器的动态管理和监控功能[附完整源码下载]

    docker简介 Docker 是一个开源的应用容器引擎,和传统的虚拟机技术相比,Docker 容器性能开销极低,因此也广受开发者喜爱.随着基于docker的开发者越来越多,docker的镜像也原来越丰富,未来各种企业级的完整解决方案都可以直接通过下载镜像拿来即用.因此docker变得越来越重要. 本文目的 本文通过一个项目实例来介绍如果通过docker对外接口来实现对docker容器的管理和监控. 应用场景: 对服务器资源池通过docker进行统一管理,按需分配资源和创建容器,达到资源最大化利

  • Docker 容器内存监控原理及应用

    Docker 容器内存监控 linux内存监控 要明白docker容器内存是如何计算的,首先要明白linux中内存的相关概念. 使用free命令可以查看当前内存使用情况. [root@localhost ~]$ free total used free shared buffers cached Mem: 264420684 213853512 50567172 71822688 2095364 175733516 -/+ buffers/cache: 36024632 228396052 Sw

  • zabbix监控docker容器状态【推荐】

    前言:前段时间在部署zabbix,有个需求就是需要监控容器的状态 也就是cpu 内存 io的占用,于是就自己写了一个脚本,以及模板,在这里分享一下 嘿嘿 : ) 废话我也就不多说,直接开始 首选,zabbix_agentd 配置  vim /usr/local/zabbix/etc/zabbix_agentd.conf UserParameter=docker.discovery,/usr/local/zabbix/script/docker.py UserParameter=docker.[*

  • 使用Grafana 展示Docker容器的监控图表并设置邮件报警规则(图解)

    一.Docker 容器监控报警方式 接着上篇文章的记录,看到grafana的版本已经更新到4.2了,并且在4.0以后的版本中,加入了Alert Notifications 功能,这样在对容器 监控完,可以加入报警规则.根据官网介绍,报警方式也有很多种,常见的Email.Slack即时通讯.webhook等. 本篇记录的是邮件的报警设置.环境和上篇基本一致,都是在Docker 平台测试环境下,另外本篇使用的grafana容器的版本是用的 dockerhub上最新版本,该版本为grafana/gra

  • python脚本监控docker容器

    本文实例为大家分享了python脚本监控docker容器的方法,供大家参考,具体内容如下 脚本功能: 1.监控CPU使用率 2.监控内存使用状况 3.监控网络流量 具体代码: #!/usr/bin/env python # --*-- coding:UTF-8 --*-- import sys import tab import re import os import time from docker import Client import commands keys_container_st

  • 借助Docker搭建JMeter+Grafana+Influxdb监控平台的详细教程

    我们都知道Jmeter提供了原生的结果查看,既然有原生的查看结果,为什么还要多此一举使用其他工具进行查看呢,除了查看内容丰富外还有最主要的原因: Jmeter提供的查看结果插件本身是比较消耗性能的,所以在正式压测中应当禁用.但是我们又需要在脚本运行时实时查看结果,这时就需要借助外在工具实现. 除此之外,在真实压测过程中还需要注意Jmeter图形化模式只适合调试使用,不要进行压测.图形化的压测方式会消耗较多的客户端性能,在压测过程中容易因为客户端问题导致内存溢出.官方也给出了提示通过命令行执行.执

  • docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程

    目录 1.安装docker 2.安装及配置influxDB 3.Grafana安装及配置 4.Jmeter配置及压测一个接口 背景: 在用jmeter压测接口的时候发现其原生的监控起来不是很友好,在网上查阅的时候发现结合influxDB和grafana,出来的报告很炫酷,监听结果看起来很舒服很明了. 前言: InfluxDB:是一款用Go语言编写的开源分布式时序数据库.该数据库现在主要用于存储涉及大量的时间戳数据. 小数据量的时候还性能还不错,但是数据量大一点,性能问题就体现出来了.不过只是收集

  • 基于docker 搭建Prometheus+Grafana的过程详解

    一.介绍Prometheus Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,起始是由SoundCloud公司开发的.随着发展,越来越多公司和组织接受采用Prometheus,社会也十分活跃,他们便将它独立成开源项目,并且有公司来运作.Google SRE的书内也曾提到跟他们BorgMon监控系统相似的实现是Prometheus.现在最常见的Kubernetes容器管理系统中,通常会搭配Prometheus进行监控. Prometheus基本原理是通过HTT

  • docker 搭建基于prometheus的监控体系步骤实现

    目录 1.启动prometheus容器服务 2.启动成功后,公网访问该9090端口进入普罗米修斯主页 3.部署mysqld-exporer监控mysql数据库(想监控什么就部署对应的exporter即可) 4.重启prometheus服务 5.访问prometheus主页查看mysql的监控 6.将监控数据通过grafana面板展示 Prometheus是一个时间序列数据库.但是,它不仅仅是一个时间序列数据库. 它涵盖了可以绑定的整个生态系统工具集及其功能. Prometheus主要用于对基础设

  • 在 Windows 下搭建高效的 django 开发环境的详细教程

    从初学 django 到现在(记得那时最新版本是 1.8,本文发布时已经发展到 3.1 了),开发环境一直都是使用从官方文档或者别的教程中学来的方式搭建的.但是在实际项目的开发中,越来越感觉之前的开发环境难以适应项目的发展.官方文档或一些教程中的环境搭建方式主要存在这些问题: python manage.py runserver 启动的开发服务器热重载非常慢,尤其是当项目中导入了大量模块时,有时候改一次代码要等几秒钟才能完成重载. 主力开发环境为 Windows + PyCharm,然而有时候依

  • 搭建本地的idea激活服务器的详细教程

    前言 博主用的是idea这个IDE,因为最近idea官方打击第三方激活服务有些严重,所以我的idea经常处于今天可以用,到了明天就不能用的状态,所以,从idea激活的网站找到了本地的idea激活服务,和大家分享一下. 一.下载服务包 首先,需要在http://idea.lanyus.com/这个网站下面下载一个idea的本地服务器 二.安装 说是安装了,其实直接解压就可以了,在一个你认为可以直接放这个服务的地方直接解压缩,然后运行系统位数对应的exe程序就可以了. 然后我们就可以在idea的激活

  • 搭建PhpStorm+PhpStudy开发环境的超详细教程

    刚开始接触PHP开发,搭建开发环境是第一步,网上下载PhpStorm和PhpStudy软件,怎样安装和激活就不详细说了,我们重点来看一看怎样搭配这两个开发环境. 前提:现在假设你已经安装完PhpStorm和PhpStudy软件. 我的PhpStorm使用的是默认安装目录,这个没什么疑问的,PhpStudy软件我选择解压的目录是G:\Program Files\ . 在PhpStudy软件的解压目录下的www文件夹就是我们的网站根目录. 现在我们使用PhpStorm新建一个新工程. 第一步:打开P

  • 从零搭建SpringBoot2.X整合Redis框架的详细教程

    最近也不知道写啥,看之前写过Kafka整合Springboot的文章,大家反响还挺热烈的,嘿嘿嘿,就感觉帮助到大家了还挺好的,也算是达到了自己的目的,正好,今天业务模块是springboot整合redis,因为之前做过,所以有现成的代码,cv一下之后就可以了,所以时间比较多,那就给大家整理一下Springboot整合Redis的代码实现吧,从项目搭建到源码实现,下面全都有,耐心看完,相信会对你有所帮助的 好了,话不多说,我们开始吧,同样的,还是建议能够自己在自己的PC端实现一下 个人公众号:Ja

  • Docker安装Kong API Gateway并使用的详细教程

    1 简介 Kong不是一个简单的产品,本文讲的Kong主要指的是Kong API Gateway,即API网关.这次主要是简单体验一把,通过Docker安装,然后使用它的Route功能. 2 安装 创建Docker的Network: # 创建 $ docker network create kong-net # 检查 $ docker network list Kong可以使用无数据库模式,为了窥探一下它的配置,我们还是使用数据库,启动如下: $ docker run -itd --networ

  • kubernetes集群搭建Zabbix监控平台的详细过程

    目录 一.zabbix介绍 1.zabbix简介 2.zabbix特点 3.zabbix的主要功能 4.zabbix架构图 二.检查本地k8s环境 1.检查系统pod运行状态 2.检查node节点状态 三.配置nfs共享存储 1.安装nfs 2.创建共享目录 3.配置共享目录 4.启动相关服务 5.使配置生效 6.查看nfs 7.其他节点检查nfs共享 四.安装zabbix-mysql 1.编写zabbix-mysql的yaml文件 2.创建命名空间 3.创建zabbix数据库 4.检查pod状

随机推荐