mtrg

Имеем настроеный апач, надо понять mrtg с rrdtool.

Устанавливаем mrtg:

[root@mon /usr/ports]# cd /usr/ports/net-mgmt/mrtg
[root@mon /usr/ports/net-mgmt/mrtg]# make install clean

Добавляем в rc.conf следующую строчку:
mrtg_daemon_enable="YES"
Кладем в /usr/local/etc/mrtg конфиг mrtg.
Пример конфиг mrtg представлен ниже. Конфиг не полный, но основные моменты ясны :)

sniffles# cat mrtg.cfg
# ####################
# Global Configuration
# ####################

WorkDir: /usr/local/www/apache22/data
Options[_]: growright,bits

# ————————–
# Optional Global Parameters
# ————————–

Refresh: 300
Interval: 1
RunAsDaemon: yes
LogFormat: rrdtool
PathAdd: /usr/local/bin/

####
D-Link switches
####

Target[10.24.61.1_25]: 25:public@10.24.61.1:::::2
MaxBytes[10.24.61.1_25]: 125000000
Title[10.24.61.1_25]: 76:138/1.0 – 10.24.61.1
PageTop[10.24.61.1_25]:<h1>10.24.61.1/25</h1>
Directory[10.24.61.1_25]: frunzensky_10.24.61

Target[10.24.61.201_25]: 25:public@10.24.61.201:::::2
MaxBytes[10.24.61.201_25]: 125000000
Title[10.24.61.201_25]: 76:138/1.0 – 10.24.61.201
PageTop[10.24.61.201_25]:<h1>10.24.61.201/25</h1>
Directory[10.24.61.201_25]: frunzensky_10.24.61

Каталоги указаные в директиве Directory[10.24.61.201_25]: frunzensky_10.24.61 должны быть заранее созданы в www директории вашего http сервера. Каталоги должны принадлежать юзеру mrtg/mrtg и у него должны быть права на запись туда.
MRTG собирает статистику по snmp с различных девайсов и сохраняет его в формате rrdtool. Генерацией картинок и html страниц занимается перловый скрипт, взятый здесь: http://www.fi.muni.cz/~kas/mrtg-rrd/. Соотвественно mrtg-rrd.cgi надо сделать исполняемым и положить в каталог апача. Далее надо отредактировать mrtg-rrd.cgi. Найти там строчку:

# EDIT THIS to reflect all your MRTG config files
BEGIN { @config_files = qw(/home/fadmin/mrtg/cfg/mrtg.cfg); }

И указать там путь к конфигу mrtg. Далее скрипт сам схавает настроийки mrtg и сгенерит соответсвующие картинки.
Очень важно, что в такой схеме не mrtg генерирует изображения и html страницы каждые X минут(что может сильно нагружать систему), а скрипт mrtg-rrd.cgi по запросу пользователя броузером.

Если свитчей много, можно генерить конфиг c помощью cfg-maker. Мой скрипт для генерации конфига mrtg выглядит так:

cfgmaker –subdirs=SNMPNAME –global “Interval: 1” –global “WorkDir: /usr/local/www/mrtg” –global “Options[_]: growright,bits” –global “LogFormat: rrdtool” –global “RunAsDaemon: yes” –show-op-down ‘–if-filter=($default and $if_type==6)’ snmp-community1@10.10.0.1:::::2 snmp-community1@10.10.0.2:::::2 –output=/usr/local/etc/mrtg/mrtg.cfg

Это одна строчка.

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s