Мониторинг
Материал из Xgu.ru
Содержание |
[править] Вопросы и ответы
[править] MRTG + SMART Как следить за температурой винчестера в FreeBSD?
- (отвечает Анатолий Сидорук)
Графики в MRTG рисуются ОБЯЗАТЕЛЬНО по 2-м значениям поэтому нам нужно их получить
[править] Исходные данные
1. ОС FreeBSD 6.3-RELEASE
2. Два жестких диска SATA
gor# df -h Filesystem Size Used Avail Capacity Mounted on /dev/ad0s1a 496M 56M 400M 12% / /devfs 1.0K 1.0K 0B 100% /dev /dev/ad0s1f 97G 8.8G 80G 10% /Data /dev/ad0s1e 3.9G 22K 3.6G 0% /tmp /dev/ad0s1g 113G 1.9G 102G 2% /usr /dev/ad0s1d 3.9G 75M 3.5G 2% /var /dev/ad1s1d 226G 28G 179G 14% /Backup /devfs 1.0K 1.0K 0B 100% /var/named/dev
Задача: построить графики температуры для диска /dev/ad0
[править] Решение
1. Из портов ставим /usr/ports/sysutils/smartmontools/
2. Запускаем и смотрим значения температуры винчестера в градусах Цельсия (в данном примере 27)
gor# /usr/local/sbin/smartctl -a -s on /dev/ad0 | grep Temp 190 Airflow_Temperature_Cel 0x0022 071 069 045 Old_age Always - 27 (Lifetime Min/Max 24/31) 194 Temperature_Celsius 0x0022 029 040 000 Old_age Always - 27 (0 16 0 0)
Профильтруем этот вывод и получим 2 числа значений (в данном примере 27 градусов) температуры, по которым построим график температуры жесткого диска в MRTG
gor# /usr/local/sbin/smartctl -a -s on /dev/ad0 | grep Temp | awk -F " " '{print $10}' 27 27
3. Создадим вот такой конфигурационный файл для MRTG: файл /usr/local/etc/mrtg/hdd-mrtg.conf
# WorkDir: /usr/local/www/data/hdd_temp Language: ukrainian # Background[^]: #a0a0a0a Options[^]: nopercent, nobanner, unknaszero, growright, gauge, transparent Title[hdd_temp]: HDD Temperature Server HP 100 Proliant Target[hdd_temp]: `/usr/local/sbin/smartctl -a -s on /dev/ad0 | grep Temp | awk -F " " '{print $10}'` Options[hdd_temp]: nobanner, unknaszero, growright, nopercent, gauge, transparent LegendI[hdd_temp]: Temperature HDD LegendO[hdd_temp]: YLegend[hdd_temp]: C MaxBytes[hdd_temp]: 200 AbsMax[hdd_temp]: 200 ShortLegend[hdd_temp]: Grad PageTop[hdd_temp]: <h1><B>Server HP 110 HDD Temperature</B></h1> Legend1[hdd_temp]: HDD Temperature Server HP 100 Proliant
4. Создаем рабочий каталог куда будут записываться данные для графиков (в конфиге он указан как WorkDir: /usr/local/www/data/hdd_temp)
gor#mkdir usr/local/www/data/hdd_temp
5. Из портов /usr/ports/net-mgmt/mrtg установим MRTG
6. Запускаем MRTG c указанием ему созданного конфиг файла /usr/local/bin/mrtg /usr/local/etc/mrtg/hdd-mrtg.conf
7. При запуске MRTG первый раз он даже если нет ошибок в конфиге все равно выдаст четыре предупреждения (не пугайтесь это нормально)
gor# mrtg /usr/local/etc/hdd-mrtg.conf 2009-06-19 15:37:18, Rateup WARNING: /usr/local/bin/rateup could not read the primary log file 2009-06-19 15:37:18, Rateup WARNING: /usr/local/bin/rateup The backup log file for hdd_temp was invalid 2009-06-19 15:37:18, Rateup WARNING: /usr/local/bin/rateup Can't remove hdd_temp.old updating log file 2009-06-19 15:37:18, Rateup WARNING: /usr/local/bin/rateup Can't rename hdd_temp.log to hdd_temp.old
8. Заходим в рабочий каталог для графиков /usr/local/www/data/hdd_temp и смотрим появились ли там данные
gor# cd /usr/local/www/data/hdd_temp/ gor# ls -Al total 116 -rw-r--r-- 1 root wheel 1322 Jun 19 15:40 hdd_temp-day.png -rw-r--r-- 1 root wheel 1199 Jun 19 15:37 hdd_temp-month.png -rw-r--r-- 1 root wheel 1321 Jun 19 15:37 hdd_temp-week.png -rw-r--r-- 1 root wheel 1608 Jun 19 15:37 hdd_temp-year.png -rw-r--r-- 1 root wheel 4664 Jun 19 15:40 hdd_temp.html -rw-r--r-- 1 root wheel 48205 Jun 19 15:40 hdd_temp.log -rw-r--r-- 1 root wheel 48182 Jun 19 15:37 hdd_temp.old -rw-r--r-- 1 root wheel 538 Jun 19 15:37 mrtg-l.png -rw-r--r-- 1 root wheel 414 Jun 19 15:37 mrtg-m.png -rw-r--r-- 1 root wheel 1759 Jun 19 15:37 mrtg-r.png
9. В файл /etc/crontab добвавляем строчку для запуска MRTG каждые 5 минут (меньше нельзя !!!)
# HDD Temperature */5 * * * * root /usr/local/bin/mrtg /usr/local/etc/mrtg/hdd-mrtg.conf
10. Минут через 10 заходим на страничку http://IP-Ваш/hdd_temp/hdd_temp.html и смотрим красивый график температуры на сером фоне который будет обновляться каждые 5 минут
[править] Дополнительная информация
- Мониторинг через IPMI в FreeBSD (рус.) и [1]