MRTG
Установка
- идем на [офф сайт ], скачиваем оттуда нужную версию. Распаковываем архив:
./configure make make install
- После этого должен появиться каталог /usr/local/mrtg-2:
Настройка
- Для работы mrtg необходимо сгенерировать конфигурацтонный файл mrtg. Для этого можно использовать утилиту /usr/local/mrtg-2/bin/cfgmaker. Пример использования утилиты:
/usr/local/mrtg-2/bin/cfgmaker community@127.0.0.1 --output=/etc/mrtg/mrtg.conf
- Список доступных оций:
WorkDir: имя-директории (задает размещение журнала, рабочих файлов и генерируемых страниц, имеет приоритет над HtmlDir, ImageDir и LogDir)
LogDir: имя-директории
Refresh: частота перерисовки в броузере (по умолчанию 300 секунд)
RunAsDaemon: no | yes
Target[target]: порт:комьюнити@маршрутизатор[:port[:timeout[:retries[:backoff[:2]]]]], где
- порт - номер интерфейса на маршрутизаторе (номер в некоей внутренней таблице). Если снимать нужно с интерфеса на локальном компьютере то таблицу интерфейсов и их индексов можно просмотреть с помощью команды ip ad. Также можно жестко указать имя интерфейса вместо индекса. Примеры:
Target[localhost_eth0]: \eth0:public@192.168.2.124:
Target[localhost_eth0]: 2:public@192.168.2.124:
- комьюнити - community в смысле SNMP (пароль на чтение)
- маршрутизатор (имя или IP-адрес) (не любит точку в конце имени)
- port - по умолчанию стандартный порт SNMP (UDP 161)
- timeout - 2 секунды
- retries - 5 раз
- backoff - во сколько раз увеличивать timeout при каждом повторе (по умолчанию - 1)
- 2 - означает использование 64-битных счетчиков (устройство должно поддерживать SNMPv2c)
<note>Если перед номер порта поставить знак "минус", то входной и выходной трафик меняется местами.
Target[target]: внешняя-программа-с-параметрами-в-обратных-кавычках
программа должна возвращать на стандартный вывод 4 строки
- значение первой переменной (предполагается счетчик входных байт)
- значение второй переменной (предполагается счетчик выходных байт)
- текстовая строка, содержащая информацию о времени работы объекта после включения (uptime)
- строка, указывающая имя объекта
После этого должен появиться файл конфигурации /etc/mrtg/mrtg.conf. Его можно/нужно отредактировать руками добавив/удалив нужные/ненужные опции.После того как сформирован конфигурационный файл необходимо сгенерировать html страницу со статистикой. Для этого можно/нужно воспользоваться утилитой /usr/loca/mrtg-2/bin/indexmaker/indexmaker. Пример использования indexmaker:
/usr/local/mrtg-2/bin/indexmaker --output /var/www/index.html /etc/mrtg/mrtg.conf
Примеры скриптов для составления локальной статистики (!SNMP):
Пример №1:
#!/bin/bash # Usage: count.sh iface /bin/grep "$1" /proc/net/dev | awk -F ":" '{ print $2 }' | awk '{ print $1 "\n" $9 }' UPTIME=`/usr/bin/uptime | /bin/awk -F " " '{ print $3 }'` echo $UPTIME echo $1
Пример №2:
#!/bin/bash #Usage: count.sh iface ifconfig $1 | awk '/bytes/ {print $2}' | sed 's/bytes://' ifconfig $1 | awk '/bytes/ {print $6}' | sed 's/bytes://' UPTIME=`/usr/bin/uptime | /bin/awk -F " " '{ print $3 }'` echo $UPTIME echo $1
Пример конфигурационного файла mrtg.conf:
WorkDir: /home/www/mrtg LogDir: /home/www/mrtg Refresh: 300 Interval: 5 RunAsDaemon: Yes ##########iface eth0########### Target[eth0]: `/etc/mrtg/count.sh eth0` Title[eth0]: Output interface PNGTitle[eth0]: Interface to Internet MaxBytes[eth0]: 640000 AbsMax[eth0]: 1280000 Options[eth0]: growright, bits PageTop[eth0]: <h1>Output interface</h1> kilo[eth0]: 1024 ShortLegend[eth0]: b/s Legend1[eth0]: Incoming Traffic in Bits per Second Legend2[eth0]: Outgoing Traffic in Bits per Second Legend3[eth0]: Maximal 5 Minute Incoming Traffic Legend4[eth0]: Maximal 5 Minute Outgoing Traffic LegendI[eth0]: In: LegendO[eth0]: Out:
Использование
Для запуска добавляем в crontab:
*/5 * * * * root env LANG=C /usr/local/mrtg-2/bin/mrtg /etc/mrtg/mrtg.conf
Used Documentation
http://linux.yaroslavl.ru/docs/conf/MRTG.html http://ras.pl.ua/ras_mrtg_cover/ http://ru.gentoo-wiki.com/wiki/HOWTO_%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_MRTG http://tuupic.org.ru/nastrojka-mrtg-na-centos/ http://silverghost.org.ua/2008/05/04/svyazka-snmpd-mrtg/ http://subnets.ru/blog/?p=27
http://server-tuning.info/linux/mrtg-scripts.html
http://www.opennet.ru/base/sys/mrtg_install.txt.html
http://forum.lafox.net/index.php?showtopic=13143
http://ftp.linux.org.ua/pub/docs/mirrors/pm4u.opennet.ru/mrtg.htm