JMeter+Grafana+Influxdb搭建可视化性能测试监控平台
使用 docker
方式安装
influxdb的版本为1.8的方式下,才成功。
1.安装influxdb
# 不加入influxdb的tag,就会下载 2.0 版本,而2.0版本与1.x版本区别很大,还没有解决数据库初始化进入命令行的问题,所以先使用1.8版本搭建。
docker pull influxdb:1.8
# 运行influxdb容器:
docker run -d -p 8083:8083 -p 8086:8086 --name=influxdb influxdb:1.8
- -d:以后台模式启动容器。
- -p 8083:8083:将本地机器的 8083 端口映射到容器内的 8083 端口,用于 InfluxDB 的 Web 管理界面。
- -p 8086:8086:将本地机器的 8086 端口映射到容器内的 8086 端口,用于 InfluxDB 的 HTTP API。
- –name influxdb:给容器指定一个名称。
- influxdb:1.8:要启动的 InfluxDB 镜像。
# 进入容器:
docker exec -it 容器id /bin/bash
# 创建数据库jmeter
influxd #启动influxd数据库
influx # 进入influxdb数据库
create database jmeter; # 创建jmeter库
show databases; # 显示所有数据库,显示jmeter库就创建成功
use jmeter; # 进入jmeter库
select * from jmeter; # 查询库里面的数据,这时数据是空的正常
exit;
2.安装grafana
# 拉取grafana镜像:
docker pull docker.io/grafana/grafana
# 运行容器:
docker run -idt --name=grafana -p 3000:3000 docker.io/grafana/grafana
idt: 这些是 docker run 命令的选项。它们的含义如下:
- i:保持标准输入 (STDIN) 打开,使容器的标准输入保持可用。
- d:将容器运行在后台(分离模式)。
- t:在容器中分配一个伪终端 (pseudo-TTY),以便可以与容器进行交互。
3. 访问grafana:http://ip:3000,登录:admin/admin
4. 配置数据源,点击左侧导航设置,点击数据源,点击添加,选择数据库类型位 influxDB
, 配置 URL和Database名。
5. 下载模板,访问
6. 在 Grafana
中导入下载的 json
模板。
7. 在 jmeter
脚本中新增 后端监视器,并配置数据源,将数据存储到 influxDB
的对应数据库中。
从 Docker
还原和备份数据操作记录:
Docker 还原 InfluxDB 数据
将包含要还原的数据的备份文件复制到 InfluxDB 容器中:
docker cp /path/to/backup <container_id_or_name>:/backup
在容器内执行还原命令:
docker exec -it <container_id_or_name> influxd restore -portable -db <database_name> /backup
- 进入容器验证。
Docker 中导出 InfluxDB 数据
获取正在运行 InfluxDB 容器的 ID 或名称:
docker ps
在容器内执行备份命令:
docker exec -it <container_id_or_name> influxd backup -portable /backup
将备份文件从容器复制到主机:
docker cp <container_id_or_name>:/backup /path/on/host