MRTG

| | コメント(0) | トラックバック(13)

・MRTG: The Multi Router Traffic Grapher
http://www.mrtg.org/
本家

・MRTG: The Multi Router Traffic Grapher (日本語)
http://www.mrtg.jp/doc/
e2j@mrtg.jpさんによる日本語の翻訳。

MRTG(Multi Router Traffic Grapher)はネットワーク負荷監視ツールです。
ネットワークトラフィックの状態をグラフ画像入りのHTMLにして出力します。
Perlで書かれています。
ルーターなどのSNMPが有効な機器を対象に使うことが多いっぽい。
トラフィック以外にもメモリやHDD、またはパソコンに関係ないものでもグラフ化できます。
一定時間おきに実行して、その平均や瞬時値を記録していきます。

グラフの値は2種類までと制限されています。
「MRTG」と似た機能を持つ「RRDtool」というソフトの場合、制限がかなり緩和されるそうだけど、それはまたの機会に。

インストール

perlが実行できる状態になっていること。

MRTGを「C:\mrtg\」に解凍します。

SNMPで管理できるデバイスから収集した情報を元にMRTGの設定ファイルを生成します。
詳細は、CfgMaker Manual(日本語-バージョンは古め)を参照。

以下のコマンドで設定ファイル「mrtg.cfg」を生成します。
community名とtargetを指定します。
オプションを付けてもっと詳しい設定をすることもできますが、後で「mrtg.cfg」を直接編集することにします。

C:\mrtg\bin> perl cfgmaker public@127.0.0.1 --output mrtg.cfg
--base: Get Device Info on public@127.0.0.1:
--base: Vendor Id:
--base: Populating confcache
(略)

これで、機器に存在するインタフェースをサーチし、 ifInOctets/ ifOutOctetsを測定する設定の大部分を作成してくれます。

生成した「mrtg.cfg」を編集します。

以下の行を追加します。

WorkDir: C:\mtrgdata
Language: eucjp
RunAsDaemon: yes
Interval: 5

デーモンモードで起動し、5分(デフォルトも5分)おきに実行(データを収集)します。
こうすること定期的に起動する必要がなくなります。
結果(集計ログファイルやグラフ)を「C:\mtrgdata」に出力します。
WorkDirをWEBルート以下にすればWEB経由で見れます。

次に、wperl.exeで起動して、MRTGをバックグラウンドで起動します。
「--logging」オプションで「mrtg.log」にログを出力するようにしておきます。
perl.exeで起動すると、コマンドプロンプトを閉じた時にMRTGのプロセスも一緒に終了してしまうっぽい。

C:\mrtg\bin> start /b wperl mrtg --logging mrtg.log mrtg.cfg

以下のようにするとログがイベントログに出力されます。

C:\mrtg\bin> start /b wperl mrtg --logging eventlog mrtg.cfg

ただし、

注: MRTG用のMessage DLLはありません。WindowsのイベントロッガーがMRTGがMessage DLLを持っていないという素敵なメッセージをすべてのイベントログへのエントリに関して表示します。
reference - MRTG 2.9.22設定リファレンス

とのこと。
上記引用はバージョン2.9.22の時のものですが、バージョン 2.10.13でも変わっていないようです。

ログを調べて、エラーが出ていないか確認します。

これで、5分 (mrtg.cfgのIntervalで指定した間隔) おきにデータを取得します。

MRTGを終了するには、タスクマネージャからwperl.exeのタスクをkillします。(でいいのかな?)

コンピュータを起動した時に実行する

この方法だとコンピュータを再起動したときに、毎回ログインしてMRTGを手動で起動する必要があります。
起動を自動化する方法はいくつもあります。

例えば、

  • スタートアップメニューにショートカットを登録しておく。
    ただし、Windowsにログインしないと起動しません。
  • 「コントロールパネル」>「タスク」を利用する。
  • 「FireDaemon」のようなサービス化ツールをつかう
    MRTG + FireDaemon HOWTOを参照。
  • etc...

SEE:
Windowsでのプロセスの自動実行方法 (このblogより)

今回は「コントロールパネル」>「タスク」を利用する方法にしました。

  1. 「コントロールパネル」>「タスク」を開きます。
  2. 「右クリック」>「新規」>「タスク」をします。
  3. 名前を「MRGT」に変更します。
  4. 作成した「MRGT」をダブルクリックして、以下の様に設定します。
    「タスク」タブ
    • 「実行するファイル名」に「C:\Perl\bin\wperl.exe mrtg --logging mrtg.log mrtg.cfg」を入力
    • 「開始」に「C:\mrtg\bin\」を入力
    MRGTをタスクに設定する
    「スケジュール」タブ
    • 「タスクのスケジュール」に「システム起動時」を選択します
    「設定」タブ
    • すべてのチェックをはずす?

自分でスクリプトを書く場合

「Target」キーワード用のスクリプトを書く場合、以下のようなフォーマットで出力するようにします。

1つめの値(数値)
2つめの値(数値)
uptime(監視対象の稼働時間を示す人間が読めるフォーマットのストリング。表示にのみ使用してるらしい)
ホスト名(表示にのみ使用してるらしい)

(2006/08/29 追記 ここから)
Linux系でuptimeを求めるshスクリプトはこんな感じかな

