В данной статье будем прикручивать к Zabbix мониторинг жестких дисков Windows, для мониторинга жестких дисков Linux (Ubuntu) смотрите в этой статье.
Начнем с установки Smartmontools в Windows, скачиваем smartmontools от сюда выбираем последнюю версию (на момент написания статьи была использована версия smartmontools-5.41-1.win32-setup.exe) и устанавливаем (ничего не меняя, Далее..).
Добавляем строки в C:\Program Files\Zabbix Agent\zabbix-agentd.conf:
##### SMARTMONTOOLS HDD MONITORING##################### UserParameter=HDD[*], for /F "tokens=10" %a in ('C:\"Program Files"\smartmontools\bin\smartctl.exe -A $1 ^| find "$2"') do @echo %a UserParameter=HDD.health.[*], for /F "tokens=6" %a in ('C:\"Program Files"\smartmontools\bin\smartctl.exe -H $1 ^| find "test"') do @echo %a UserParameter=HDD.model.[*],for /F "tokens=3*" %a in ('C:\"Program Files"\smartmontools\bin\smartctl.exe -i $1 ^| find "Device Model"') do @echo %a %b UserParameter=HDD.sn.[*],for /F "tokens=3" %a in ('C:\"Program Files"\smartmontools\bin\smartctl.exe -i $1 ^| find "Serial Number"') do @echo %a UserParameter=HDD.errorlog.[*], for /F "tokens=4" %a in ('C:\"Program Files"\smartmontools\bin\smartctl.exe -l error $1 ^| find "ATA Error Count"') do @echo %a UserParameter=HDD.rv.a,"C:\"Program Files"\smartmontools\bin\smartctl.exe" -H -q silent /dev/sda & echo %errorlevel% UserParameter=HDD.rv.b,"C:\"Program Files"\smartmontools\bin\smartctl.exe" -H -q silent /dev/sdb & echo %errorlevel% UserParameter=HDD.rv.c,"C:\"Program Files"\smartmontools\bin\smartctl.exe" -H -q silent /dev/sdb & echo %errorlevel%
Перезапускаем службу zabbix агента в Windows:
START -> Control Panel -> Administrative Tools -> Services
Ищем zabbix-agent -> Stop -> Start
Пробуем получить с Zabbix-agent информацию о температуре жесткого диска. Это делается там, где установлен Zabbix сервер.
zabbix_get -s 192.168.1.5 -k HDD[sdb,Temperature_Celsius]
Остается сделать шаблон на web морде Zabbix сервера, смотрите в этой статье.
При проверке температуры Windows в ключе запроса нужно указывать sda
zabbix_get -s 192.168.1.5 -k HDD[sda,Temperature_Celsius]
А можете подсказать немного по коду?
У меня при команде на виндовой машине
>C:\»Program Files»\smartmontools\bin\smartctl.exe -H /dev/sda
Получается:
smartctl 6.1 2013-03-16 r3800 [i686-w64-mingw32-2008-sp2] (sf-6.1-1)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, http://www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK
А если на сервере с zabbix’ом выполнить команду
# zabbix_get -s expertserv -p 10050 -k «HDD.health.[/dev/sda]»
То выходит пустая строка.
Что нужно изменить, чтобы исправить это?
необходимо добавь в конфиг агента (zabbix_agentd.conf) параметр UnsafeUserParameters=1
иначе в командах недопустимы символы: \ ‘ ” ` *? [ ] { } ~ $! &; ( ) | # @.
Дружище можно вопрос:
В отзывах о жёстком диске WD RE WD2000FYYZ говорится о каком-то TLER, который надо отключать если диск не в Рэйде, вот ссылка: http://www.ulmart.ru/goods/373048
Не подскажете о чём идёт речь, и как это задействовать?