web-dev-qa-db-ja.com

MRTG + RRDToolの時間別グラフ

MRTG + RRDtoolを使用して、snmpを介してCisco Catalyst2950の各スイッチポートの帯域幅を監視しています。 MRTGは1時間ごとのグラフを生成できますか? RRDtoolを使用すると、より詳細なグラフを取得するために間隔を1分に設定できましたが、最短の時間枠は「日次」グラフ(5分平均)であり、画像が小さすぎます。

私がこれから抜け出そうとしていること:すべてのスイッチポートを視覚的に監視し、ポートのトラフィックが異常に多くなり始めた時期をリアルタイムで知ることができるようにしたいと考えています(1分間隔のsnmpポーリング、生成されたグラフ、およびページが更新されました)。

4
SuperMicro321

rrdgraph コマンドラインツールを使用して、MRTGが生成するrrdファイルを使用してグラフを生成できます。 rrdファイルを調べて、データが統合されるまでの時間を確認できます。これを1日後に行うと、目的の解像度が失われます。だから基本的に私はMRTGがrraテンプレートとrrdグラフテンプレートを保存する場所に行きます。

少し時間がかかるかもしれませんが、RRDはMRTG、Cacti、Muninなどのバックエンドグラフライブラリ/ツールセットであるため、学ぶ価値があります。 ここのサーバー障害ブログ で独自のグラフを作成するときに実行したいことがいくつかあることについてブログを書きました。

うまくいけば、MRTGに精通している誰かが、MRTGに関する特定の問題について詳細を教えてくれるでしょう。

3
Kyle Brandt
  1. RRDtoolを使用するようにMRTGを変更 mrtg.cfgのLogFormat行を追加または変更し、必要に応じてパスを定義します。間隔を1分に減らします。

    LogFormat: rrdtool
    Interval: 1
    PathAdd: /path/to/rrdtool/bin/
    LibAdd: /path/to/rrdtool/lib/Perl/
    
  2. Cronジョブを毎分実行するように変更します。 (必要に応じて編集してください。)

    vim /etc/cron.d/mrtg
    
  3. インデックスを推奨されるPerlCGIスクリプトの1つに変更します。これにより、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";
    }
    
  4. CGIスクリプトを実行するようにApache構成を変更しました。 (/etc/httpd/conf.d/mrtg.conf)

    タグの外に追加します。

    AddHandler cgi-script .cgi
    

    タグの内側に追加します。

    Options +ExecCGI
    
  5. Apacheを再起動し、新しいMRTGインデックスページを参照します。

2
Aaron Copley

MRTG/RRDにRouters2フロントエンドを使用している場合、1分間隔でデータを収集していれば、4時間のグラフを作成する機能が付属しています。標準解像度では、4hはデータポイントあたり1ピクセルのグラフ幅です。これは、routers2.confファイルで有効にできます。

0
Steve Shipway