Xgu.ru теперь в Контакте  — приходите и подключайтесь.
Пока мы работаем над следующими видео, вы можете подключиться в Контакте. Познакомимся и обсудим новые страницы и ролики.

Vk-big.pngYoutube-big.jpeg

Мониторинг

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.


Содержание

[править] Вопросы и ответы

[править] 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 минут

[править] Дополнительная информация