Nagios/Icinga plugin to check current server's RAID status
This plugin checks all RAID volumes (hardware and software) that can be identified.
While written originally for Nagios, it's known to work also with: - Icinga - Sensu
This is supposed to be a general plugin to run via NRPE. It checks for the various RAID systems, and verifies they are working correctly.
Some checks require root permission, that is acomplished using
sudo. Neccessary
sudorules (detected for your system), can be installed when
check_raidis invoked with
-Sargument. You need to be
rootuser and it will add required lines to the sudo config file.
IMPORTANT: See CONTRIBUTING.md what is needed for your reported Issue to be worked on or Pull Request to be accepted.
Failure to do so means I will just have to ignore your Issue or Pull Request and will eventually close with no resolution. Currently there are too many of such tickets.
Download latest release from releases page
next step would be to setup system
sudorules:
./check_raid.pl -S
run with
-dto preview the sudo rules.
Plugin should be ready to be run:
./check_raid.pl
for some RAIDs there's need to install extra tools, see Supported RAIDs
To obtain latest development version of the plugin source, grab tarball or do a git checkout:
git clone --depth=8 https://github.com/glensc/nagios-plugin-check_raid
to build self-contained fatpacked
check_raid.pl, invoke
make pack, otherwise use
check_raid.shin project root to run the plugin in source tree.
./check_raid.pl [-p|--plugin ] [-w|--warnonly] ./check_raid.pl -S ./check_raid.pl -l
Command line arguments
-V --version Print check_raid version -d Produce some debug output -S --sudoers Configure /etc/sudoers file -W --warnonly Don't send CRITICAL status -p --plugin Force the use of selected plugins, comma separated --noraid=STATE Set status as STATE if RAID volumes are not found. Defaults to `UNKNOWN` --resync=STATE Set status as STATE if RAID is in resync state. Defaults to `WARNING` --check=STATE Set status as STATE if RAID is in check state. Defaults to `OK` --cache-fail=STATE Set status as STATE if Write Cache is present but disabled. Defaults to `WARNING` --bbulearn=STATE Return STATE if Backup Battery Unit (BBU) learning cycle is in progress. Defaults to `WARNING` --bbu-monitoring Enable experimental monitoring of the BBU status -l --list-plugins Lists active plugins
STATEcan be one of:
OK,
WARNING,
CRITICAL,
UNKNOWN
Supported RAIDs that can be checked:
aacclior
afaclior
arcconf
lsvg
cciss_vol_status(hpsa supported too)
hpacucli,
hpssacli,
ssacli
tw_cli
/proc/scsi/dpt_i2o
/proc/scsi/gdth
/proc/megaraid
/proc/megaide
/proc/mdstat
You might need to install following tools depending on your raid:
CmdTool2: CmdTool2 SAS RAID Management Utility
arcconf: Adaptec uniform command line interface
cciss_vol_status: http://cciss.sourceforge.net/
dmraid: Device Mapper RAID command line interface
megarc-scsi: LSI Logic MegaRAID Linux MegaRC utility
mpt-status: LSI RAID controllers - http://www.red-bean.com/~mab/mpt-status.html
tw_cli-9xxx: 3ware SATA RAID controllers - http://www.3ware.com/
Project entry in Nagios Exchange: http://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/RAID-Controllers/check_raid/details
License: GPL v2
(c) 2004-2006 Steve Shipway (code up to version 2.1), university of auckland, http://www.steveshipway.org/forum/viewtopic.php?f=20&t=417&p=3211 Steve Shipway Thanks M Carmier for megaraid section.
(c) 2009-2019 Elan Ruusamäe [email protected] (maintainer from version 2.1 and upwards)