zabbix 系统IO监控

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix 系统IO监控相关的知识,希望对你有一定的参考价值。

#  软件介绍 iostat

# 使用iostat 需先安装sysstat软件包, 系统包中有带


# iostat用于输出CPU和磁盘I/O相关统计信息


# iostat可以显示CPU和I/O系统的负载情况及分区状态信息. 

直接执行iostat可以显示下面内容:


[[email protected] ~]$ iostat 

Linux 2.6.32-358.el6.x86_64 (template.xx.xx) 07/14/2017 _x86_64_ (32 CPU)


avg-cpu:  %user   %nice %system %iowait  %steal   %idle

           2.93    0.00    0.20    0.04    0.00   96.83


Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn

sda               0.66         6.60        14.79  462593198 1036802588

sdc               0.20         1.60         0.00  112173840          0

sdb              25.46       453.65       582.45 31805540026 40835922808

scd0              0.00         0.00         0.00       5012          0

dm-0             25.21       453.64       582.45 31805251514 40835922808

dm-1              1.89         6.35        14.55  445409130 1020026016

dm-2              0.06         0.24         0.24   17154880   16776296


# cpu段配置说明

avg-cpu 

%user : 用户空间使用CPU百分比

%nice : nice使用

%system : 系统(kernel)使用cpu百分比

%iowait : cpu等待硬盘I/O时,所占用的百分比

%steal  : 系统偷出CPU的百分比 (不知道什么鬼,求解释)

%idle : 系统空闲百分比


# Device磁盘段配置说明 

tps : 每秒钟发送到I/O请求数

Blk_read/s : 每秒从磁盘读出的的数据量,单位B

Blk_wrtn/s : 每秒从磁盘写入的的数据量,单位B

Blk_read : 开机始从磁盘读出的数据总量

Blk_wrtn : 开机始从磁盘写入的数据总量


# 命令使用

  iostat 1   # 每秒刷新一次

  iostat -k  # 以KB为单位 默认B

  iostat -m  # 以MB为单位

  iostat -v  # 显示版本号

  iostat -c  # 仅显示CPU

  iostat -d  # 仅显示磁盘


##################  dm设备监控大概思路    ##################################


#查看dm对应设备号是哪一个

[[email protected] ~]# dmsetup ls

mpathb (253:0)

vg_sys-LogVol01 (253:1)

vg_sys-LogVol00 (253:2)


# 找到设备号对应信息

[[email protected] ~]# ll /dev/mapper/

total 0

crw-rw----. 1 root root 10, 58 Apr 25  2015 control

lrwxrwxrwx. 1 root root      7 Apr 25  2015 mpathb -> ../dm-0

lrwxrwxrwx. 1 root root      7 Apr 25  2015 vg_sys-LogVol00 -> ../dm-2

lrwxrwxrwx. 1 root root      7 Apr 25  2015 vg_sys-LogVol01 -> ../dm-1


# 再检查设备挂载目录,比如swap就可不用监控,一般也不会往里写入数据

[[email protected] ~]# cat /etc/fstab 

#

# /etc/fstab

# Created by anaconda on Sat Apr 25 01:09:22 2015

#

/dev/mapper/vg_sys-LogVol01 /                       ext4    defaults        1 1

/dev/mapper/vg_sys-LogVol00 swap                    swap    defaults        0 0

/dev/mapper/mpathb /home ext4 defaults 1 0


# 找着对应的目录了,以及磁盘信息了,咱只需要监控 sda sdc sdb 三个设备就行,

# sdb = dm-0 + dm-2 LVM磁盘 




###############  在需要监控的机器中增加这个脚本 #########################

# 脚本文件

[[email protected] script]# cat system_io.sh 
#!/bin/bash
#
set -e

abc=`/usr/bin/iostat -k | grep $1`
echo "$abc" > /tmp/1.txt

case $2 in
read)
        awk ‘{print $3}‘ /tmp/1.txt ;;
wrtn)
        awk ‘{print $4}‘ /tmp/1.txt ;;
*)
        echo " Please Use read | wrtn , Use ./bash.sh sdb read|wrtn "
esac


# 最后需要配置文件中在zabbix_agentd.conf中增加这行

UserParameter=sys.io[*],/usr/local/zabbix/script/system_io.sh $1 $2




# 在服务器端测试是脚本是否可以

[[email protected] bin]# zabbix_get -s ipaddress -p port -k sys.io[sdb,read]

226.81

[[email protected] bin]# zabbix_get -s ipaddress -p port -k sys.io[sdb,wrtn]

291.21


# 可能会报权限错误,如果运行前有执行过脚本的话,需要删除/tmp/1.txt文件


扩展:dm设备详解  http://blog.chinaunix.net/uid-26230811-id-3265484.html

      iostat详解    http://blog.csdn.net/zhangjay/article/details/6656771


#  模板明天添加  2017年07月14日 18:15:06

本文出自 “xiong” 博客,请务必保留此出处http://xiong51.blog.51cto.com/5239058/1947663

以上是关于zabbix 系统IO监控的主要内容,如果未能解决你的问题,请参考以下文章

zabbix之 自动发现磁盘io util 监控

分布式监控系统Zabbix3.2添加自动发现磁盘IO并注册监控

zabbix运维监控

分布式监控系统Zabbix4.2添加自动发现磁盘IO(实操)

分布式监控系统Zabbix-3.0.3-完整安装记录-监控nginx,php,memcache,Low-level discovery磁盘IO

使用iostat和LLD实现zabbix监控IO性能