How to monitor disk performance in Zabbix ?

How to monitor disk performance in Zabbix ? Many people want to see the disk performance of their servers. Currently the low-level discovery doesn’t work for vfs.dev.read/vfs.dev.write, please check  : https://support.zabbix.com/browse/ZBXNEXT-1302

We have the solution, thanks “Grundic” for the share Templates and script, follow the instructions

Installation scripts

  1. Copy userparameter_diskstats.conf to /etc/zabbix/zabbix_agentd.d/userparameter_diskstats.conf
  2. Copy lld-disks.py to/usr/local/bin/lld-disks.py (CentOS)
  3. Do not forget to mark it executable, chmod -x /usr/local/bin/lld-disks.py

After that restart zabbix-agent :

Add Template

Go to Zabbix’s web interface, Configuration->Templates and import Template Disk Performance.xml, download Template Disk Performance from Github. 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):

Examples

Zabbix template for collecting IO statistics

With this template you can collect different disk statistics.

Bytes/SecMergedOps/SecOverview

https://github.com/grundic/zabbix-disk-performance

1 comments On How to monitor disk performance in Zabbix ?

  • Avatar

    Hi
    Thanks for Temlate!
    On centos 7 all good. But on Ubuntu 14 and 16 we have a problem.
    Script cant read devices. We try this:
    Example:
    UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$4}’

    And graphics is created but count not going.
    You have a resolution.
    PS. Sorry for my english ))

Leave a reply:

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Site Footer