MRTG + RRDTool Часовой график
Я использую MRTG + RRDtool для мониторинга пропускной способности на каждом порту коммутатора Cisco Catalyst 2950 через snmp. Способна ли MRTG генерировать почасовой график? С помощью RRDtool я смог установить интервал в 1 минуту в надежде получить более детальный график, но самый короткий таймфрейм - график "Дневной" (среднее значение за 5 минут), а изображение слишком маленькое.
Что я хочу получить от этого: я хочу иметь возможность визуально контролировать все порты коммутатора и сообщать, когда порт начинает получать необычно высокий трафик, в режиме реального времени (1-минутный интервал опроса snmp, сгенерированные графики и страница обновилась).
4 ответа
Вы можете использовать инструмент командной строки rrdgraph для создания графиков, используя файлы rrd, которые генерирует MRTG. Вы можете проверить его rrd файл и посмотреть, как скоро он консолидирует данные, если он сделает это только через день, то вы потеряете разрешение, к которому вы стремитесь. Так что, в основном, я бы сказал, где MRTG хранит шаблоны rra и шаблоны rrd.
Это может занять немного времени, но поскольку RRD является библиотекой / набором инструментов графического интерфейса для MRTG, Cacti, Munin и т. Д., Ее стоит изучить. Я написал в блоге о некоторых вещах, которые вы, возможно, захотите сделать, создавая свои собственные графики, в блоге Server Fault здесь.
Надеюсь, кто-то, более знакомый с MRTG, может дать вам более подробную информацию по вашей конкретной проблеме с MRTG.
Измените MRTG для использования RRDtool, добавив или изменив строку LogFormat в вашем mrtg.cfg и определив пути, если это необходимо. Уменьшите интервал до 1 минуты.
LogFormat: rrdtool Interval: 1 PathAdd: /path/to/rrdtool/bin/ LibAdd: /path/to/rrdtool/lib/perl/
Измените свою работу cron, чтобы запускать каждую минуту. (Редактировать при необходимости.)
vim /etc/cron.d/mrtg
Измените свой индекс на один из предложенных сценариев Perl CGI. Это будет генерировать изображения по требованию, а не каждый раз, когда запускается задание cron. Я использовал скрипт One4All, указанный в ссылке выше, и вот как он был изменен:
После
my %graphparams = (
вставить новый график'hourly' => ['-10h', 'now', 60],
Ниже;
# the header lines and tags for the graphics my $pngdir = getdirwriteable($cfg->{config}{imagedir}, $cfg->{targets}{directory}{$log});
Добавьте раздел для нового почасового графика, определенного ранее.
if ($sup !~ /h/) { print $q->h2("'Hourly' graph (1 Minute Average)"),"\n", $q->img({src => "$url=hourly", alt => "hourly-graph", getpngsize("$pngdir$log-hourly.png")} ), "\n"; }
Изменена конфигурация Apache для выполнения скрипта CGI. (/Etc/httpd/conf.d/mrtg.conf)
Вне тега добавить;
AddHandler cgi-script .cgi
Внутри тега добавить;
Options +ExecCGI
Перезапустите Apache и перейдите на новую страницу индекса MRTG.
Если вы используете внешний интерфейс Routers2 для MRTG/RRD, то он дает возможность создавать 4-часовой график, если вы собираете данные с интервалом в 1 минуту. При стандартном разрешении 4h - это ширина графика с 1 пикселем на точку данных. Вы можете включить это в файле routers2.conf.
После некоторых изменений у меня сработали следующие патчи: http://www.loplop.net/projects/1minMRTG/