自宅サーバに初心者が挑戦します!
トップ >>  監視とMRTG 

6-4. MRTGのインストール(UNIX)
April 21, 2006:更新

 MRTGをUNIXにインストールします。MRTGはSNMPをベースに動くので、MRTGをインストールする前にSNMPをインストールしておく必要があります。SNMPのインストールをまだしていない場合には、
  Net-SNMPのインストール(UNIX) もしくは SNMPのインストール(Windows) を参考にしてインストールを行ってください。



■MRTGのインストール

 いつものようにyumを使ってインストールしたいと思います。MRTGにはいくつかの関連するパッケージを必要だったりしますが、それもyumを使って同時にインストールしてしまってください。関連パッケージがインストールされていない場合には、yum からインストールするように促されます。指示に従ってインストールを行ってください。

# yum install mrtg

 MRTGがインストールされたか確認するには、rpm -aq | grep mrtg か、実際に"mrtg" コマンドを探してみてください。



■MRTGの設定
 
 MRTGが動作するには、MRTG用の設定ファイルが必要です。設定ファイルを作成するには、様々な方法がありますが、ここでは以下を条件として作成してみたいと思います。

・ネットワークインターフェースのトラフィックをbit単位でモニタする
・MRTGの設定ファイルは、/etc/mrtg/mrtg.cfg とする。
・MRTGを公開するWEBのディレクトリは、/etc/home/www/mrtg とする。
・自宅サーバのアドレスは 192.168.1.1 とする。
SNMPのコミュニティ名は、「hogehoge」とする。

 早速MRTGの設定ファイルを作成します。MRTGには便利な cfgmaker という便利なコマンドがついています。これを使うと簡単に設定ファイルを作成することができます。

# cfgmaker --ifref=descr --ifdesc=descr hogehoge@192.168.1.1 > /etc/mrtg/mrtg.cfg

 エラー出なければ大丈夫だと思います。次にMRTGの設定ファイルの中身を一部変更します。

# vi /etc/mrtg/mrtg.cfg
 vi の使い方については、「vi エディタの使い方」を参考にして下さい。

 変更を加える箇所は以下のとおりです。

# WorkDir: /home/http/mrtg
WorkDir: /home/www/mrtg
(↑WEB公開用のディレクトリの変更)

Options[_]: growright, bits
(↑コメントアウトする)

 これで、MRTGの設定は完了です。



■MRTGを実行する

 MRTGはデーモンとして自動的に結果を吐き出してくれません。cronなどで設定をして、定期的に結果を吐き出させる必要があります。MRTGの結果を閲覧するメディアはWEBになります。

 初めて設定をする場合、MRTGがエラーを出します。まずはその処理を手動で行ってしまいます。2回ほど、「mrtg /etc/mrtg/mrtg.cfg 」というコマンドを叩きます。MRTGはこれまで保存してきたデータを元に新たなデータを作りますが、初回には以前のデータが存在しないためにエラーを吐き出します。

# mrtg /etc/mrtg/mrtg.cfg
Rateup WARNING: /usr/bin/rateup could not read the primary log file for 192.168.1.1_eth0
Rateup WARNING: /usr/bin/rateup The backup log file for 192.168.1.1_eth0 was invalid as well
Rateup WARNING: /usr/bin/rateup Can't remove 192.168.1.1_eth0.old updating log file
Rateup WARNING: /usr/bin/rateup Can't rename 192.168.1.1_eth0.log to 192.168.1.1_eth0.old updating log file

# mrtg /etc/mrtg/mrtg.cfg

Rateup WARNING: /usr/bin/rateup Can't remove 192.168.1.1_eth0.old updating log file

 これで、cronに追加なのですが、Fedora Coreの場合、MRTGをインストールした段階でCron用の設定ファイルが既に実行されているようです。cron用のファイルは、/etc/cron.d/mrtg にあります。

# cat /etc/cron.d/mrtg
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok

 まぁ、これで良いでしょう。ちなみに、これで動作しなかったらCronデーモンを再起動してください。再起動は以下の手順で行います。

# /etc/init.d/crond restart

 しばらくして、MRTGのWEB用のディレクトリ(ここでは、/home/www/mrtg)に.pngなどの画像ファイルができていればOKです。


■WEBの設定

 MRTGで見れる結果はWEBで表示されるのですが、Fedoreなど最近のApacheのコンフィグを利用する場合には少し気をつけなくてはならない点があります。じつは、Apacheの設定ファイルがアプリケーションによって、外部に切り離されています。実際にApacheが自分で設定ファイルを読むときにはこれらをincludeしていきます。

 つまり、本体の設定ファイルをいじっただけでは、MRTGに代表されるアプリケーション用の設定がなされません。MRTGの場合、設定は /etc/httpd/conf.d/mrtg.conf を編集します。

# vi /etc/httpd/conf.d/mrtg.conf
Alias /mrtg /home/www/mrtg
(↑ここをMRTG用のWEBディレクトリにする)
<Location /mrtg>
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.1.
(↑ここを追加)
Allow from ::1
</Location>

 IPアドレスなど環境による変数は、自由に変更して下さい。この設定を有効にするには、apacheもしくはhttpデーモンを再起動する必要があります。

# /etc/init.d/httpd restart

 また、最後にindex用のHTMLを作成します。

# indexmaker /etc/mrtg/mrtg.cfg > /home/www/mrtg/index.html

 これで、ブラウザから http://192.168.1.1(サーバのアドレス)/mrtg/ にアクセスすると、MRTGの結果を見ることができます。

 もちろんWEBサーバーが立ち上がっている必要があります。本サイト内の、Apacheのインストール もしくは WEBサーバー関連全般をご参照下さい。





トップ >>  監視とMRTG