influxDB1.6版安装与配置(windows环境)、Jmeter+influxDB+Grafana性能监控
influxDB
1.介绍
influxDB是一个开源的时间序列数据库,同时也属于关系型数据库,因为influxDB主要是针对一次插入的数据,没有类似更新的操作,所以插入和读出数据显示速度比较快,我主要用来保存Jmeter运行的测试结果。
2.安装
2.1 下载地址(需要*)
https://portal.influxdata.com/downloads
influxDB,Nightly是每日的意思,每日构建,属于测试版本,要选择V1.6.2,点击后无反应,我是查看源码,找的下载地址,下载的(选择windows版本)。
2.2 解压安装包
2.3 修改配置文件
InfluxDB 的数据存储主要有三个目录。默认情况下是 meta, wal 以及 data 三个目录,服务器运行后会自动生成。
meta 用于存储数据库的一些元数据,meta 目录下有一个 meta.db
文件。
wal 目录存放预写日志文件,以 .wal
结尾。
data 目录存放实际存储的数据文件,以 .tsm
结尾。
一、修改26行地址,去掉29,32行注释
二、修改45、48行地址
三、去掉68;168、171;183,186、190;203、206、209;220、223;行注释
2.4 运行influxDB数据库服务器
通过命令启动
influxd.exe -config influxdb.conf
运行后,不要关闭
2.5 运行influxDB数据库客户端
进入安装目录,直接运行influx.exe即可
2.5 influxDB数据库常用命令
1、显示所有数据库:
show databases
2、创建数据库:
create database test
3、使用某个数据库:
use test
4、显示所有表
show measurements
无表显示为空
5、新建表和插入数据
新建表没有具体的语法,只是增加第一条数据时,会自动建立表
insert results,hostname=index1 value=1
results代表表名,hostname是索引,value是具体的字段,默认会有time字段,也可以自己设定输入的时间
这里的时间看不懂,可以设置一下时间显示格式
precision rfc3339
7、查询数据
表名有点号时,输入双引号
和sql语法相同,区别:
measurement 数据库中的表
points 表里面的一行数据,Point由时间戳(time)、数据(field)、标签(tags)组成。
8、用户管理
a.显示所有用户:
show users
b.新增用户:
-
--普通用户
-
create user "user" with password 'user'
-
--管理员用户
-
create user "admin" with password 'admin' with all privileges
c.删除用户
drop user "user"
2.6 基于web端管理influxDB数据库
网上好多修改配置文件中admin选项的文章,在1.5版本, Influxdb添加了Chronograf 组件作为web管理端,原来的web admin界面没有了,官网推出Chronograf,下载地址见第一步。
使用cmd进入安装目录,输入influxd -config influxdb.conf,即可运行influxDB数据库服务器
运行报错:因为windows路径反斜杠需要转义,所以修改配置文件
重新运行:influxd -config influxdb.config,成功
port 8083:管理页面端口,访问localhost:8083可以进入你本机的influxdb管理页面
port 8086:http连接influxdb client端口,一般使用该端口往本机的influxdb读写数据
2.7 Chronograf 使用
1、解压文件后,直接进入安装目录,执行chronograf.exe后;
2、输入:http://localhost:8888(chronograf默认是8888端口)
3、influxDB数据源连接
输入数据库密码,点击下一步,其他不用变,第二个页面也一样。
成功进入
2.8 telegraf和kapacitor介绍
telegraf是数据收集器,有很多的插件可用来收集数据。
kapacitor属于报警器,用来给用户发提醒。
2.9 Grafana介绍
主要是对数据通过插件进行图形化展示,经常和jmeter、influxdb配合使用。
下载地址:https://grafana.com/grafana/download
默认使用端口:3000
进入http://localhost:3000,登录默认用户名和密码都是admin
配置数据源
2.10 Jmeter配置
增加Backend Listener监听器
graphiteHost: influxdb IP地址
graphitePort: 2003是Jmeter往数据库发数据的端口
rootMeticsPrefix:指标前缀设置,用于方便区分
summaryOnly:true/false 是否统计总量
samplerList:测试Sampler名称,支持正则表达式,全部可使用.*.*
summaryOnly:设置true时,此处设置无效。
useRegexpForSamplerList:测试Sampler名称是否支持正则表达式
2.11需要配置influxdb.conf文件,并在influxdb数据库建立jmeter数据库
要想jmeter数据写入influxDB,需要运行influxDB,需要用:influxd -config influxdb.config
Grafana里修改数据源为jmeter
执行jmeter,查看jmeter数据库里是否出现新建的表
2.12 Grafana配置图表
创建Dashboard
选择图表
编辑
选择数据源,表
保存后,运行jmeter,就可以通过grafana查看啦
常用的监控有:
jmeter.all.h.count | 所有请求的TPS |
jmeter.<请求名称>.h.count | 对应<请求名称>的TPS |
jmeter.all.ok.pct99 | 99%的请求响应时间 |
jmeter.<请求名称>.ok.pct99 | 对应<请求名称>99%的请求响应时间 |
jmeter.all.test.startedT | 线程数 |
其他监控见:http://jmeter.apache.org/usermanual/realtime-results.html