性能测试——搭建Prometheus+Grafana平台

一、搭建influxdb + prometheus + grafana +Jmeter监控平台

1、目的:对性能测试的结果进行持久化存储。

2、每个组件介绍

  1. Jmeter:性能测试工具,可以收集到服务器的性能测试指标:统计TPS、响应时间、线程数、错误率等信息。
  2. influxdb: 一种时序数据库, 可以永久性保存数据【除非手动清除和数 据库坏了】
    1. 时序数据库:是一种时间相关的非关系型数据库,按照时间序列记 录数据,每一条数据都有一个时间,很方便用线性图展示数据。
    2. Jmeter通过一个【后端监听器】可以将统计出的结果实时异步发送 到 InfluxDB 中进行持久化存储
  3. Grafana:监控大屏, 一个web端的展示平台, 通过更换模板展示不同的 效果,可以直接拉取influxdb数据显示出来在页面图标里,直观并美观

图解释:Jmeter通过对服务器进行压测,得到性能的业务指标,再通过后端监听器把数据传输给influxdb存储,grafana从influxdb里读取数据展示。

3、安装和部署监控平台

Grafana

  1. 介绍:grafana是一款用go编写的开源应用,用于大规模指标数据的可视化 展示,是网络架构和应用分析中最流行的时序数据展示工具;【监控大屏】
    1. 支持的数据库:influxdb、prometheus、graphite等 【都是时序数据库】
    2. 官方网站:grafana.com网站
  2. 安装:安装建议使用独立机器,不要在被测项目服务器上,会占用系统资源影响性能 测试结果数据。【可以放在之前的助攻机上或者新建一个空的机器上】步骤如下:
    1. 将安装包放在服务器上grafana-9.5.21-1.x86_64.rpm
    2. 在线安装 yum install -y grafana-9.5.21-1.x86_64.rpm【或者rpm -ivh grafana-9.5.21-1.x86_64.rpm】
    3. 启动服务:systemctl start grafana-server | systemctl restart grafana-server 【启动 | 重启】
    4. afana-server 【启动 | 重启】 第四步: 查看一下grafana的服务: systemctl status grafana-server ,状态为active(running)
    5. web页面访问grafana服务:端口默认3000,账号和密码默认是 admin / admin
      1. 访问http://机器ip:3000,可以看到登录页面,输入账号和密码即可登录

此时,完成Grafana的安装

Influxdb

  1. 介绍:influxDB是一个时序数据库,使用Go语言编写,适合构建大部分分
    布式监控系统。JMeter的业务指标支持的influxdb数据库,不支持prometheus数据库。
  2. 安装:使用独立机器安装,建议grafana和influxdb放在同一机器,安装步骤如下:
    1. 导入rpm包到服务器 influxdb-1.7.0.x86_64.rpm
    2. 在服务器上在线安装:yum install -y influxdb-1.7.0.x86_64.rpm
    3. 启动数据库:influx & 或者 service influxdb start,端口为8086(&是后台运行的意思)
    4. 查看服务启动情况:ps -ef | grep influxd,如下图:

Jmeter

  1. 在Jmeter与influxdb集成:添加后端监听器,选择influxdb,以及做好数据库
    的信息配置:

备注:

1、application对应的值是事物名,可以不改

2、summyOnly对应的值是true,代表合并所有事物,就没有其他事物 None

Influxdb + Grafana结合使用:添加数据源【influxdb数据库】+ 添加面板【grafana的模板】

1、具体步骤

  1. 访问grafana,http://ip地址:3000,使用账号密码admin/admin 登录进去

  2. 默认没有数据源,添加数据源:Administrator-->data
    Sources-->Add data source--->搜索influxdb,并选择influxdb:

  3. 配置influxdb的ip和端口,并选择jmeter数据库:

4. Dashboard【New】 > import--> 输入5496, load >选择db名 字为刚刚添加的数据源【influxDB】--> import 即可:

相关推荐
运维栈记18 小时前
使用Grafana监控K8S中的异常Pod
docker·kubernetes·grafana
韩宏伟1 天前
使用 Loki + Promtail + Grafana 实现 Docker 容器日志采集与可视化
docker·容器·grafana
恋上钢琴的虫2 天前
使用 Loki + Promtail + Grafana搭建日志系统
运维·grafana
心一信息2 天前
grafana及zabbix在linux上的部署
linux·zabbix·grafana
m0_736927042 天前
从被动救火到主动预警,用 Prometheus + Alertmanager 跑通告警闭环
prometheus
Jabes.yang4 天前
Java求职面试: 互联网医疗场景中的缓存技术与监控运维应用
java·redis·spring security·grafana·prometheus·oauth2·互联网医疗
川石课堂软件测试4 天前
自动化测试之 Cucumber 工具
数据库·功能测试·网络协议·测试工具·mysql·单元测试·prometheus
K_i1344 天前
负载均衡:运维高可用的核心技术
负载均衡·grafana·prometheus
爱技术的小伙子4 天前
【Linux运维】 Prometheus + Grafana + Alertmanager 监控系统部署指南(CentOS & Ubuntu 通用版)
linux·运维·prometheus
川石课堂软件测试4 天前
MySQL数据库之DBA命令
数据库·网络协议·mysql·http·单元测试·prometheus·dba