UPTIME=`uptime | awk -F"up " '{print $2;}' | awk -F", " '{if (/day/) {print $1" "$2;} else {print $1;}}'`
echo $UPTIME

Linux系でホスト名を求めるには、「hostname」コマンドで良いし。
(2006/08/29 追記 ここまで)

MRTGは、取得した今回取得した値と前回取得した値の差を求め、前回と今回の時間差で割ることで1秒当たりの平均値を求めています。(デフォルト)
積算値を取得できる時に使います。
cfgファイルの「Options」キーワードに「gauge」を指定した場合は、取得した値をそのまま表示できます。
ディスクの空き容量や、プロセッサの負荷、温度などを監視する時に使います。
「absolute」ってのもあります。

cnfファイルからインデックスファイルを作成する (2004/07/19 追記)

cnf ファイルに複数の統計情報を設定すると、それぞれの統計情報が別ファイル(html形式)になり見にくいです。
そこで、各統計情報へのリンクと1日のグラフを表示するインデックスを作成します。

# 今まで知らなくて、自分で作ってた。。

C:\mrtg\bin> perl indexmaker mrtg.cfg > C:\mtrgdata\index.html

私の場合は、グラフ画像を横長にしているので、indexページで画像を縦1列に並べたい。
そんな時は、「--columns」オプションを使ってこんな感じにします。

C:\mrtg\bin> perl indexmaker --columns 1 mrtg.cfg > C:\mtrgdata\index.html

リンク

・nt-guide - MRTG 2.9.22をWindows NTで使うためのガイド (日本語)
http://www.mrtg.jp/doc/nt-guide.html
Windowsにインストールする時の資料。

・@IT:MRTGによるサーバ監視システムの構築(2/3)
http://www.atmarkit.co.jp/flinux/rensai/root08/root08b.htmlhttp://www.atmarkit.co.jp/flinux/rensai/root08/root08b.html

・MRTGによるネットワーク監視
http://www.iin.gr.jp/~taka/server/mrtg.html
UNIXでのインストール/設定方法

・MRTG for Intrusion Detection with IIS 6 (SecurityFocus)
http://www.securityfocus.com/infocus/1721
「SNMP」「WMI/VBScript」「LogParser/Batch File」を使ってIISサーバの侵入検知をしましょうという話。
サンプルあります。

・MRTGとは (フリーソフトウェアによるネットワーク監視)
http://www.soi.wide.ad.jp/iw2001/slides/14/14-2/index_27.html
「Internet Week 2001」の発表資料。
Targetの指定法が詳しいです。
「NEXT」をクリックしてどんどん読み進めていきましょう。

・SNMP4tPC - MRTG Support Page
http://www.snmp4tpc.com/mrtg.htm
cfgファイルのサンプル

・MRTG Repository (Somix - Support)
http://www.somix.com/support/mrtg_repository.php
MRTG用のレポジトリ(cfgファイル)

・Windows Instrumentation Examples
http://snmpboy.msft.net/default.aspx
WMIとSNMPで値を取得した場合の比較。
このmrtg.cfgを使ってるのかな。
vbsスクリプトが公開されてない(?)のが残念

・docs/mrtg - PukiWiki
http://iroha.club.kyutech.ac.jp/~script/wiki/pukiwiki.php?docs%2Fmrtg
こうすると、こうなるそうです。

トラックバック(13)

このブログ記事を参照しているブログ一覧: MRTG

このブログ記事に対するトラックバックURL: http://kinshachi.ddo.jp/mt/mt-tb.cgi/239

» MRTGでCPU Load Averageを監視(GARGOUILLE)~のトラックバック

/etc/snmp/snmp.confに下記を追加 load 12 14 14 ... 続きを読む

» MRTG 導入メモ(1)(あるまじろの巣)~のトラックバック

ネットワーク負荷やらCPU負荷を常時計測したかったので、MRTGというのを ノー... 続きを読む

» 1660s music (1660s music )~のトラックバック

Bag inflate 続きを読む

» Hindu baby names girl (Dr naylor )~のトラックバック

Hindu baby names girl 続きを読む

» Africa kampala (Hindu baby names girl )~のトラックバック

Hindu baby names girl 続きを読む

» System of a down posters (Neolithic stone )~のトラックバック

The documentary songlist 続きを読む

» City map of mississauga ontario(1953 triumph motorcycle )~のトラックバック

System of a down posters 続きを読む

» Neolithic stone(Car of the 1800s )~のトラックバック

Walking shoes for women 続きを読む

» Symbiotic relationship examples (Dad poem single )~のトラックバック

Central in marketing oregon 続きを読む

» The documentary songlist (Neolithic stone )~のトラックバック

The documentary songlist 続きを読む

» Snapper mower engine (Illinois state university theatre)~のトラックバック

Scandinavan airlines 続きを読む

» Snapper mower engine (Sex position for large people )~のトラックバック

Scandinavan airlines 続きを読む

» Back to sleep age (Rustic pine furniture arizona)~のトラックバック

Double room to rent 続きを読む

コメントする


画像の中に見える文字を入力してください。

このブログ記事について

このページは、ikeが2004年3月30日 12:56に書いたブログ記事です。

ひとつ前のブログ記事は「MS SQL Server/MSDE の認証」です。

次のブログ記事は「古いエントリの変更履歴 (2004/03)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

最近のコメント

Powered by Movable Type 4.261