Мониторинг программного RAID в Zabbix

Достаточно часто использую программные RAID-массивы на  Windows-серверах: удобно, дёшево, сердито. 🙂

Однако, за программным RAID-массивом, как и за любым другим, нужно следить. Хотя бы чуть-чуть.

Есть отличная статья, которая описывает, как следить за программным RAID-массивом в Linux: https://serveradmin.ru/monitoring-programmnogo-reyda-mdadm-v-zabbix/

И тут я подумал: “А чем Windows хуже?”. Сказано, – сделано. 🙂

Шаг 1. Настройка Zabbix-client на наблюдаемом сервере

Вояем простенький скрипт, который выводит “0”, если с массивом всё хорошо, и “1”, если есть проблемы. Сразу замечу, что скрипт писался с расчётом на то, что Windows Server у вас использует по умолчанию русский язык. Если же у вас используется другой язык, рекомендую от имени администратора выполнить команду “echo list volume | diskpart” и посмотреть, что выводится в том случае, если какой-то RAID-массив имеет проблемы.

Текст скрипта

@echo off
echo list volume | diskpart | findstr /i ошибка > %TEMP%\mdadm.txt
set /p a=< %TEMP%\mdadm.txt
echo %a% >nul
If %Errorlevel%==0 (echo 1) else (echo 0)

Открываем “блокнот”, в новый документ вставляем указанный выше текст и записываем всё это в bat-файл. У меня Zabbix-Client на серверах обычно установлен в папку  с именем “C:\zabbix”, поэтому полный путь до файла со скриптом будет таким: “C:\zabbix\raid_status.bat”

Теперь открываем файл с конфигурацией Zabbix-клиента, который у меня расположен по адресу  “C:\zabbix\zabbix_agentd.win.conf”, и в самый конец файла дописываем новую строку

UserParameter=raid_status, C:\zabbix\raid_status.bat

После того, как сохранили конфигурацию, перезапускаем службу агента. Я обычно это делаю при помощи оснастки “Управление компьютером”.

Теперь нужно проверить, всё ли правильно мы сделали. Открываем “От имени администратора” консоль (CMD) и подаём команду

C:\zabbix\zabbix_agentd.exe -c c:\zabbix\zabbix_agentd.win.conf -t raid_status

Если будет выведено “raid_status [t|0]”, значит вы всё настроили правильно.

Шаг 2. Настройка Zabbix-Server

Сервер настраиваем по аналогии с указанной выше статьёй: https://serveradmin.ru/monitoring-programmnogo-reyda-mdadm-v-zabbix/

Только всегда нужно делать “поправку на ветер”. Ну, например, я использую элемента данных “raid_status”, а  в статье используется “mdadm.status”.

В  статье написано всё очень подробно. Я просто приведу свои скриншоты. 🙂