port 8083: 管理页面端口, 访问 localhost:8083 可以进入你本机的 influxdb 管理页面;
port 8086:http 连接 influxdb client 端口, 一般使用该端口往本机的 influxdb 读写数据
1. 安装 InfluxDB(方式一, 官方文档安装方式)
新建 InfluxDB 下载源
输入 cat << EOF | tee /etc/yum.repos.d/influxdb.repo
- [influxdb]
- name = InfluxDB Repository - RHEL \$releasever
- baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable
- enabled = 1
- gpgcheck = 1
- gpgkey = https://repos.influxdata.com/influxdb.key
- EOF
使用 yum 下载 InfluxDB
yum install -y influxdb
2. 安装 InfluxDB(方式二)
下载 rpm 包:
下载 rpm 包
wget https://s3.amazonaws.com/influxdb/influxdb-race-nightly-1.x86_64.rpm
安装好之后 解压
[root@Lamw usr]# rpm -ivh influxdb-race-nightly-1.x86_64.rpm
如果提示
- chown: cannot access `/var/lib/influxdb': No such file ordirectory
- chown: cannot access `/var/log/influxdb': No such file ordirectory
就先建立目录然后再安装
- [root@Lamw usr]# mkdir -p /var/lib/influxdb
- [root@Lamw usr]# mkdir -p /var/log/influxdb
查看 rpm -qa|grep influxdb 安装成功与否
然后 rpm -ql influxdb-1.4.2-1.x86_64 查看安装路径
这边因为 按照网上教程说的 / etc/init.d/influxdb start 启动 小七这边 没有 init.d 这个目录(貌似是因为官方 1.4 版本的移除了 web 页面) 可忽略这句
所以按照上面的方式找到了启动路径
发现 /usr/lib/influxdb/scripts/influxdb.service 这里有个启动路径
然后进入到 scripts 目录下 cat 查看这个启动文件
执行启动命令 /usr/bin/influxd -config /etc/influxdb/influxdb.conf $INFLUXD_OPTS
打开浏览器, 访问虚拟机 IPhttp://192.168.180.128:8086/
启动成功之后 会发现 访问的时候 提示 404 page not found 不用着急 因为只部署一个 influxdb 是无法在 web 页面监控到的(官方 1.2 以上都移除了 web 页面监控)
可以通过检查端口查看是否启动成功
[root@Lamw scripts]# netstat -tlnpu |grep influxd
如果还出现访问不了的情况, 可以检查下防火墙是否关闭如未关闭, 关闭防火墙之后 再尝试
3. 修改配置
修改 InfluxDB 的配置, 主要配置 jmeter 存储的数据库与端口号, 还有需要将 UI 端口开放, 找到 [http] [[graphite]]节点, enabled 改为 true(默认是开启的),bind-address 修改绑定的 IP 和端口:
[root@Lamw~]#vi / etc / influxdb / influxdb.conf
- # 找到 graphite 并且修改它的库与端口
- [[graphite]]
- enabled = true
- database = "jmeter"
- bind-address = ":2003"
- protocol = "tcp"
- consistency-level = "one"
原图:
修改如下:
- # [http]
- #Determines whether HTTP endpoint is enabled.
- enabled= true
- # The bindaddress used by the HTTP service.
bind-address= ":8086" 此处配置的 IP 和端口供 grafana 连接使用
修改后
- # 找到 admin, 将前面的 #号去掉, 开放它的 UI 端口
- [admin]
- # Determines whether the admin service is enabled.
- enabled = true
- # The default bind address used by the admin service.
- bind-address = ":8083"
- # Whether the admin service should use HTTPS.
- # https-enabled = false
- # The SSL certificate used when HTTPS is enabled.
- # https-certificate = "/etc/ssl/influxdb.pem
4. 安装 collectd(可有可无, 小七装了之后没启用)
- # yum install epel-release -y
- # yum install -y collectd
启动 collectd:
- # service collectd start
- # service collectd status
5. 安装 Grafana
使用 yum 下载 Grafana 并且安装
yum install https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.1-1.x86_64.rpm
启动 Grafana
[root@Lamw usr]# / etc / init.d / grafana - server restart
打开浏览器, 访问虚拟机 IPhttp://192.168.180.128:3000
输入用户名, 密码登录系统用户名与密码都是 "admin"
添加需要展示数据的数据库(配置 InfluxDB )
添加 InfluxDB 数据库配置输入帐号密码 admin / admin, 点击 add 添加之后点击 Test & Save 提示 Success 说明成功了
注意 URL 的端口是 8086, 而刚才配置的 8083 是 UI 的端口
- 8083 端口是 InfluxDB 的 UI 界面展示的端口
- 8086 端口是 Grafana 用来从数据库取数据的端口
- 2003 端口则是刚刚设置的, Jmeter 往数据库发数据的端口
6. 下面来配置 JMeter
1.jmeter 中, 添加监听器 - >Backend Listener
顺便添加个 http 请求
能正常跑通之后, 即可在 Grafana 中查看到数据, 下面来配置 Grafana 从数据库中读取数据来展示
7. 配置 Grafana
添加一个展示项目
点击 Home -> New
添加一个图表
点击旁边的绿点 Add Panel -> Graph
配置图表
配置好了, 就能看到图了如果看不到图, 请用 Jmeter 多发几次请求下图中选择监控的选项, 可以在 Jmeter 的官网上查看到对应的解释
点击 Edit 设置需要展示的数据 比如 tps 线程数 rt cpu ...... 等等
名称 | 描述 |
jmeter.all.h.count | 所有请求的 TPS |
jmeter.< 请求名称 & gt;.h.count | 对应 & lt; 请求名称 & gt; 的 TPS |
jmeter.all.ok.pct99 | 99% 的请求响应时间 |
jmeter.< 请求名称 & gt;.ok.pct99 | 对应 & lt; 请求名称 & gt;99% 的请求响应时间 |
jmeter.all.test.startedT | 线程数 < br ow="0" oh="0"> |
注意如果要监控 <请求名称> 的话, Jmeter 上的 Backend Listener 修改如下参数
1. 将 summanyOnly 修改成 False,
2. 将 userRegexpForSamplersList 修改成 True,
3. 并且要设置 samplersList 的值, samplersList 是可以支持正则表达式的, samplersList 的设置要与请求对应, 否则找不到该请求如图
设置好了, 运行一下, 在 Grafana 里面, 就可以看到自己的请求了
Jmeter 的官网地址去查看阅读 http://jmeter.apache.org/usermanual/realtime-results.html 详细了解更多监控信息
Graph 里面的选项有:
General(常规选择)Metrics(指标)Axes(坐标轴)Legend(图例) Display(显示样式)Time range(时间范围)
Genera(常规选择): 添加图形标题, 图形宽度高度等
Title: 仪表板上的面板标题
Span: 列在面板中的宽度
Height: 面板内容高度(以像素为单位)
钻取 / 详细信息链接(Drilldown / detail link)
钻取部分允许添加动态面板的链接, 可以链接到其他仪表板或 URL
每个链接都有一个标题, 一个类型和参数链接可以是 dashboard 或 absolute 链接如果它是一个仪表板链接, dashboard 值必须是一个仪表板的名字如果这是一个 absolute 链接, 是 URL 链接的 URL
params 允许添加额外的 URL 参数的链接格式是 name=value 与多个参数分开, 当链接到另一个仪表板使用模板变量, 你可以使用 var-myvar=value 填充模板变量的期望值链接
Metrics(指标)
定义了来源数据的呈现, 每个数据源都提供不同的选择面板的来源数据通过 group,host,application,item 从 zabbix 中获得
Axes(坐标轴)
用于坐标轴和网格的显示方式, 包括单位, 比例, 标签等
Left Y 和 Right Y 可以定制使用, 因其中的可选参数太多, 请在使用的时候参考官方文档
Legend(图例): 图例展示
图例的参数:
Total: 返回所有度量查询值的总和
Current: 返回度量查询的最后一个值
Min: 返回最小的度量查询值
Max: 返回最大的度量查询值
Avg: 返回所有度量查询的平均值
Decimals: 控制 Legend 值的多少, 以小数显示悬浮工具提示(图)
Grafana 中 Legend 值的计算取决于你使用的度量查询方式和什么样类型的聚合或合并点来实现的, 所有上述所说的值在同一时间可能都是不正确的例如, 如果你是每秒请求一次, 这可能是使用平均值来作为一个整合, 然而这个 Legend 值不会代表请求的总数这只是 Grafana 收到的所有数据点的总和
Display(显示样式)
显示样式的控件属性图如下:
图表模式(Draw Modes)
Bar: 一个条形图显示值
Lines: 显示线图值
Points: 显示点值
选择模式(Mode Options)
Fill: 系列的颜色填充, 0 是没有
Line Width: 线的宽度
Staircase: 楼梯状显示
如果有多个选择项, 它们可以作为一个群体显示
叠加和空值(Stacking & Null value)
Stack: 每个系列是叠在另一个之上
Null value: 空值
如果你启用了堆栈可以选择应该显示鼠标悬停功能
Time range(时间范围)
更多 Grafana 功能请查阅官方文档....
来源: https://www.cnblogs.com/Lam7/p/8304076.html