amuck-landowner

Testing Disk Read / Write on Host Node

Tyler

Active Member
Does anyone know of a shell script for testing disk read/write speeds? I am trying to find a way to ensure that my read/write speeds stay normal.

I had a few ideas for this:

  • Shell script that runs a DD test and emails if the test comes back with a speed below X MB/s -- then run this script on a cron job every few days. 
  • Run either a script or daemon to monitor I/O wait and emails if the wait comes back as high
I'm thinking option #2 would probably be better since it won't hammer the disk for a few seconds simply to test (not that it is particularly significant, but in a production machine, you would want to eliminate unnecessary writing as much as possible--it's also compounded by the fact that a cron job would be run multiple times in option #1).

I'm not of the technical nature, so if you know of a better way to do this, please let me know!

I have no qualms with paying to have a script written for this, I would obviously like to know if there is something in the open source community that already exists for this need. Maybe there is a way to do this with Nagios - but I want it to send an email (so it can be piped to an internal admin queue). Not too sure.
 

AshleyUK

New Member
Verified Provider
Does anyone know of a shell script for testing disk read/write speeds? I am trying to find a way to ensure that my read/write speeds stay normal.

I had a few ideas for this:

  • Shell script that runs a DD test and emails if the test comes back with a speed below X MB/s -- then run this script on a cron job every few days. 
  • Run either a script or daemon to monitor I/O wait and emails if the wait comes back as high
I'm thinking option #2 would probably be better since it won't hammer the disk for a few seconds simply to test (not that it is particularly significant, but in a production machine, you would want to eliminate unnecessary writing as much as possible--it's also compounded by the fact that a cron job would be run multiple times in option #1).

I'm not of the technical nature, so if you know of a better way to do this, please let me know!

I have no qualms with paying to have a script written for this, I would obviously like to know if there is something in the open source community that already exists for this need. Maybe there is a way to do this with Nagios - but I want it to send an email (so it can be piped to an internal admin queue). Not too sure.

I use NewRelic, may be a bit overkill for your needs, but provides full monitoring of all levels of the node including I/O and allows you to setup custom alert levels and allows you to look back at past data over a set period, and has a good Mobile App and reporting system.

Places very minimal "overhead" to the node.
 

MightWeb-Greg

Member
Verified Provider
I use NewRelic, may be a bit overkill for your needs, but provides full monitoring of all levels of the node including I/O and allows you to setup custom alert levels and allows you to look back at past data over a set period, and has a good Mobile App and reporting system.

Places very minimal "overhead" to the node.
I'll check this out myself. I just stood up a new node myself and I seem to have problems with read/writes. It's running at 3gb/s speeds vs the 6gb/s it should be.

I'm just running a dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync

But this may give me a better idea as to what is going on in the future.
 

Navyn

New Member
Verified Provider
We tried New Relic with some of our vps clients they reported that it uses high resources.

But not tested on node servers yet.

Hope it will work fine for you. 
 
Top
amuck-landowner