Skip to content

tahajahangir/zabbix-disk-performance

 
 

Repository files navigation

Changes in this fork

  • Add disk utilization (in %, like iostat)
  • Add average queue size (like iostat)
  • Add average read/write time (in ms) (zabbix calculated item)
  • Add a screen template for all disks in host
  • Ignore partitions (sda1, sda2) and keep only whole disks (sda, sdb)
  • Changes in item names and units

zabbix-disk-performance

Zabbix template for collecting IO statistics

With this template you can collect different disk statistics.

Bytes/Sec Merged Ops/Sec Overview

Installation

To install, copy userparameter_diskstats.conf to /etc/zabbix/zabbix_agentd.d/userparameter_diskstats.conf and lld-disks.py to /usr/local/bin/lld-disks.py. Do not forget to mark it executable.

# diskstats user parameters config
sudo mkdir -p /etc/zabbix/zabbix_agentd.d/
sudo wget https://raw.githubusercontent.com/grundic/zabbix-disk-performance/master/userparameter_diskstats.conf -O /etc/zabbix/zabbix_agentd.d/userparameter_diskstats.conf

# low level discovery script
sudo wget https://raw.githubusercontent.com/grundic/zabbix-disk-performance/master/lld-disks.py -O /usr/local/bin/lld-disks.py
sudo chmod +x /usr/local/bin/lld-disks.py

userparameter_diskstats.conf is user parameters for Zabbix. lld-disks.py is low level discovery script for enumerating disks of your system.

After that restart zabbix-agent sudo service zabbix-agent restart

Go to Zabbix's web interface, Configuration->Templates and import Template Disk Performance.xml. After that you should be able to monitor disk activity for all your disks.

Please note, that items and graphs are created for each disk/partition individually using discovery script, so do not expect to find them under usual configuration -- they would be in Discovery rules section:

Discovery Rules

Low level discovery will list your RAID devices, and LVM volumes, but LVM volumes will be mapped with their device-mapper ID, not the pretty names.

Using without User Parameters

Zabbix have standard parameters for monitoring disk io: vfs.dev.read and vfs.dev.write with several types:

  • sectors
  • operations
  • sps
  • ops

Template have this values configured, but disabled by default.

Testing

To test that everything work use zabbix_get (from some time this is in it's own package, so do apt-get/yum install zabbix-get):

# view result of low level discovery
zabbix_get -s 127.0.0.1 -k "custom.vfs.discover_disks"
# view statistics for 'sda' disk
zabbix_get -s 127.0.0.1 -k "custom.vfs.dev.write.sectors[sda]"

About

Zabbix template for collecting IO statistics

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%