Zabbix discovery disk 监控
来源:互联网 发布:js中的length 编辑:程序博客网 时间:2024/06/14 11:39
Zabbix discovery Disk 监控
首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~
Zabbix自带的“Template OS Linux”模板支持监控已挂载的磁盘空间利用率,是利用LLD(Low-level discovery)实现的,但是却不能监控磁盘IO,下面这篇文章主要是介绍通过Discovery rule来实现对磁盘IO的监控。
一、建立Zabbix_Agentd的key
确保之前已经修改过zabbix_agentd.confInclude=/usr/local/zabbix/etc/zabbix_agentd.conf.d/添加Zabbix_Agentd识别key的路径
好,现在我们来添加监控disk的Keycd /usr/local/zabbix/etc/zabbix_agentd.conf.d/touch disk_status_key下面是disk_status_key的内容
{UserParameter=vfs.fs.scandisk[*],/usr/local/zabbix/shell/disk_scan.sh $1UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$4}'UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$7}'UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$8}'UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$11}'UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$12}'UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$13}'UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$6}'UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | egrep "\b$1\b" | head -1 | awk '{print $$10}'}
二、建立discovery Disk 脚本
这里我先说明一下,我这边Server中都是sda硬盘,所以在下面'diskarray'磁盘数组中填入了'sda'有需要的同学请自行修改cd /usr/local/zabbix/shelltouch disk_scan.sh
{#!/bin/bash#Written by zijin#2014-08-05#get local disk name#脚本运行结果格式为#{# "data":[# {"{#DISK_NAME}":"sda"}# {"{#DISK_NAME}":"sdb"}# ]#}function get_disk_name () { diskarray=($(cat /proc/diskstats|egrep "\b$1\b"|awk '{print $3}'|sort|uniq 2>/dev/null)) #暂时只画硬盘sda的图 diskarray=(sda) function printf_disk_name () { length=${#diskarray[@]} for ((i=0;i<${length};i++));do if [ $i -lt $[${length}-1] ];then printf "{ \"{#DISK_NAME}\":\"${diskarray[$i]}\" },\n" else printf "{ \"{#DISK_NAME}\":\"${diskarray[$i]}\" }\n" fi done } printf "{ \"data\":[\n" printf_disk_name printf "]}"}get_disk_name $1exit 0}
三、在 Template OS Linux 中创建 discovery rule
打开Zabbix Web页面,configure-templates-Template OS Linux点击discovery
右上角新建discovery rule 下面附图,key对应这我刚才在Include路径下设置的key下面的Zabbix agent 也可以改成 Zabbix agent (Active),这样agent变为主动模式,使Server负载更小。
四、在前面创建的Disk status disvovery 中添加项目原型
大家可以理解为,前一步我们创建了角色,现在我们需要添加角色所扫描的任务,也就是item,下面附图:
点击 item prototypes点击右上角的 Create item prototype下面是我的详细配置,有几点需要注意1、名称中 $1 为变量2、Units 为 B_Writ3、Store value 为每秒速率
我在这边创建了两个item
- IO InBlocks on {#DISK_NAME}
- IO OutBlocks on {#DISK_NAME}
五、创建 Graphs
上一步我们已经创建了两个监控项,那么如何将监控的信息通过图形呈现出来呢?好,下面我们来创建Graphs,并将item添加进去单击 Graphs prototypes-Create graphs prototypes
六、在Screen中列出graphs
0 0
- Zabbix discovery disk 监控
- zabbix应用之Low-level discovery监控磁盘IO
- zabbix应用之Low-level discovery监控磁盘IO
- 服务器监控系统Zabbix的自定义key、discovery、web监控图解教程(第四章)
- Rebalance Disk Group + ASM Disk Discovery
- Zabbix “Discovery” 自动发现主机
- zabbix配置low level discovery
- Zabbix监控
- Zabbix监控
- zabbix监控
- 监控-zabbix
- 监控,zabbix
- zabbix 监控
- Zabbix监控:监控端口
- Zabbix搭建笔记[10]--Network Discovery
- zabbix 自动发现Discovery无法获取主机
- Zabbix添加监控主机 Zabbix
- [zabbix]zabbix使用脚本监控
- excel2003 操作
- 通过Socket实现UDP(用户数据报)编程
- java.lang.NoClassDefFoundError: org/apache/log4j/Layout
- 用yum查询想安装的软件
- UIGestureRecognizer手势
- Zabbix discovery disk 监控
- cocos2d-x 集成社交分享平台shareSDK
- Unity 游戏开发技巧集锦之使用cookie类型的纹理模拟云层的移动
- HDOJ1003.Max Sum
- 在xCode中,直接用代码输出对象的内存地址
- Android WebView 简单使用
- ORACLE存储过程的游标和for循环
- android实现弹出式对话框方法分析
- Android DrawerLayout的使用