Adaptec AAC-RAID monitoring Nagios

Проверяем какой 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.

Результат
check_aacraid