监控磁盘的性能

参考文章:

https://wiki.enchtex.info/howto/zabbix/zabbix_iostat_monitoring

https://blog.csdn.net/xiegh2014/article/details/70576180

https://blog.csdn.net/bobpen/article/details/53408214

创建好的模板:链接:https://pan.baidu.com/s/1-dNwl-yrRsSNgobWPvVflw 密码:0j9u

一、agent端操作:

1、安装iostat命令

yum install sysstat

2、创建脚本目录

mkdir /etc/zabbix/scripts
cd /etc/zabbix/scripts/

3、脚本内容

vim disk_scan.sh
#!/bin/bash
diskarray=(`cat /proc/diskstats |grep -E "\bsd[abcdefg]\b|\bvd[abcdefg]\b"|grep -i "\b$1\b"|awk '{print $3}'|sort|uniq >/dev/null`)
length=${#diskarray[@]}
printf "{\n"
printf '\t'"\"data\":["
for ((i=;i<$length;i++))
do
printf '\n\t\t{'
printf "\"{#DISKNAME}\":\"${diskarray[$i]}\"}"
if [ $i -lt $[$length-] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"

4、修改权限

chown root:zabbix -R /etc/zabbix/scripts/
chmod /etc/zabbix/scripts/
chmod 550 /etc/zabbix/scripts/iostat.sh

5、脚本测试

[root@agent scripts]# sudo -u zabbix /usr/bin/sh /etc/zabbix/scripts/disk_scan.sh
{
"data":[
{"{#DISKNAME}":"sda"}
]
}
[root@agent scripts]#

6、使用iostat获取硬盘性能信息,并将该信息写入文本中

  echo "* * * * * /usr/bin/iostat -mx > /tmp/iostat_output 2>&1" >>/var/spool/cron/root
  echo "* * * * * sleep 20;/usr/bin/iostat -mx > /tmp/iostat_output 2>&1" >>/var/spool/cron/root
  echo "* * * * * sleep 40;/usr/bin/iostat -mx > /tmp/iostat_output 2>&1" >>/var/spool/cron/root

7、添加下述内容至zabbix agent配置文件中

UserParameter=io.scandisk[*],/etc/zabbix/scripts/disk_scan.sh $
UserParameter=io.rrqm[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b"|tail -|awk '{print $$2}'
UserParameter=io.wrqm[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b"|tail -|awk '{print $$3}'
UserParameter=io.rps[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b"|tail -|awk '{print $$4}'
UserParameter=io.wps[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$5}'
UserParameter=io.rMBps[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$6}'
UserParameter=io.wMBps[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$7}'
UserParameter=io.avgrq-sz[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$8}'
UserParameter=io.avgqu-sz[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$9}'
UserParameter=io.await[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$10}'
UserParameter=io.r_await[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$11}'
UserParameter=io.w_await[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$12}'
UserParameter=io.svctm[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$13}'
UserParameter=io.util[*],/usr/bin/tail /tmp/iostat_output |grep "\b$1\b" |tail -|awk '{print $$14}'

8、重启zabbix-agent服务

systemctl restart zabbix-agent.service

二、服务器端操作如下

1、获取数据测试

[root@zabbix-server zabbix]# zabbix_get -p  -s 10.10.10.99 -k io.util[sda]
0.23
[root@zabbix-server zabbix]# zabbix_get -p -s 10.10.10.99 -k io.util[sda]
0.23
[root@zabbix-server zabbix]# zabbix_get -p -s 10.10.10.99 -k io.rps[sda]
0.00
[root@zabbix-server zabbix]# zabbix_get -p -s 10.10.10.99 -k io.rMBps[sda]
0.00

2、创建模板

模板名称: Template Disk Discovery

 名称:Disk discovery   键值:io.scandisk

3、创建自动发现规则

 第一个监控项原型示例,其余规则据按照此模型创建即可!!!

创建好的模型如下:

4、创建图形原型

5、创建触发器

三、最终结果

zabbix的日常监控-磁盘性能监控(十二)的更多相关文章

  1. zabbix使用iostat命令参数监控磁盘性能

    iostat命令 先说一个坑把,在开始监控的时候使用命令iostat -dtkx,得到的结果看上去没问题,但是在web监控窗口数据就说不变动,为啥呢,因为iostat这个命令得到的第一个数据始终是磁盘 ...

  2. linux 磁盘性能监控

    linux下对于查看进程的命令非常多也非常强大.经常使用的如:ps  top 可是在磁盘性能监控方面就没有那么统一了. 以下列举一些磁盘监控命令.此处仅仅是起到抛砖引玉作用,具体使用參数请參考man手 ...

  3. zabbix server+agent+proxy搭建性能监控平台

    这是新找到了配置文件配置方法但未尝试 每个模块工作职责: Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行: Database Sto ...

  4. Zabbix 5.0:磁盘读写监控

    Blog:博客园 个人 自动发现磁盘 配置键值 注意:此键值仅支持Linux平台. 此发现键值返回两个宏 : {#DEVNAME} :设备名 {#DEVTYPE} :设备类型 例如: [ { &quo ...

  5. Zabbix磁盘性能监控

    iostat统计磁盘信息的时候,使用的是/proc/diskstats ,cat /proc/diskstats显示如下 ram0 ram1 ram2 ram3 ram4 ram5 ram6 ram7 ...

  6. 对zabbix监控磁盘性能的补充

    原因 在上一篇文章中,我写了完整的磁盘监控步骤,希望对大家有所帮助.但是这里还需要作出一点补充. 根据上一篇文章的内容,我是使用iostat命令不停的收集磁盘的信息,然后写入到/tmp/iostat_ ...

  7. zabbix 3.0.4 Nginx 性能监控

    搭建Nginx 安装pcre-devel .zlib-devel支持包 [root@test /]# yum -y install pcre-devel zlib-devel 创建nginx用户 [r ...

  8. ZABBIX作集中式NGINX性能监控的注意要点

    今天测试好了.但有几个要点要注意. 一是出了问题看日志. 二是主动测试脚本. 三是注意LLD自动发现的ZABBIX类型(TRAPPER,捕捉器类型) 四是有主机上有问题时可以看到(UNSUPPORT) ...

  9. 讨论一下TaskManager中监控磁盘性能的一些小问题

    今天研究了一下命令"diskperf -Y". 我把发现Share给了同事, 原文写在了下面, 就不翻译了. ^_^   Try this command (CMD or Powe ...

随机推荐

  1. ANTLR4权威指南 - 第7章 通过特定应用程序代码解耦语法

    第7章 通过特定应用程序代码解耦语法 到目前为止,我们已经知道了怎么用ANTLR的语法来定义语言了,接下来我们要给我们的语法注入一些新的元素了.就语法本身而言,其用处并不大,因为它只能告诉我们一个用户 ...

  2. Deep Residual Learning for Image Recognition(残差网络)

    深度在神经网络中有及其重要的作用,但越深的网络越难训练. 随着深度的增加,从训练一开始,梯度消失或梯度爆炸就会阻止收敛,normalized initialization和intermediate n ...

  3. centOS7.2下 搭建gitlab使用git为团队管理代码

    最近更换了阿里云服务器  使用centOS7.2,目前配置1核2G,搭建gitlab有点吃力,另外如果1核1g就不要搭建了,推荐配置是2核4G以上 下面来简单记录整个搭建过程 注意: 本次实验OS为c ...

  4. Android源码博客目录

    每次都找不到,干脆每个部分都开个目录,方便找 0. 杂项 一些Android的博客,没事翻翻 1. 构建相关 linux和Android的Makefile和android.mk android 目录下 ...

  5. webbrowser在html中写入内容并添加js

    在html中写入内容,并添加js private void btnTestJs_Click(object sender, EventArgs e) { this.webBrowser1.Navigat ...

  6. [转]Using TRY...CATCH in Transact-SQL

    本文转自:https://technet.microsoft.com/en-us/library/ms179296(v=sql.105).aspx Using TRY...CATCH in Trans ...

  7. python3.3 unicode(encode&decode)

    最近在用python写多语言的一个插件时,涉及到python3.x中的unicode和编码操作,本文就是针对编码问题研究的汇总,目前已开源至github.以下内容来自项目中的README. 1 ASC ...

  8. 【 js 片段 】如何组织表单的默认提交?【亲测有效】

    最近做的一个项目,我分到的部分有表单验证.点击了提交按钮,但我并不想让他跳转页面去提交.于是经过各种百度,各种 stackoverflow,各种抱大神腿之后,有了以下解决办法: 重点就是阻止 form ...

  9. 用struct模块解决tcp的粘包问题

    服务器端程序 import struct import socket sk = socket.socket() sk.bind(('127.0.0.1',9000)) sk.listen() conn ...

  10. AGC006C Rabbit Exercise

    传送门 设 \(f_{i,j}\) 表示兔子 \(i\) 在当前 \(j\) 轮的期望位置 对于一次操作 \(f_{i,j+1}=\frac{1}{2}(2f_{i-1,j}-f_{i,j})+\fr ...