搞性能测试,可以搭建Grafana+Telegraf+InfluxDB 监控平台,监控服务器资源使用率、jmeter性能测试结果等。


telegraf: 是一个用 Go 编写的代理程序,可收集系统和服务的统计数据,并写入到 InfluxDB 数据库。

influxdb:是一个用 Go 编写的目前比较流行的时间序列数据库。
grafana:是一个开箱即用的可视化工具,具有功能齐全的度量仪表盘和图形编辑器,有灵活丰富的图形化选项,可以混合多种风格,支持多个数据源特点。
三者之间的关系为:telegraf(监控数据收集)->influxdb(监控数据存储)->(监控数据展示)


  在服务器/home目录下新增一个grafana文件夹,并将下载的组件全部上传至该目录下

上传组件:grafana-8.4.4-1.x86_64.rpm、influxdb-1.8.1.x86_64.rpm、telegraf-1.21.4-1.x86_64.rpm

  组件链接: https://pan.baidu.com/s/1f_I4hXe4a317ivlrEIoTHQ 提取码: y4vi

1.安装influxdb

1.1 安装influxdb

cd /home/grafana

rpm -ivh influxdb-1.8.1.x86_64.rpm

1.2 启动influxdb

systemctl start influxdb

1.3 查看influxdb启动状态

ps -ef|grep influxdb

1.4 创建influxdb数据库

influx

>create database telegraf

>show databases

>exit

数据库默认端口是 8086

2.安装telegraf

2.1 安装telegraf

cd /home/grafana

rpm -ivh telegraf-1.21.4-1.x86_64.rpm

2.2 配置telegraf

vi /etc/telegraf/telegraf.conf

#输入  在vi命令行模式中查找内容

/urls

#输入 进入编辑模式

i

## 修改内容如下

urls = ["http://localhost:8086"] #infulxdb 地址

database = "telegraf" #数据库

retention_policy = ""    必须设置为空

#输入 保存并退出 esc

:wq

  其他设置:

2.3 启动telegraf

systemctl restart telegraf

3.安装grafana

3.1 安装字体

安装grafana,我们首先需要安装字体,不然我们的grafana安装会报错

yum install urw-fonts

yum install initscripts fontconfig -y #该步骤可不执行

3.2 再执行安装grafana的命令

cd /home/grafana

rpm -ivh grafana-8.4.4-1.x86_64.rpm

3.3 启动grafana

systemctl start grafana-server

3.4 查看grafana启动状态

ps -ef|grep grafana

3.5 设置开机启动

#可以不用

systemctl enable grafana-server.service

3.6 浏览器访问grafana

http://ip地址:3000

初次启动,grafana会创建数据库,时间稍长,稍后即可访问http://localhost:3000打开grafana登录页面。

输入默认用户名密码登录(admin/admin)

4.配置grafana数据源和仪表板

登录grafana,按照主页向导完成初次配置

4.1 添加datasource(数据源)

在Add data source页面,点击influxDB,按照提示进行设置

NAME:就是给数据创建一个名字(如:telegraf)

