jmeter+docker+influxdb+Grafana性能监控平台搭建

一、docker安装

? ? 1.下载地址

?https://www.docker.com/products/docker-desktop

? ? 2.配置镜像加速器

? ? ? ? 1)点击preferences

? ? ? ? 2)选择Daemon-->Advanced?

? ? ? ? 3)填入

????????????????????{

? ? ? ? ? ? ? ?????????"registry-mirrors": [

? ? ????????????????????"https://dockerhub.azk8s.cn",

? ? ????????????????????"https://reg-mirror.qiniu.com"

????????????? ????????]

????????????????}

? ? ? ? ????4)点击Apply&Restart

二、部署influxdb

? ? 1.下载influxdb镜像:docker pull influxdb

? ? 2.将新 influxDB 容器命名为 jmeterdb, 实行docker创建容器命令:

????????docker run -d -p 8083:8083 -p 8086:8086 --name=jmeterdb influxdb

? ? ? ?各个参数含义:

????????-d:容器在后台运行

????????-p:将容器内端口映射到宿主机端口,格式为 宿主机端口:容器内端口;8083是influxdb的web管理工具? ? ? ?端口,8086是influxdb的HTTP API端口

????????--expose:可以让容器接受外部传入的数据

????????--name:容器名称

????????最后是镜像名称

? ? 3.查看是否启动成功:docker ps

? ? 4.进入容器内部:docker exec –it jmeterdb bash

? ? 5.启动控制台客户端:influx

? ? 6.在容器内部创建jmeter数据库,用于收集JMeter发送的压测数据:?create database jmeter;

? ? 7.查看是否创建成功:show databases;

数据库创建成功

? 三、jmeter相关配置

? ? 1.在JMeter中添加 Backend Listener 组件,用于收集数据并发送给influxdb,

? ? ? ? 1)在Backend Listener implementation 中选择InfluxdbBackendListenerClient (注意:必须使用? ? ? ?jmeter5.0? 以上版本,否则需要单独装插件才可以看到这个组件)

? ? ? ? 2)在influxdbURL中将实际的influxdb hostname填写进去

? ? ? ? 3)其余配置保持不变

jmeter配置

? ?2.运行一个压测脚本后,在influxdb容器内查看是否入库:select*from jmeter;有数据表示压测结果成功存入

压测结果数据

四、配置Grafana

????1.部署Grafana

? ? ????1)下载镜像: docker pull grafana/grafana

? ? ????2) 启动镜像:docker run -d -p 3000:3000 --name=jmeterGraf grafana/grafana

? ? ????3)登录http://localhost:3000/?是否正常运行(默认账号密码均为:admin)

? ? 2.相关配置

? ? ? ? 1)添加influxDB数据源

选择数据源

? ? ? ? 2)配置influxdb 数据源

数据源配置项
点击save&test验证是否配置正确

? ? ? ? 3)在Grafana 内导入JMeter Dashboard

导入按钮点击


输入模版ID,点击load

注:可在https://grafana.com/grafana/dashboards上查找自己需要的模板

? ? ? ? 4)配置成功页面

模版 页面


监控成功页面

推荐阅读更多精彩内容