« MRTG: The Multi Router Traffic Grapher | メイン | MT-Blacklistでコメントスパムをブロック数を見る »

December 23, 2004

MRTGでインターネット上の速度をグラフにする

なにやら探してみると、mrtg-ping-probe というモジュールをいれると、ping させた値を MRTG で表示できることが判明(MRTG Version 2.x以降?)。

真・講習会転倒日記に簡単なインストール方法が書かれていたのでやってみます(注:上記サイトでは Debian での解説ですが、Redhat も同じみたい)。

まず必要なファイルを手に入れます。
pwo.deというサイトのトップページにあるmrtg-ping-probe というリンクをクリックして、ftp に接続します。
その中にある、新しそうな tar.gz を wget かなんかでダウンロードします。
私の場合は最初から root 権限で作業しました。

$ su -
passwd:(表示されない)
# pwd
/root
# wget ftp://ftp.pwo.de/pub/pwo/mrtg/mrtg-ping-probe/mrtg-ping-probe-2.2.0.tar.gz

今回私が使ったのは、mrtg-ping-probe-2.2.0.tar.gz です。もちろん新しいのが出ていたら新しいのでもかまいません。
ダウンロードしたら、解凍します。

# tar xvzf mrtg-ping-probe-2.2.0.tar.gz


解凍したら、とりあえずあるべきディレクトリに移動させます。一緒に名前も変更。

# mv ./mrtg-ping-probe-2.2.0.tar.gz /usr/local/mrtg-ping-probe


権限を変更し、cfg ファイルの生成をします。
下の例では、aaa.bbb.ccc.ddd という IP アドレスを持つサーバに ping をしてグラフを生成します。> test.cfg は、生成したい cfg ファイル名です。何でもかまいません。

# chmod 755 mrtg-ping-cfg
# mrtg-ping-cfg aaa.bbb.ccc.ddd 'ping aaa.bbb.ccc.ddd' > test.cfg

真・講習会転倒日記と同じエラーがでました!
エラーを回避するために、mrtg-ping-probe ディレクトリにある mrtg-ping-cfg を vi で開きます。
編集する前にバックアップしておくのを忘れずに。

# cp mrtg-ping-cfg mrtg-ping-cfg.backup
# vi mrtg-ping-cfg

一番先頭にある /bin/ksh を自分の端末に合わせたものに変更します。私の場合は /bin/bash

#!/bin/ksh

#!/bin/bash

終わったら、保存して終了させます。

:wq


mrtg-ping-probe に perl のパスが書かれているので、同じように編集します。
元々下記のようになっていたので、自分のサーバに合わせたものに変更します。

#!/usr/local/bin/perl

以下のように変更します。わからない場合は
# which perl
とやると、パスが表示されます。

#!/usr/bin/perl


もう一度 cfg ファイルの生成をします。

# mrtg-ping-cfg aaa.bbb.ccc.ddd 'ping aaa.bbb.ccc.ddd' > test.cfg

生成した cfg ファイルを vi で開きます。

# vi test.cfg

開いたら、以下の部分を探して、自分が mrtg-ping-probe をインストールしたパスに変更します。

Target[aaa.bbb.ccc.ddd]: `/usr/local/mrtg-ping-probe aaa.bbb.ccc.ddd`


私の場合は、以下のように変更。
Target の [] の中身は、書き出される html ファイル名となるので、自分が html ファイル名にしたい名称をつけます。

Target[ping-ix01]: `/usr/local/mrtg-ping-probe/mrtg-ping-probe aaa.bbb.ccc.ddd`


また、この cfg ファイルの書式は、単体では動かないものと思われます。
mrtg が動作している人間が行うものということを前提にしているためで、既にネットワーク負荷や CPU 負荷などを表示させている cfg ファイルに追記すると動作するでしょう。

私の場合は、ネットワーク負荷・CPU 負荷・メモリ使用率・ハードディスク使用率を別々のファイルで使っているため、もう少し記述します。
まず、私が追記したものを下記に記します。

# html ファイルを実際書き出すパスを指定します。
WorkDir: /home/ユーザー名/public_html/mrtg

#html ファイルを生成したときのフッタに表示される MRTG のバナー?でつかう画像のパスです。
IconDir: /mrtg/icons/

#html ファイルの文字コードを指定します。
Language:eucjp

#ping-ix01.html を書き出したいディレクトリを指定します。
#mrtg/ping に書き出したい場合は↓です
Directory[ping-ix01]: ping

#標準では、gauge しか書かれていません。
#このままでは、グラフの時間進行方向が右から左になります。
#反対にしたい場合は、growright を指定します。
Options[_]: gauge,growright


ちゃんと動くかどうか、実際に動かしてみましょう。

# /usr/local/mrtg-2/bin/mrtg /usr/local/mrtg-png-probe/test.cfg

先頭に、Rateup WARNING: と書かれたエラーは今までの過去のログデータや画像ファイルがないよー!といっているだけです。
1回目・2回目はでますが、正常に動作している証拠です。
3回目以降もエラーが続く場合は、エラーメッセージをよく読んで設定をしなおす必要があります。


ちゃんと html ファイルとして書き出されましたか?

確認ができたら、crontab で定期的に解析するようにしましょう。ちなみに ping の相手に迷惑がかからないような単位で指定します。

# vi /etc/crondab

0,15,30,45 * * * * root /root/usr/local/mrtg-2/bin/mrtg /usr/local/mrtg-s/cfg/test.cfg

これで時間をおけば、グラフがぐにゃぐにゃ動くようになるでしょう。

投稿者 Kuro : December 23, 2004 05:46 PM

トラックバック

このエントリーのトラックバックURL:
http://www.kuroduction.com/blog/mt/mt-tb.cgi/389

コメント

コメントしてください




保存しますか?