Задача:
В этой статье мы рассмотрим постановку на мониторинг параметров нашего FreeBSD сервера. Так как сервера у нас у всех одинаковые, то статья подойдет под все сервера компании.
Реализация:
Мониторить будем при помощи агента, так как только таким способом мы сможем снять максимальное кол-во параметров. Итак, заводим новый узел сети, и прикрепляем к нему шаблон Template_FreeBSD - как это все делать я повторяться не буду, а вот на шаблоне остановлюсь подробно. Тот шаблон, что есть по умолчанию нас не устраивает по ряду причин, потому на основе его мы будем делать свой. То есть когда вы заводите новый узел, то прикрепить шаблон вы должны с этого форума, который надо импортировать в ваш zabbix.
Шаблон:
Какие то изменения я уже сделал в этом шаблоне... это мелочные изменения, в виде корректировки значения тригеров или ния имени сетевой карты на bge - я не буду описывать эти изменения - они не столь значительны, как то, что будет идти дальше. Вам достаточно просто загрузить себе мой темплейт, и эти изменения появятся и у вас. А вот дальше я начинаю по пунктам описывать параметры, которые не были учтены в стандартном шаблоне, но нужны нам.
Мониторинг райда
Перво-наперво нам надо знать как живут наши жёские диски. На всех наших серверах поднят RAID, который мы и начнем мониторить. Идем на сервере в файл /usr/local/etc/zabbix/zabbix_agentd.conf в конец которого добавляем следующие строки
Код: Выделить всё
#####
# RAID status
#####
UserParameter=raid.0,/sbin/atacontrol status ar0 | grep 'status' | cut -f5 -d" " | grep DEGRADED | wc -l
UserParameter=raid.1,/sbin/atacontrol status ar1 | grep 'status' | cut -f5 -d" " | grep DEGRADED | wc -l
#####
Код: Выделить всё
stat# chown root:zabbix /sbin/atacontrol
stat# chmod 710 /sbin/atacontrol
stat# chmod ug+s /sbin/atacontrol
1) получаем стостояние райда (не важно какого) и ищем там слово "DEGRADED" как признак что он развалился
2) если не развалился, или пересобирается - у нас будет 0 если слово найдено - будет 1
3) когда найдем слово - сработает тригер, который сообщит нам что райд развален
4) шаблон мониторит два дисковых массива ar0 и ar1 Мониторинг температур и скоростей вентиляторов
Внимание, мониторинг температуры частично переработан в статье http://corp.stniva.ru/forum/viewtopic.p ... p=289#p289
Следующий критичный параметр - это охлаждение сервера. Не буду описывать для чего это надо - тут итак все понятно, потому переходим сразу к настройки мониторинга. для начала ставим из портов программку, которая нам будет помогать
Код: Выделить всё
# cd /usr/ports/sysutils/mbmon
# make install clean
Код: Выделить всё
stat# /usr/local/bin/mbmon -c 1 -r -I
TEMP0 : 29.0
TEMP1 : 41.0
TEMP2 : 0.0
FAN0 : 10384
FAN1 : 10384
FAN2 : 10384
VC0 : +2.16
VC1 : +3.58
V33 : +3.30
V50P : +5.54
V12P : +10.64
V12N : +1.54
V50N : +1.09
stat#
Код: Выделить всё
#####
# Parametry MatPlaty
#####
UserParameter=mb.t1,/usr/local/bin/mbmon -T 1 -c 1 -I
UserParameter=mb.t2,/usr/local/bin/mbmon -T 2 -c 1 -I
UserParameter=mb.f1,/usr/local/bin/mbmon -F 1 -c 1 -I
UserParameter=mb.f2,/usr/local/bin/mbmon -F 2 -c 1 -I
UserParameter=mb.f3,/usr/local/bin/mbmon -F 3 -c 1 -I
Что, значит, мы создали:
1) поставили на мониторинг 5 параметров - 2 температуры и 3 вращения
2) создали 5 тригеров
3) создали 2 графика Мониторинг HDD
Для мониторинга состояния жеских дисков мы будем использовать утилитку smartctl. Устанавливаем из портов
Код: Выделить всё
cd /usr/ports/sysutils/smartmontools
make install clean
Код: Выделить всё
stat# chown root:zabbix /usr/local/sbin/smartctl
stat# chmod 710 /usr/local/sbin/smartctl
stat# chmod ug+s /usr/local/sbin/smartctl
Код: Выделить всё
#####
# Parametry HDD
#####
UserParameter=hdd1.t1,/usr/local/sbin/smartctl -a /dev/ad4 | grep "Temperature_Celsius" | cut -f37 -d" "
UserParameter=hdd2.t1,/usr/local/sbin/smartctl -a /dev/ad6 | grep "Temperature_Celsius" | cut -f37 -d" "
UserParameter=hdd3.t1,/usr/local/sbin/smartctl -a /dev/ad8 | grep "Temperature_Celsius" | cut -f37 -d" "
UserParameter=hdd4.t1,/usr/local/sbin/smartctl -a /dev/ad10 | grep "Temperature_Celsius" | cut -f37 -d" "
На этом этапе мы сделали следующее:
1) замониторили температуру всех жеских дисков
2) создали 4 тригера
3) добавили в предыдущий график температур новые значения