Вы здесь

Мониторинг RAID в Zabbix

Сегодня я расскажу как настроить мониторинг Raid - массива на серверах IBM с помощью системы мониторинга Zabbix.

IBM использует контроллеры LSI, у и них есть своя утилита для администрирования RAID-контроллера - MegaCli.
Для установки нужно добавить репозиторий в ваш sources.list:
открываем /etc/apt/sources.list и добавляем строку:

deb http://hwraid.le-vert.net/debian jessie main

После чего устанавливаем как обычно:

apt-get update && apt-get upgrade
apt-get install megacli

Проверяем установку:

megacli -v

Если вывод примерно такой, значит установка прошла успешно:

MegaCLI SAS RAID Management Tool  Ver 8.07.14 Dec 16, 2013
 
(c)Copyright 2013, LSI Corporation, All Rights Reserved.
 
Exit Code: 0x00

Теперь на клиентской машине, с установленным агентом zabbix в файл конфигурации /etc/zabbix/zabbix_agentd.conf добавляем строку:

UserParameter=custom.lsi.status,megacli -LDInfo -Lall -aAll | grep State | grep -vc Optimal

Значения параметров:
custom.lsi.status - имя пользовательского параметра, его мы будем использовать в шаблоне при создании элемента данных (Item).
-LDInfo -Lall -aAll - отображаем все логические устройства всех контроллеров
grep State | grep -vc Optimal - выполняем подсчет всех массивов со статусом отличным от «Optimal».

Проверяем:

# zabbix_agentd -t custom.lsi.status
custom.lsi.status                             [t|0]

Все работает.

Пример создания триггера в Zabbix

Создадим триггер отслеживания состояния массивов на примере LSI.

  1. Создаем шаблон Configuration → Templates → Create template, задаем имя и добавляем в группу Templates.
  2. В шаблоне открываем вкладку Items и создаем элемент. Указываем ключ(имя пользовательского параметра в zabbix-агенте - в нашем случае custom.lsi.status) и уменьшаем кол-во дней хранения значений:
  3. Мониторинг RAID в Zabbix
  4. Затем переходим во вкладку Triggers (Триггеры) и создаем триггер, в поле Expression нажимаем Добавить, в появившемся окне в поле Item (Элемент данных) нажимаем Select, в появившемся окне выбираем группу Templates и только что созданный шаблон, в котором у нас единственный элемент (Item), выбираем его. В выпадающем меню Function выбираем «Last (most recent) T value is NOT N» (в рус. версии - "Последнее самое новое значение T значение not N" и проверяем, что в поле N стоит ноль, тем самым триггер будет проверять, что полученное значение от zabbix-клиента (кол-во отказавших массивов) равняется нулю, если это не так - он сработает. Вот что должно получиться (если все нормально, нажимаем Insert):
  5. Создание триггера в zabbix

  6. Далее задаем имя триггера и уровень серьезности происшествия - я оценил его как Hight
  7. Нажимаем сохранить(Save).