Проверяем какой RAID установлен на сервере
# lspci | grep -i RAID 03:01.0 RAID bus controller: Adaptec AAC-RAID (rev 01)
Мониторить Adaptec AAC-RAID будем с помощью arcconf
Скачиваем и устанавливаем необходимую нам версию с сайта www.adaptec.com
# wget http://download.adaptec.com/raid/storage_manager/asm_linux_x86_v6_50_18579.tgz # tar xvf asm_linux_x86_v6_50_18579.tgz # cd manager/ # rpm -ivh StorMan-6.50.i386.rpm
Отключаем stor_agent из автозагрузки
# chkconfig stor_agent off # chkconfig --list | grep stor_agent stor_agent 0:off 1:off 2:off 3:off 4:off 5:off 6:off
Создадим симлинк для удобной работы с утилитой arcconf
# ln -s /usr/StorMan/arcconf /usr/sbin/arcconf
Посмотреть информацию о контроллере
# arcconf getconfig 1 AD Controllers found: 1 ---------------------------------------------------------------------- Controller information ---------------------------------------------------------------------- Controller Status : Optimal Channel description : SATA Controller Model : Adaptec 2810SA Controller Serial Number : BE7ECC Physical Slot : 4 Installed memory : 64 MB Copyback : Disabled Background consistency check : Disabled Automatic Failover : Enabled Stayawake period : Disabled Spinup limit internal drives : 0 Spinup limit external drives : 0 Defunct disk drive count : 0 Logical devices/Failed/Degraded : 1/0/0 -------------------------------------------------------- Controller Version Information -------------------------------------------------------- BIOS : 4.2-0 (7348) Firmware : 4.2-0 (7348) Driver : 1.1-5 (2461) Boot Flash : 0.0-0 (0)
Информация о логических дисках
# arcconf getconfig 1 LD Controllers found: 1 ---------------------------------------------------------------------- Logical device information ---------------------------------------------------------------------- Logical device number 0 Logical device name : raid5 RAID level : 5 Status of logical device : Optimal Size : 1429500 MB Stripe-unit size : 256 KB Read-cache mode : Enabled Write-cache mode : Disabled (write-through) Write-cache setting : Disabled (write-through) Partitioned : Yes Protected by Hot-Spare : Yes Global Hot-Spare : 0,7 Bootable : Yes Failed stripes : No Power settings : Disabled -------------------------------------------------------- Logical device segment information -------------------------------------------------------- Segment 0 : Present (0,0) WD-WC1 Segment 1 : Present (0,1) WD-WC2 Segment 2 : Present (0,2) WD-WC3 Segment 3 : Present (0,3) WD-WC4 Segment 4 : Present (0,4) WD-WC5 Segment 5 : Present (0,5) WD-WC6 Segment 6 : Present (0,6) WD-WC7
Вся информация о RAID массиве
# arcconf getconfig 1 AL
Создадим проверку RAID массива при помощи вот этого скрипта check_aacraid
Сделаем файл исполняемым и перенесем в папку
/usr/lib/nagios/plugins для 32-битных систем /usr/lib64/nagios/plugins"для 64-битных систем
# chmod +x check_aacraid # mv check_aacraid /usr/lib/nagios/plugins
Проверим скрипт
# ./check_accraid aacraid OK - Lucky you
Для того чтобы запустить проверку в Nagios используя nrpe запустим команду через sudo
#!/bin/sh ARCCONF=/usr/sbin/arcconf OUTPUT=$(mktemp /tmp/arcconf.XXXXXXXXXX) sudo $ARCCONF getconfig 1 > $OUTPUT
Установим sudo, если он не стоит, создадим папку
# yum install sudo # mkdir /etc/sudoers.d/ # vi /etc/sudoers.d/nagios
Проверяем от какого пользователя работает nrpe
# ps waux | grep nrpe nrpe /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
Содержимое /etc/sudoers.d/nagios
# cat /etc/sudoers.d/nagios Defaults:nrpe !requiretty nrpe ALL=NOPASSWD: /usr/lib/nagios/plugins/check-aacraid
Правим /ets/sudoers добавляя строчку
# visudo #includedir /etc/sudoers.d
Добавим на хост машине в /etc/nagios/nrpe.cfg
command[check_aacraid]=sudo /usr/lib/nagios/plugins/check_aacraid
Перестартуем nrpe
# service nrpe restart Shutting down Nagios NRPE daemon (nrpe): [ OK ] Starting Nagios NRPE daemon (nrpe): [ OK ]
На сервере Nagios в /etc/nagios/hosts/TEST.cfg пропишем проверку сервиса
define service{ use generic-service host_name TEST service_description RAID is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 1 retry_check_interval 1 contact_groups admins notification_interval 120 notification_period 24x7 notification_options c,r check_command check_nrpe!check_aacraid }
Перестартуем Nagios
# service nagios reload Running configuration check...done.
Результат