prometheus 以及 grafana的安装详见:
https://www.yuque.com/zhanyifan-rkxpe/grf7g5/lu2v0m
添加influxdb的配置
https://www.yuque.com/zhanyifan-rkxpe/grf7g5/lu2v0m#nvtRy
在上面的docker-compose.yml中添加influxdb (记得在当前目录下创建influxdb的目录结构)
version: "3"services:prometheus:image: prom/prometheus:v2.0.0container_name: 'prometheus'volumes:- ./data/:/etc/prometheus/ #映射prometheus的配置文件- /etc/localtime:/etc/localtime:ro #同步容器与宿主机的时间,这个非常重要,如果时间不一致,会导致prometheus抓不到数据ports:- '9090:9090'grafana:image: grafana/grafana:5.3.4container_name: 'grafana'ports:- '3000:3000'volumes:- ./grafana/config/grafana.ini:/etc/grafana/grafana.ini #grafana报警邮件配置- ./grafana/provisioning/:/etc/grafana/provisioning/ #配置grafana的prometheus数据源- /etc/localtime:/etc/localtime:roenv_file:- ./grafana/config.monitoring #grafana登录配置depends_on:- prometheus #grafana需要在prometheus之后启动influxdb:image: influxdb:1.8container_name: 'influxdb'ports:- '8086:8086'volumes:- ./influxdb:/var/lib/influxdb
启动docker-compose
可以看到,grafana以及influxdb都已经启动。
进入到influxdb容器中,创建jmeter的库
➜ prometheus docker exec -it 7781eea6376e /bin/bashroot@7781eea6376e:/# show databases;bash: show: command not foundroot@7781eea6376e:/# influxdbbash: influxdb: command not foundroot@7781eea6376e:/# influxConnected to http://localhost:8086 version 1.8.9InfluxDB shell version: 1.8.9> show databasesname: databasesname----_internaljmeter
创建库命令
create database jmeter; # 创建jmeter库show databases; # 显示所有数据库,显示jmeter库就创建成功use jmeter; # 进入jmeter库select * from jmeter;
Jmeter 进行配置,将压测的数据保存到influxdb
1. 在 jmeter 的线程组中添加后端监视器
添加 -> 监听器 -> 后端监听器
监听器的实现 选 influxdbBackendListenerClient, 需要修改 influxdbUrl,修改成自己的ip
measurement: 需要修改成在 influxdb中创建的database
在jmeter中随便执行一次,查看influxdb中是否有变化
在grafana中添加influxdb的数据源

在 grafana 中添加 import jmeter 的监控模版
https://grafana.com/api/dashboards/5496/revisions/1/download
将文件中的json,直接复制进去,即可
执行jmeter的测试,就能看到页面的变化
