一、安装influxdb
1.下载安装包:https://portal.influxdata.com/downloads/
2. 通过rpm -ivh XXXX.rpm 命令安装influxdb
3.能过influx -version查看是否安装成功
4.配置influxdb
a。打开http连(后面Grafana连接数据库、jmeter同步测试结果用)
vim /etc/influxdb/influxdb.conf 打开配置文件。
找到【http】模块打开“enabled=true”、“bind-address=":8086""、“auth-enabled=true”。
b。打开[[graphite]]模块(jmeter同步测试结果用)
vim /etc/influxdb/influxdb.conf 打开配置文件(注:如果是已打开状态,不用再次输入命令)。
enabled = true
database = "jmeter"
retention-policy = ""
bind-address = ":2003"
protocol = "tcp"
consistency-level = "one"
batch-size = 5000
batch-pending = 10
batch-timeout = "1s"
udp-read-buffer = 0
separator = "."
英文状态下输入:WQ退出编辑模式。
5.创建数据库。
通过“service influxdb start"(或者systemctl start influxdb)启动 influx (注:一定要先启动influxdb,否则jmeter同步测试结果、Grafana获取数据时都会报错。 restart\stop 分别对应重启和关停)
输入 influx,进入influxdb。
输入 show stats 查看是否已运行influxdb。(如果创建了账号密码,还需要通过auth 命令 ,按提示输入用户名、密码,输入密码时,是不显式显式的,输入正确的密码,回车就好了)
命令create database jmeter。创建数据库 jmeter。(drop database “db_name"是删除数据库)
命令use db_name进入数据库(这里是use jmeter)
命令show measurements 查看该数据库下所有表。。(刚刚创建的库里面没有这么多表)
创建表,influxdb没有单独创建表的语句,直接在数据库里插入一条数据就可以创建一张表
insert measurement_name,host=localhost,monitor_name=test_monitor,val=2 count=2 (创建了一张表,并赋值tags host、monitor_name、val,以及 给count 赋值2)
select * from measurement_name 可以查看表中数据。(我已插入两条数据)
命令 drop measurement measurement_name 删除表
6. 创建用户
命令create user rw_influxdb with password ‘12345’ with all privileges; 创建一个用户为”rw_influxdb"、密码为“12345”的用户(后面jmeter、Grafana连接时要用)
注:网上很多说要在配置文件中开启【admin】的,在最近的版本上已被删除该模块,即使手动添加,也不能用通web页面访问数据库。至少我没有搞出来。
二、Grafana 安装
1.安装Grafana:yum install https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.1-1.x86_64.rpm
2.启动服务:service grafana-server start
3. http://ip:3000 登录Grafana, 默认登录账号、密码 :admin、admin
三、jmeter发送数据到influxdb
在jmeter中,选择Listener-》Backend Listener。
1. org.apache.jmeter.visualizers.backend.graphite.GraphiteBackendListenerClient 方式写入数据。这种方式会把数据以一定的规则放到不同的表中。
jmeter配置如下
influxdb中的数据格式如下。jmeter3后是否有“.”和Jmeter中rootMetricsPrefix的值设置有关。
其中每个表中数据所代表的含意请查看官方文献:https://jmeter.apache.org/usermanual/realtime-results.html
2. 通过org.apache.jmeter.visualizers.backend.influxdb.influxdbBackendListenerClient保存数据。这种时候会把数据放到同一个表中。
特别注意,如果influxdb设置了用户及密码,需要在连接串中加入&u=XX&p=XX 分别赋值用户、密码。
连接中的write?db=jmeter中的jmeter是要保存数据的database,如果没有创建或者想修改数据存储的位置,可以修改其值
四、配置Grafana
1. 点击Grafana logo,选择Data Source,配置相应的值。
2. 选择Dashboard配置看板(可以导入,也要自建)
模板选择:https://grafana.com/grafana/dashboards 选择相应的模板。
我选择的是编号为:3351的这个模板。下载Json。
导入模板。
导入数据后,有些变量还要配置。配置后即可使用。看板配置下篇细写