Zabbix — мониторинг S.M.A.R.T

Zabbix — мониторинг S.M.A.R.T

В первую очередь нужно установить софт.
apt-get install smarttools
После установки можно посмотреть состояние диска командой:
smartctl --all /dev/sda
Выполнив данную команду вы увидите таблицу с параметрами. Нам важны четыре столбца: ATTRIBUTE_NAME (Имя атрибута), VALUE (текущее значение), THRESH (критическое значение) и RAW_VALUE.

Если VALUE стало меньше THRESH в случае Pre-fail атрибута — существует большая вероятность, что диск вылетит в ближайшие 24 часа.

Если VALUE стало меньше THRESH в случае Old_age атрибута — существует большая вероятность, что диск вылетит т.к. выработан ресурс. Вот только когда — науке это неизвестно.

* Raw Read Error Rate — частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска.

* Spin Up Time — время раскрутки пакета дисков из состояния покоя до рабочей скорости. При расчете нормализованного значения (Value) практическое время сравнивается с некоторой эталонной величиной, установленной на заводе. Не ухудшающееся немаксимальное значение при Spin Up Retry Count Value = max (Raw равном 0) не говорит ни о чем плохом. Отличие времени от эталонного может быть вызвано рядом причин, например просадка по вольтажу блока питания.

* Spin Up Retry Count — число повторных попыток раскрутки дисков до рабочей скорости, в случае если первая попытка была неудачной. Ненулевое значение Raw (соответственно немаксимальное Value) свидетельствует о проблемах в механической части накопителя.

* Seek Error Rate — частота ошибок при позиционировании блока головок. Высокое значение Raw свидетельствует о наличии проблем, которыми могут являться повреждение сервометок, чрезмерное термическое расширение дисков, механические проблемы в блоке позиционирования и др. Постоянное высокое значение Value говорит о том, что все хорошо.

* Reallocated Sector Count — число операций переназначения секторов. SMART в современных дисках способен произвести анализ сектора на стабильность работы «на лету» и в случае признания его сбойным, произвести его переназначение.

Даем root права на запуск приложения для пользователя zabbix в файле /etc/sudoers.
zabbix ALL= (ALL) NOPASSWD: /usr/sbin/smartctl
В файл /etc/zabbix/zabbix-agentd.conf нужно внести данные строки.
UserParameter=smartd.value[*],sudo smartctl -A $1 | grep $2 | awk '{print $ 4+0}'
UserParameter=smartd.trash[*],sudo smartctl -A $1 | grep $2 | awk '{print $ 6+0}'
UserParameter=smartd.raw[*],sudo smartctl -A $1 | grep $2 | awk '{print $ 10+0}'
и перезагрузить агент командой systemctl restart zabbix-agent.service.

Web-Интерфейс.

Для примера обработает запрос данных о Raw Read Error Rate. В интерфейсе нужно создать два «Элемент данных».
Первый элемент будет содержать: smartd.trash[/dev/sda,Raw_Read_Error_Rate]
Второй элемент будет содержать: smartd.value[/dev/sda,Raw_Read_Error_Rate]
Т.е. первый элемент получает значение THRESH, а второй — VALUE из той самой таблицы в начале. Но нужно ещё сделать триггер! Он будет проверять значения элементов данных по /dev/sda.

Выражение приведено ниже.
{Template OS Linux:smartd.value[/dev/sda,Raw_Read_Error_Rate].last()}<{Template OS Linux:smartd.trash[/dev/sda,Raw_Read_Error_Rate].last()}

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

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