url地址为你的influxdb地址,路径为你的服务器的公网ip地址+端口号(如:http://10.16.23.149:8086)

database我们输入之前创建的数据库名称:telegraf

user和password默认为root,如果有需要自行去数据库添加user

添加好后,点击“save&test”

当上方出现data source is working  表示数据库正常运行可以访问,否则请检查防火墙和配置内容

4.2 导入DASHBOARDS(仪表板)

点击左侧菜单栏【+】-【import】,进入导入dashboard页面

导入“下载的仪表板”和“创建的数据源”,点击【import】按钮,导入成功

仪表板下载地址:

https://grafana.com/grafana/dashboards/?dataSource=influxdb

4.3 操作示例

4.3.1 导入telegraf仪表板

进入仪表板下载地址页面,搜索栏输入telegraf进行搜索,选择合适的仪表板,点击下载到本地(JSON文件)

在grafana导入仪表板页面,导入下载的telegraf仪表板,选择数据源为telegraf(步骤4.1创建),点击【import】按钮,导入成功

4.3.2 导入jmeter仪表板

进入仪表板下载地址页面,搜索栏输入jmeter进行搜索,选择合适的仪表板,点击下载到本地(JSON文件)

(参照步骤1.4创建数据库jmeter,参照步骤4.1添加数据源jmeter:数据源name为jmeter、数据库为新建的数据库jmeter)

在grafana导入仪表板页面,导入下载的jmeter仪表板,选择数据源为jmeter,点击【import】按钮,导入成功

5.配置jmeter后端监听

5.1 启动jmeter,测试脚本添加【后端监听器】

【后端监听器实现】选择:org.apache.jmeter.visualizers.backend.influxdb.InfluxdbBackendListenerClient

【influxdbUrl】:http://host_to_change:8086/write?db=jmeter   #host_to_change为infulxdb 地址

【testTitle】:${__TestPlanName}

其它选项均用【后端监听器】默认设置

5.2 运行脚本,实时监控测试结果

登入grafana,选择jmeter仪表板,查看测试结果

 6. 监控效果展示

6.1 硬件资源监控部分截图

 6.2 jmeter监控部分截图

部署grafana+telegraf+influxdb 及 配置 jmeter后端监听的更多相关文章

  1. 搭建grafana+telegraf+influxdb服务器性能监控平台

    最近在学习性能测试,了解到一套系统资源使用率低的监控环境,也就是grafana+telegraf+influxdb. InfluxDB是一款优秀的时间序列数据库,适合存储设备性能.日志.物联网传感器等 ...

  2. Oracle一个实例配置多个监听

    要想给一个Oracle实例配置多个监听,首先要定义多个监听器,因为是多个监听,势必会有一些监听端口不是1521. 现在服务端的listener.ora文件中定义如下监听器: LISTENER = (D ...

  3. 黄聪:windows下使用xampp3.2.2配置多个监听端口和不同的网站目录

    windows下使用xampp3.2.2配置多个监听端口和不同的网站目录 一:配置Apache文件httpd.conf 打开Apache的配置文件httpd.conf,可以通过点击xampp的Apac ...

  4. 【PHP】xampp配置多个监听端口和不同的网站目录(转)

    转自:https://blog.csdn.net/cc1314_/article/details/75646344 windows下使用xampp配置多个监听端口和不同的网站目录 一:配置Apache ...

  5. Grafana+Telegraf+Influxdb监控Tomcat集群方案

    前言 前一段时间自家养的几只猫经常出问题,由于没有有效的监控预警手段,以至于问题出现或者许久一段时间才会被通知到.凌晨一点这个锅可谁都不想背,为此基于目前的情况搭建了以下这么一套监控预警系统. 相关软 ...

  6. springBoot高级:自动配置分析,事件监听,启动流程分析,监控,部署

    知识点梳理 课堂讲义 02-SpringBoot自动配置-@Conditional使用 Condition是Spring4.0后引入的条件化配置接口,通过实现Condition接口可以完成有条件的加载 ...

  7. Apache配置多个监听端口

    以前做PC上的,都是配置一个端口,整一大堆的虚拟目录: 在 \conf\extra下找到httpd-vhosts.conf这个配置文件,想下面这样配置就行,监听80端口,访问相应的ServerName ...

  8. Apache配置多个监听端口和不同的网站目录的简单方法(转)

    转自http://www.waaqi.com/archives/707.html 由于开发的多项目,每个项目又要独立,要用根目录地址. 所以这时候我们需要配置多个不同目录的Apache,如果是外部网可 ...

  9. Apache无法正常启动(配置多个监听端口)

    Apache监测多个端口配置: 1.conf->extra->httpd-vhosts.conf  检查配置项是否写错 2.http.conf listen端口是否监听正确 3.环境变量中 ...

随机推荐

  1. elasticsearch设置密码及Java密码连接

    目录 1. 安装 2. 修改elasticsearch-8.2.2\config\elasticsearch.yml文件里面xpack.security.enabled: false为 3. 重新启动 ...

  2. python自学笔记10:while循环和for循环

    条件控制和循环控制是两种典型的流程控制方法,前面我们写了 if 条件控制,这节讲 for 循环和 while 循环. 循环是另一种控制流程的方式,一个循环体中的代码在程序中只需要编写一次,但可能会连续 ...

  3. dotnet 设计规范 · 抽象定义

    严格来说,只有一个类被其他的类继承,那么这个类就是基类.在很多时候,基类的定义是提供足够的抽象和通用方法和属性.默认实现.在继承关系中,基类定义在上层抽象和底层自定义之间. 他们充当抽象实现的实现帮助 ...

  4. Android蓝牙线控切歌、连接状态监听(无线耳机也适用)

    1. 监听蓝牙设备(音频)连接状态 所有代码已测试在Android11也能正常使用 (Android SDK 30) 首先新建一个广播类 BluetoothStateReceiver /** * @a ...

  5. PHP生成唯一不重复的编号

    当我们要将一个庞大的数据进行编号时,而编号有位数限制,比如5位的车牌号.10位的某证件号码.订单流水号.短网址等等,我们可以使用36进制计算出符合位数的不重复的编号. 下载:https://url72 ...

  6. 操作系统学习笔记10 | I/O、显示器与键盘

    从这一部分开始介绍操作系统的设备驱动,操作系统通过文件系统的抽象驱动设备让用户能够使用显示器.键盘等交互工具.并讲解printf和scanf是如何实现敲下键盘将字符显示到屏幕上的. 参考资料: 课程: ...

  7. tomcat的catalina.out日志按自定义时间格式进行分割

    默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成 ...

  8. MinIO Client完全指南

    官方文档地址:http://docs.minio.org.cn/docs/master/minio-client-complete-guide 下载,添加云存储服务参考这篇文章:https://www ...

  9. ingress-nginx 的使用 =》 部署在 Kubernetes 集群中的应用暴露给外部的用户使用

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247488189&idx=1&sn=8175f067 ...

  10. 查询nginx访问日志中访问次数最多的前10个IP地址

    cat log | cut -d ' ' -f 1 | sort | uniq -c | sort -nr | awk '{print $0}' | head -n 10