3ware Inc 9650SE SATA-II RAID PCIe monitoring Nagios

Проверяем какой RAID установлен на сервере

# lspci -v | grep RAID
08:00.0 RAID bus controller: 3ware Inc 9650SE SATA-II RAID PCIe (rev 01)
Subsystem: 3ware Inc 9650SE SATA-II RAID PCIe

Мониторить 3ware Inc 9650SE SATA-II RAID будем с помощью tw_cli

Скачиваем и устанавливаем

# rpm -ivh http://dl.atrpms.net/el5-i386/atrpms/stable/tw_cli-2.00.03.018-7.i386.rpm

Информация о пакете

# yum info tw_cli
Name       : tw_cli
Arch       : i386
Version    : 2.00.03.018
Release    : 7
Size       : 4.0 M
Repo       : installed
Summary    : 3ware Command Line Interface Tool
URL        : http://www.3ware.com/
License    : 3ware
Description: tw_cli is a Command Line Interface Storage Management Software for
           : AMCC/3ware ATA RAID Controller(s). It provides controller, logical
           : unit and drive management. tw_cli can be used in both interactive and
           : batch mode, providing higher-level API (Application Programming
           : Interface) functionalities.

Файлы которые входят в пакет

# rpm -ql tw_cli
/etc/tw_sched.cfg
/sbin/tw_cli
/sbin/tw_sched
/sbin/tw_update
/usr/share/doc/tw_cli-2.00.03.018
/usr/share/doc/tw_cli-2.00.03.018/tw_cli.8.html
/usr/share/doc/tw_cli-2.00.03.018/tw_sched.8.html
/usr/share/man/man8/tw_cli.8.gz
/usr/share/man/man8/tw_sched.8.gz

Посмотреть состояние массива и дисков

# tw_cli
//hostname> /c0 show

Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-10   OK             -       -       256K    1862.62   OFF    ON

Port   Status           Unit   Size        Blocks        Serial
---------------------------------------------------------------
p0     OK               u0     931.51 GB   1953525168    WD-WCAW1
p1     OK               u0     931.51 GB   1953525168    WD-WCAW2
p2     OK               u0     931.51 GB   1953525168    WD-WCAW3
p3     OK               u0     931.51 GB   1953525168    WD-WCAW4

Добавим в Nagios проверку RAID при помощи nrpe и вот этого скрипта check_3ware_raid_1_1

Сделаем файл исполняемым и перенесем в папку

/usr/lib/nagios/plugins для 32-битных систем
/usr/lib64/nagios/plugins"для 64-битных систем
# chmod +x check_3ware_raid_1_1
# mv check_3ware_raid_1_1 /usr/lib/nagios/plugins/check_raid

Проверим скрипт

# /usr/lib/nagios/plugins/check_raid
RAID OK: All arrays OK [1 array checked on 1 controller]

Добавим на хост машине в /etc/nagios/nrpe.cfg

command[check_raid]=sudo /usr/lib/nagios/plugins/check_raid

Перестартуем nrpe

# service nrpe restart
Shutting down Nagios NRPE daemon (nrpe):                   [  OK  ]
Starting Nagios NRPE daemon (nrpe):                        [  OK  ]

Проверяем от какого пользователя работает nrpe

# ps waux | grep nrpe
nagios 0.0  0.0   5092   884 ?   Ss   0:50  nrpe -c /etc/nagios/nrpe.cfg -d

Добавим пользователя nagios в sudoers, для этого пропишем, командой visudo, строчку в /etc/sudoers, вместе с #

#includedir /etc/sudoers.d
# tail -n 2 /etc/sudoers
#includedir /etc/sudoers.d

Создаем директории и файл со следующим содержанием

# mkdir /etc/sudoers.d
# touch /etc/sudoers.d/nrpe
# cat /etc/sudoers.d/nrpe
Defaults:nagios !requiretty
nagios      ALL=(ALL)   NOPASSWD:   /usr/lib/nagios/plugins/

На сервере 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_raid
}

Перестартуем Nagios

# service nagios reload
Reloading nagios:                                          [  OK  ]

Результат
3ware_RAID