Zabbix iostat 监控配置
zabbix iostat 监控模板安装与配置
配置定时任务,用于生成iostat的统计数据
crontab -e
* * * * * /usr/local/zabbix327/bin/iostat-cron.sh
编辑 /usr/local/zabbix327/bin/iostat-cron.sh
#!/bin/bash DEST_DATA=/tmp/iostat-data
TMP_DATA=/tmp/iostat-data.tmp iostat -kx 10 2 > $TMP_DATA
mv $TMP_DATA $DEST_DATA添加执行权限
# chmod +x iostat-cron.sh
编辑 /usr/local/zabbix327/bin/lld-iostat.sh
#!/bin/bash DEVICES=`iostat | awk '{ if ($1 ~ "^([shxv]|xv)d[a-z]$") { print $1 } }'` COUNT=`echo "$DEVICES" | wc -l`
INDEX=0
echo '{"data":['
echo "$DEVICES" | while read LINE; do
echo -n '{"{#DEVNAME}":"'$LINE'"}'
INDEX=`expr $INDEX + 1`
if [ $INDEX -lt $COUNT ]; then
echo ','
fi
done
echo ']}'添加执行权限
# chmod +x lld-iostat.sh
编辑 /usr/local/zabbix327/bin/iostat.sh
#!/bin/bash ZBX_REQ_DATA="$2"
ZBX_REQ_DATA_DEV="$1" SOURCE_DATA=/tmp/iostat-data ERROR_NO_DATA_FILE="-0.9900"
ERROR_OLD_DATA="-0.9901"
ERROR_WRONG_PARAM="-0.9902"
ERROR_MISSING_PARAM="-0.9903" if [ ! -f "$SOURCE_DATA" ]; then
echo $ERROR_NO_DATA_FILE
exit 1
fi if [ -z "$ZBX_REQ_DATA_DEV" ]; then
echo $ERROR_MISSING_PARAM
exit 1
fi OLD_DATA=5
if [ $(stat -c "%Y" $SOURCE_DATA) -lt $(date -d "now -$OLD_DATA min" "+%s" ) ]; then
echo $ERROR_OLD_DATA
exit 1
fi
device_count=$(grep -Ec "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA)
if [ $device_count -eq 0 ]; then
echo $ERROR_WRONG_PARAM
exit 1
fi case $ZBX_REQ_DATA in
rrqm/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $2}';;
wrqm/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $3}';;
r/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $4}';;
w/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $5}';;
rkB/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $6}';;
wkB/s) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $7}';;
avgrq-sz) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $8}';;
avgqu-sz) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $9}';;
await) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $10}';;
svctm) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $11}';;
%util) grep -E "^$ZBX_REQ_DATA_DEV " $SOURCE_DATA | tail -1 | awk '{print $12}';;
*) echo $ERROR_WRONG_PARAM; exit 1;;
esac exit 0添加执行权限
# chmod +x iostat.sh
测试
检查/tmp/下的文件:iostat-data、iostat-data.tmp 是否生成
测试脚本在zabbix用户下是否执行正确:
$ ./lld-iostat.sh
$ ./iostat.sh hda w/s
编辑zabbix agentd 配置文件并增加自定义参数,包括 lld 参数以及监控参数
UserParameter=custom.vfs.dev.discovery,/usr/local/zabbix327/bin/lld-iostat.sh
UserParameter=iostat[*],/usr/local/zabbix327/bin/iostat.sh $1 $2重启 zabbix_agentd
配置模板/导入模板
Configuration/Templates, 点击Create template , 输入模板名称,并选择Groups,并保存
选择 Discovery rules,点击 Create discovery rule,填写必要信息后,进行保存
- Name :Disk Devices
- Key : custom.vfs.dev.discovery
- Update interval: 60
选择 Discovery rules,并点击列表中的 Item prototypes , 点击 Create item prototype 按钮,配置完成后进行保存。
- Name: $1 $2 /****** $1 表示Key的第一个参数 $2 表示Key的第二个参数 ***/
- Key : iostat[{#DEVNAME},svctm]
- Type of information: Numberic (float)
- Applications: iostat
按以上方法依次配置以下Item prototype(只需修改Key的第二个参数):
%util,rkB/s,avgqu-sz,await,wkB/s, w/s,avgrq-sz, rrqm/s, wrqm/s,r/s
根据需要配置Trigger prototypes
选择Trigger prototypes tab,并点击Create trigger prototype,这里重点说明,Expression部分,
点击 Add 按钮,在弹出的窗口,点击 Select prototype,选择监控项,然后配置其他项目。最后点击保存。
Zabbix iostat 监控配置的更多相关文章
- 05: zabbix 监控配置
目录:zabbix其他篇 01: 安装zabbix server 02:zabbix-agent安装配置 及 web界面管理 03: zabbix API接口 对 主机.主机组.模板.应用集.监控项. ...
- 第3章Zabbix完整监控
p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; t ...
- zabbix监控系列(3)之zabbix触发器格式配置
前言 今天公司线上环境新添一个监控项,监控 一些日志的是否出现错误,有错误就及时报警,那么问题来了 ,报警必须告诉我们哪个日志有错误,这样才能够快速定位到哪个日志有问题. 配置 zabbix-agen ...
- zabbix web场景模拟监控配置
一,zabbix2.2.3 VMware Vsphere exsi监控配置步骤, 1,添加监控主机 2,添加聚集macro;{$PASSWORD} = yoodo.com{$URL} = http:/ ...
- zabbix分布式监控系统安装配置
zabbix简介: zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵 ...
- Zabbix监控配置
Zabbix在线文档 https://www.zabbix.com/documentation/4.0/zh/manual/config/hosts 1.我们启动服务后,我们看到了端口都正在监听,但是 ...
- Zabbix的SNMPTrap监控配置
SNMPTrap监控主要用于设备发生故障时的主动通知的监控.以下简单记录下Zabbix的SNMPTrap的配置方法. 一.SNMPTrap监控的处理流程说明 1.监控对象发送SNMPTrap信息到sn ...
- zabbix分布式监控服务 安装与配置
zabbix安装与配置 一.什么是zabbix及优缺点(对比cacti和nagios) Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...
- zabbix监控配置一般流程
目录 zabbix监控配置流程 1. 配置客户端 2. 配置监控 2.1 创建主机组 2.2 添加主机并加入主机组 2.3 添加监控项 2.3.1 模板的方式(不用添加触发器) 2.3.2 手动添加的 ...
随机推荐
- linux查找文件或目录命令
inux查找文件或目录命令,前提:知道文件或者目录的具体名字,例如:sphinx.conf find 查找 find / -name dirname 查找目录 find -name filenam ...
- strings.xml显示html格式
需求:合同协议,其中指定内容为红色 效果图: 实现如下: <string name="learn_ticket_agreement" formatted="fals ...
- 《Android源码设计模式》--装饰模式
No1: Activity继承于ContextThemeWrapper,继承于ContextWrapper,继承于Context. No2: Context中方法的所有实现均由ContextImpl类 ...
- 《Playing hard exploration games by watching YouTube》论文解读
论文链接 油管链接 一.摘要 当环境奖励特别稀疏的时候,强化学习方法通常很难训练(traditionally struggle).一个有效的方式是通过人类示范者(human demonstrato ...
- Bomb HDU 3555 dp状态转移
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3555 题意: 给出一个正整数N,求出1~N中含有数字“49”的数的个数 思路: 采用数位dp的状态转移方程 ...
- JDK源码分析(二)——LinkedList
目录 LinkedList LinkedList继承结构 LinkedList内部类Node LinkedList成员属性 LinkedList构造方法 重要方法 Deque方法的实现 遍历 总结 L ...
- 理解URI
---恢复内容开始--- 参考 https://zh.wikipedia.org/wiki/%E7%BB%9F%E4%B8%80%E8%B5%84%E6%BA%90%E6%A0%87%E5%BF%97 ...
- 文件哈希审计工具md5deep/hashdeep
文件哈希审计工具md5deep/hashdeep 在数据取证中,通常需要验证文件的哈希值,以判断文件是否已知好文件,或者文件是否被修改过.Kali Linux提供专用工具hashdeep.该工具的 ...
- 线性表之顺序表C++实现
线性表之顺序表 一.头文件:SeqList.h //顺序线性表的头文件 #include<iostream> ; //定义顺序表SeqList的模板类 template<class ...
- OI回忆录(流水账)
今天是NOI2017疏散日,晚上回到家在电脑前写下这篇回忆录. 初中参加过几次普及组,拿过一等奖,自招进slyz. 高一参加过CTSC2016,狗牌滚粗qwq 高二参加过WC2017,CTSC2017 ...