Мониторинг параметров S.M.A.R.T. в Zabbix
sys-apps/smartmontools-6.1
net-analyzer/zabbix-2.0.4-r1
Установка smartmontools
emerge sys-apps/smartmontools -av
Установка скрипта
Создание папки для скриптов:
mkdir /etc/zabbix/scripts/ chown root:zabbix -R /etc/zabbix/scripts/ chmod 750 /etc/zabbix/scripts/
Создадим сам скрипт:
Скрипт поддерживает обнаружение (discovery) дисков.
Скрипт предусматривает кэш, что позволяет сократить количество реальных обращений.
Время действия кэша в секундах должно устанавливается чуть меньше чем период опроса элементов.
Установка прав
chown root:zabbix /etc/zabbix/scripts/smart-stats.sh chmod 550 /etc/zabbix/scripts/smart-stats.sh
Настройка прав пользователю zabbix в sudo
/etc/sudoers
... ##### CUSTOM ##### zabbix ALL=(ALL) NOPASSWD: /usr/sbin/smartctl
Проверить работу скрипта для zabbix:
sudo -u zabbix /etc/zabbix/scripts/smart-stats.sh none sda Temperature_Celsius
Вы должны получить данные, если этого не произошло, то конфигурация выполнена не правильно.
Если для проверки скрипт запускался с правами root, то он будет владельцем кэш файла - удалите кэш файл после проверок.
Настройка Zabbix Agent
Настройка
/etc/zabbix/zabbix_agentd.conf
... UserParameter=smart[*],/etc/zabbix/scripts/smart-stats.sh none "$1" "$2"
Перезапустить
/etc/init.d/zabbix-agentd restart
Проверка
zabbix_get -s HOST -k 'smart[sda,Temperature_Celsius]'
Настройка Zabbix Server
Для контролируемых данных в Zabbix нужно создать соответствующее элементы с типом «Zabbix агент» и ключом типа:
smart[dev,key]
где dev - имя устройства, key - контролируемая метрика.
Готовый Шаблон для мониторинга SMART (agent) с уже настроенными элементами и графиками.
Результат
Пример графиков:
Обсуждение
В скрипте ошибка. По итогам DICOVERY получается строка:
Последняя запятая явно лишняя.
JSON это допускает. Возможно у вас не работало по другой причине или просто таймаута опроса не дождались. Какая версия Zabbix?
Версия 2.2. таймаут поставил маленький для тестирования шаблона. В разделе НАСТРОЙКА-УЗЛЫ СЕТИ-мой сервер-ПРАВИЛА ОБНАРУЖЕНИЯ данный шаблон пометился красным значком с ошибкой и надписью "Value should be a JSON object". Именно после удаления последней запятой все заработало.
Спасибо за проделанную работу - Ваши статьи помогают быстро разобраться.
Спасибо за замечание в адрес версии 2.2
Писалось под 2.0
Надо будет заняться правкой
Скрипт исправлен
Если вдруг у кого возникнет проблема что нет данных, можно попробовать включить smart командой
Хороший ман, единственно установка smartmontools sudo aptitude install smartmontools -y nano /etc/default/smartmontools
/etc/init.d/smartmontools restart
и вместо /etc/init.d/zabbix-agentd restart должно быть /etc/init.d/zabbix-agent restart
Спасибо! Успешно завелось. Только из скрипта пришлось убрать первый аргумент (RESERVED="$1").
Это наследство от версии 1.8
Как настроить работу в режиме активного агента?
Надо переделать скрипт
Подскажите, что и где изменить для корректной работы в Zabbix 2.4.8-1 На клиенте скрипт отрабатывает корректно
Вот с Zabbix-сервера при попытке опросить
Соответственно в Latest Data имею http://clip2net.com/s/3yt8yrv
Заранее благодарен.
UserParameter= ???
Да, действительно в этом была причина. Некорректно добавил строку с UserParameter= Исправил.Отрабатывает корректно. Благодарю за помощь. И отдельное спасибо за качественно и доходчиво написанные статьи на Вашем сайте.
Есть zabbix 3.0 и есть raid5 на 4 scsi винтах, при попытке выполнить скрипт на клиенте
вывод smartctl
Подскажите пожалуйста, как переделать скрипт, под данные винты, что бы получать в CAHCE_FILE
Эти данные получается выдрать:При выполнении из терминала
создается файл с именем zabbix.smart.sg0.sg1.sg2.sg3.sg4.sg5.cache
Заранее благодарен.
p.s: Шаблон импортировался без каких либо проблем.
1) нужно поправить команду sed на для выбора устройств sg из /dev
судя по всему вы уже это сделали
2) Что бы больше ничего не править попробуй привести вывод smartctrl в формат как у обычных дисков - поиграться с опциями, указать вендора контроллера
3) Если формат не изменить, то править надо команду выбора метрики под ваш формат,
такова общая задумка, но можете делать как хотите