I would like to implement some open source monitoring in my server infrastructure. I want detailed monitoring for both the server and Raid array. The client should notify me if any of the disks fail in that RAID array.
closed as off topic by sysadmin1138♦ Aug 9 '12 at 17:16
Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.
Just about any monitoring tool should be able to handle that without issue. Myself I use Zabbix for my monitoring and setting something like this up with Zabbix will be pretty straight forward.
In Zabbix I would set up a "User Parameter" to pull the array status. Probably something like this:
userparameter=raid[*],cat /proc/mdstat | grep -A 1 $1 | tail -1 | sed 's/.+(\[.+\])\s*$/\1/'
Then I would create an item to monitor it: Item Name: $1 Raid status (The $1 will substitute with the value passed to the key, md0) key: raid[md0] interval: 60 seconds type: char
Then I would write a trigger which would regex against that:
And then create an action to alert.
Then if you put this into a template you can have this trigger/item pushed out to all hosts. You will also need to make sure the User Parameter gets pushed out to all hosts as well.
In addition you would gain something Nagios does not do, performance monitoring as well as availability monitoring as you can also track disk and other system metrics over time.
I'd suggest using nagios and if need be making your own plugins to monitor the RAID array if need be.