Zabbix мониторим жесткие диски Windows при помощи S.M.A.R.T

В данной статье будем прикручивать к 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 сервера, смотрите в этой статье.

Tags: ,
  1. При проверке температуры Windows в ключе запроса нужно указывать sda

    zabbix_get -s 192.168.1.5 -k HDD[sda,Temperature_Celsius]

  2. А можете подсказать немного по коду?

    У меня при команде на виндовой машине

    >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]»

    То выходит пустая строка.
    Что нужно изменить, чтобы исправить это?

    1. необходимо добавь в конфиг агента (zabbix_agentd.conf) параметр UnsafeUserParameters=1
      иначе в командах недопустимы символы: \ ‘ ” ` *? [ ] { } ~ $! &; ( ) | # @.

  3. Дружище можно вопрос:
    В отзывах о жёстком диске WD RE WD2000FYYZ говорится о каком-то TLER, который надо отключать если диск не в Рэйде, вот ссылка: http://www.ulmart.ru/goods/373048

    Не подскажете о чём идёт речь, и как это задействовать?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *