【zabbix教程四】——zabbix3.0监控磁盘IO与自定义模板

简介: 【zabbix教程四】——zabbix3.0监控磁盘IO与自定义模板

引言


在前面的博客中我们介绍了zabbix自带的模板,并且完成了我们的一些比较常用的监控,现在我们如果想要监控我们磁盘的IO,这时候zabbix并没有给我们提供这么一个模板,所以我们需要自己来创建一个模板来完成磁盘IO的监控。


1. 添加userparameter_io.conf配置文件


在/etc/zabbix/zabbix_agentd.d下添加userparameter_io.conf, 文件内容如下:  


UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}'                    //磁盘读的次数
UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$7}'                     //磁盘读的毫秒数
UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$8}'                   //磁盘写的次数
UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$11}'                  //磁盘写的毫秒数
UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$12}'            
UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$13}'                       //花费在IO操作上的毫秒数
UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$6}'             //读扇区的次数(一个扇区的等于512B)
UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$10}'          //写扇区的次数(一个扇区的等于512B)

2、重启zabbix-agent服务

  systemctl restart zabbix-agent

 

3、测试zabbix-server获取数据


   #zabbix_get -s 目标服务器IP -p 10050 -k custom.vfs.dev.write.ops[sda]  

 

4、配置zabbix-server模板

 

进入web界面—》配置—》模板—创建模板


20170226141206242.png


5、配置监控项

 

进入到模板列表页面,找到我们刚刚创建的Templae io模板,点击后面监控项,然后点击创建监控项

20170226141523885.png


配置第一个监控项

Name:  Disk:$1:Read:Bytes/sec
   Key:  custom.vfs.dev.read.sectors[sda]
   Units: B/sec
   Store value: speed per second       //会进行差值计算
   Use custom multiplier     512      //会对值乘以512,因为这里是一个扇区,转换为字节为512B

20170226141656261.png

第二监控项:和第一个一样的配置过程


Name:Disk:$1:Write:Bytes/sec
                  Key:          custom.vfs.dev.write.sectors[sda]
                  Units:        B/sec
                  Store value: speed per second
                  Use custom multiplier     512


 第三个监控项配置参数:


Name:Disk:$1:Read:ops per second
                  Key:          custom.vfs.dev.read.ops[sda]
                  Units:        ops/second
                  Store value: speed per second


 第四个监控项配置参数:                

Name: Disk:$1:Write:ops per second
                  Key:          custom.vfs.dev.write.ops[sda]
                  Units:        ops/second
                  Store value: speed per second

第五个监控项配置参数:

             

Name: Disk:$1:Read:ms
                  Key:         custom.vfs.dev.read.ms[sda]
                  Units:      ms
                  Store value: speed per second


第六个监控项配置参数:


Name:Disk:$1:Write:ms
                  Key:         custom.vfs.dev.write.ms[sda]
                  Units:      ms
                  Store value: speed per second

           

上面我们就完成了对IO的监控,但是我们也想和zabbix自带的那样的模板一样,可以看到监控以后的图形,当然这也是可以做到的,下面就介绍图形的添加。


5、添加图形

 

返回到模板的列表页面,找到我们创建的模板Template io 然后点击后面的图形—》创建图形


20170226142802942.png


点击添加—》选择我们配置的监控项


20170226142941991.png

这样我们就完成了整个自定义模板的配置,我们现在就可以查看监控的数据了。


我们就拿之前博客中监控的机器来做实验,但是我们之前这台机器用了zabbix自带的模板 Template os Linux ,现在我们自己自定义了一个模板,那么怎么办呢?zabbix设计的还是非常人性的。模板之间是继承关系的!

我们回到给被监控的主机的哪一步,选择我们自定义的模板!

20170226144557444.png

这样我们就可以查看结果了 检测中—》图形


20170226144728883.png



小结

 

到这我们就完成了自定义模板的配置,顺便把监控磁盘IO也完成了,希望对读者有帮助。当然也欢迎读者拍砖!

目录
相关文章
|
7月前
|
JSON 测试技术 网络安全
如何调试 Socket.IO 接口?图文教程
Socket.IO 是一个用于实现低延迟、双向和基于事件通信的库,广泛应用于实时应用开发中。有效测试 Socket.IO 接口对于确保应用稳定性和功能正确性至关重要。本文介绍如何使用 Apifox 轻松进行 Socket.IO 接口测试,包括新建接口、监听事件、发送消息、配置握手参数、使用变量、保存和共享接口等步骤。Apifox 操作简便、功能完善,是开发者调试 Socket.IO 接口的得力助手,帮助确保实时通信的可靠性和稳定性,提高开发效率。
|
10月前
|
SQL
南大通用GBase 8a配置gcware日志等级,减少日志输出,节省磁盘IO
南大通用GBase 8a配置gcware日志等级,减少日志输出,节省磁盘IO
|
11月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
4652 2
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
743 5
|
存储 Python
NumPy 教程 之 NumPy IO 1
NumPy IO 教程介绍了如何使用 NumPy 读写文本及二进制数据。教程覆盖了 `.npy` 和 `.npz` 格式的文件操作,其中 `save()` 和 `load()` 函数用于单个数组的存取,而 `savez()` 则可以保存多个数组。文本文件处理则由 `loadtxt()` 和 `savetxt()` 完成。通过示例展示了 `numpy.save()` 函数的具体用法,并解释了其参数含义,如文件名、数组对象以及序列化选项等。
132 10
|
NoSQL Redis 数据库
Redis AOF重写问题之同一数据产生两次磁盘IO如何解决
Redis AOF重写问题之同一数据产生两次磁盘IO如何解决
172 0
Redis AOF重写问题之同一数据产生两次磁盘IO如何解决
|
存储 Python
NumPy 教程 之 NumPy IO 3
NumPy 支持读写文本与二进制数据,提供 `.npy` 格式保存 `ndarray`。常用函数包括:`save()`、`load()` 用于 `.npy` 文件的写入和读取;`savez()` 将多数组存为 `.npz` 格式;`savetxt()` 和 `loadtxt()` 处理 `.txt` 文件,支持自定义分隔符等选项。示例展示了如何使用 `savetxt()` 和 `loadtxt()` 进行数据存储及读取。
135 0
crash —— 获取系统的磁盘IO统计数据
crash —— 获取系统的磁盘IO统计数据
|
6月前
|
运维 监控 安全
【案例分享】中国通号卡斯柯公司:ZABBIX如何破解轨道交通监控难题
本文根据2023上海峰会上朱林贤的演讲整理,聚焦中国通号卡斯柯公司如何借助Zabbix实现轨道交通信号系统的智能化管理。作为中外合资企业,卡斯柯通过统一平台整合设备监控,大幅降低成本并提升灵活性,成功应用于国内外项目。文章探讨了传统监控系统的痛点、研发维护经验及国产化与开源技术挑战,为行业转型提供了宝贵启示。未来,开放协作将是推动轨道交通智能化发展的关键。
243 0
|
8月前
|
存储 缓存 监控

推荐镜像

更多