docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程⽬录
1、安装docker
2、安装及配置influxDB
3、Grafana安装及配置
4、Jmeter配置及压测⼀个接⼝
背景:
在⽤jmeter压测接⼝的时候发现其原⽣的监控起来不是很友好,在⽹上查阅的时候发现结合influxDB和grafana,出来的报告很炫酷,监听结果看起来很舒服很明了。
前⾔:
InfluxDB:是⼀款⽤Go语⾔编写的开源分布式时序数据库。该数据库现在主要⽤于存储涉及⼤量的时间戳数据。⼩数据量的时候还性能还不错,但是数据量⼤⼀点,性能问题就体现出来了。不过只是收集⼀下我⼏个⼩时测试的数据,还是⾜够了。要是⼏个⽉的测试数据那还是建议换其他的数据库。
时序数据库:处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。想象它就像⼀个sql表,其中时间是它的主键
Grafana:是⼀个开源软件,拥有丰富的指标仪表盘和图形编辑器,适⽤Graphite, Elasticsearch, OpenTSDB, Prometheus,InfluxDB。简单点说就是⼀套开源WEB可视化平台。
原理:
jmeter压测⽣成测试数据 --> 然后通过jmeter中的后端监听异步将测试数据发送到influxDB中保存起来 --> grafana通过拉取influxDB中的数据,将测试结果的相关数据展⽰到仪表盘中
influxdb数据库中的名词理解
influxDB中的名词传统数据库中的概念
database数据库
measurement数据库中的表
points表⾥⾯的⼀⾏数据
我是在ubuntu上部署的
1、安装docker
由于apt官⽅库⾥的docker版本可能⽐较旧,所以先卸载可能存在的旧版本:
sudo apt-get remove docker docker-engine docker-ce docker.io
更新apt包索引:
sudo apt-get update
安装以下包以使apt可以通过HTTPS使⽤存储库(repository):
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
添加Docker官⽅的GPG密钥:
使⽤下⾯的命令来设置stable存储库:
sudo add-apt-repository "deb [arch=amd64] download.docker/linux/ubuntu $(lsb_release -cs) stable"
再更新⼀下apt包索引:
sudo apt-get update
安装最新版本的Docker CE:
sudo apt-get install -y docker-ce
检查docker是否安装完成:
docker --version
当提⽰docker 版本就说明docker安装成功了
2、安装及配置influxDB
2.1 docker下安装influxDB 查看并拉取镜像
##查看镜像
docker search influx
## 根据镜像名称拉取镜像
docker pull tutum/influxdb
运⾏镜像并⽣成容器
## -d 让服务后台运⾏,指令退出了,程序依旧运⾏
docker run -d --name jmeter-influx -p 8086:8086 tutum/influxdb
--name jmeter-influx:指定⽣成的容器的名称为jmeter-influx,可根据⾃⼰情况⾃⾏起名-p 8086:8086:指定端⼝映射,宿主机端⼝ : 容器端⼝
tutum/influxdb :镜像名称,可根据⾃⼰情况⾃⾏起名
查看容器是否⽣成成功
## 查看镜像是否打成功
docker images
## 查看容器是否启动成功
docker ps
## 查看所有启动过的容,包括成功和失败的
docker ps -a
页⾯提⽰404,但是没有⽆法访问即可
2.2 创建数据库
##进⼊Influxdb的Docker容器内
docker exec -it 容器id /bin/bash
##打开influx
influx
##查看数据库并创建jmeter数据库
show databases;
create database jmeter;
show databases;
use jmeter;
select * from jmeter;
exit;
3、Grafana安装及配置
3.1 docker安装grafana 查看并拉取镜像
##查看镜像
docker search grafana
## 根据镜像名称拉取镜像
docker pull grafana/grafana
运⾏镜像并⽣成容器
## 运⾏镜像并⽣成容器
run -d --name my_grafana -p 3000:3000 grafana/grafana
3.2 Grafana中配置influxDB
成功登陆后,添加数据源,我们这⾥选择influxDB。我这已经创建成功了⼀个名为influxDB_demo的数据源了
配置前⾯我们创建的influxDB的jmeter数据库信息,并测试连接是否成功
⾄此,数据源配置成功成功了。因我已经有⼀个了,这个就给删除掉了go语言开发环境搭建
3.3 Grafana使⽤模板创建仪表盘
配置好了influxdb的数据源,那么就可以获取到测试数据,现在需要将获取的数据展⽰出来,这也是grafana图形化的作⽤了官⽹下载jmeter对应的仪表盘模板
左右Data Source 选择influxDB,然后可以根据名称搜索⼀下jmeter就可以看到需要的插件了
+ 号 --> import --> upload JSON file -->选择下载下来的jmeter插件,然后配置⼀下相关信息

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。