Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台

未完,待更新

一、背景

日常工作中,经常会用到Jmeter去压测,毕竟LR还要钱(@¥&*...),而最常用的接口压力测试,我们都是通过聚合报告去查看压测结果的,然鹅聚合报告的真的是丑到家了,作为程序猿这当然不能忍!那我们要怎么给它变得好看点捏?

二、如何华丽变身?

方式

优点

缺点

Jmeter+ant+Jenkins

快捷,上手简单

报告还是不够美观、直观,如果测试接口一多,报告就会显示臃肿不够直观

Grafana+Jmeter+Influxdb(推荐)

数据可视化,数据直观,筛选功能强大,拓展能力强

当然就是要自己部署环境咯,还得了解Influxdb的语法和常用查询语句,系统方法等.....

三、工具介绍

工具

介绍

Jmeter

Java语言开发的压力测试工具(不多介绍)

InfluxDB 

Go 语言开发的一个开源分布式时序数据库,非常适合存储指标、事件、分析等数据

Grafana 

纯 Javascript 开发的前端工具,用于访问 InfluxDB,自定义报表、显示图表等

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第1张图片

四、Centos7安装InfluxDB

备注:博主是自己买的阿里云服务器哈,就不介绍虚拟机下如何安装了(毕竟虚拟机很多坑...)

Influxdata官网下载路径:https://portal.influxdata.com/downloads

1、直接执行以下命令进行安装:

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.6.3.x86_64.rpm
sudo yum localinstall influxdb-1.6.3.x86_64.rpm

2、安装完成后,修改InfluxDB的配置,主要配置jmeter存储的数据库与端口号

vim /etc/influxdb/influxdb.conf

3、找到graphite并且修改它的库与端口

enabled = true
database = "jmeter"
retention-policy = ""
bind-address = ":2003"
protocol = "tcp"
consistency-level = "one

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第2张图片

4、找到http,将前面的#号去掉

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第3张图片

 5、现在新版本的InfluxDB已取消自带的数据可视化界面了,旧版的还是有,可通过找到admin,将前面的#号去掉,开放它的UI端口;(非必须!)

如果安装的版本没有也没关系,后面会介绍InfluxDB的可视化工具!

[admin]
# Determines whether the admin service is enabled.
enabled = true

# The default bind address used by the admin service.
bind-address = ":8083"

 6、配置成功后,启动InfluxDB

启动命令:systemctl start influxdb.service

查看状态命令:systemctl status influxdb.service

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第4张图片

到此,InfluxDB已安装并配置完成了!!*:ஐ٩(๑´ᵕ`)۶ஐ:*

特别说明:

  • 8083端口:InfluxDB的UI界面展示的端口
  • 8086端口:Grafana用来从数据库取数据的端口
  • 2003端口:刚刚设置的,Jmeter往数据库发数据的端口

五、Centos7安装Grafana

Grafana官网下载路径:https://grafana.com/grafana/download

1、直接执行以下命令进行安装:

wget https://dl.grafana.com/oss/release/grafana-6.5.2-1.x86_64.rpm
sudo yum localinstall grafana-6.5.2-1.x86_64.rpm

2、然后启动即可

启动命令:systemctl start grafana-server.service

查看状态命令:systemctl status grafana-server.service

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第5张图片

3、访问IP加端口【http://xxx.xx.xx.xx:3000】,输入用户名,密码登录系统。用户名与密码都是"admin",如果能打开页面则已经成功了!但是...装环境这东西怎么可能这么简单??

4、当你查看状态是active但是访问3000时是失败的话,辣么有可能就是你的3000端口还未开放!

如果你是买的各大厂商的云服务器,辣么这问题很好解决,去安全组开放3000端口即可,可以顺便把influxDB几个端口也给开了(8086、2003、8083)

因为博主用的是阿里云,所以这里就只介绍下阿里云如何开通端口,按着下面三张图来操作就行嘞

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第6张图片

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第7张图片

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第8张图片

这个时候有同学就说了,不通过平台的方式行不行,我想锻炼我的Linux能力...当然可以,接下来介绍下直接在Linux上配置防火墙规则来开放端口(Centos7以上,Centos6和7用的防火墙规则不一样,这里不介绍Centos6)

先掌握下systemctl+firewall常见命令

描述 命令
查看firewall状态 systemctl status firewalld.service
启动firewall systemctl start firewalld
停止firewall systemctl stop firewalld
开机启动firewall systemctl enable firewalld
开机禁止firewall systemctl disable firewalld
额外学习下systemctl命令^_^
查看服务是否开机启动 systemctl is-enabled firewalld.service
查看已启动的服务列表 systemctl list-unit-files|grep enabled
查看启动失败的服务列表 systemctl --failed

 

其次掌握下firewall-cmd常见命令

描述 命令
查看firewall全部信息 firewall-cmd --list-all
查看已开放的端口 firewall-cmd --list-ports
更新防火墙规则 firewall-cmd --reload
开放端口 firewall-cmd --zone=public --add-port=3000/tcp --permanent
关闭端口 firewall-cmd --zone=public --remove-port=3000/tcp --permanent

 

最终执行步骤:

  1. 首先查看firewall是否已开启:systemctl status firewalld.service
  2. 开放端口(开放后需要更新规则才能生效): firewall-cmd --zone=public --add-port=3000/tcp --permanent
  3. 更新防火墙规则:firewall-cmd --reload

Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台_第9张图片

你可能感兴趣的:(Centos7 搭建Grafana+Jmeter+Influxdb 性能监控平台)