LS-GLをdebian化してみました。
複雑な手順を踏まなくてもここから簡単にdebian化が可能です。
FreeLink
http://buffalo.nas-central.org/index.php/FreeLink_for_the_Linkstation_Pro
※debianに関する設定は色々なページで詳しく紹介されているのでここでは省略します。
一つだけ設定を紹介します。
FreeLinkn特有の設定で/etc/default/micro_evtdという設定ファイルがあります。
この中に何度でFanを回転させるかを設定できます。
FreeLinkのデフォルトでは40度に設定されているので私は35度に再設定しました。
LS-GLをdebian化した時にWebminをインストールして設定等はある程度出来るようになりました。
(従来のようにコンソールから設定した方が楽なものも当然あります)
さて、サーバーステータスを見たいのだけれど良い方法はないのか・・・
色々と調べた結果MRTGというWebでサーバーステータスを表示出来るサービスを発見!
そしてMRTGをインストール、設定することになりました。
これがMRTG動作のサンプル画面です。

複雑な手順を踏まなくてもここから簡単にdebian化が可能です。
FreeLink
http://buffalo.nas-central.org/index.php/FreeLink_for_the_Linkstation_Pro
※debianに関する設定は色々なページで詳しく紹介されているのでここでは省略します。
一つだけ設定を紹介します。
FreeLinkn特有の設定で/etc/default/micro_evtdという設定ファイルがあります。
この中に何度でFanを回転させるかを設定できます。
FreeLinkのデフォルトでは40度に設定されているので私は35度に再設定しました。
LS-GLをdebian化した時にWebminをインストールして設定等はある程度出来るようになりました。
(従来のようにコンソールから設定した方が楽なものも当然あります)
さて、サーバーステータスを見たいのだけれど良い方法はないのか・・・
色々と調べた結果MRTGというWebでサーバーステータスを表示出来るサービスを発見!
そしてMRTGをインストール、設定することになりました。
これがMRTG動作のサンプル画面です。

2008,01,26 Sat 12:18
さっそくMRTGをインストール。
apt-get apdate
apt-get install mrtg
続いてsnmpをインストール。
apt-get install net-snmp
インストールが無事完了したらcfgmakerコマンドでMRTG自動生成コンフィグを作成します。
今回は/etc/mrtgにmrtg.cfgという名前で作成しました。
/usr/bin/cfgmaker --output=/etc/mrtg/mrtg.cfg public@localhost
動作設定はこのコンフィグファイルに手を入れていくことになります。
まずは動かしてみるということで軽く手を入れてみます。
変更点は以下です。
# for Debian
WorkDir: ここにWebページ表示対象となるパスを表示します。(/var/wwwなど)
Language: UTF-8(eucjpなど環境に合わせてください)
----------------
とりあえずこれで保存して動かしてみます。
env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
最初の実行ではエラーになると思います。
これは過去データがまだ作られていないので起きるエラーです。
無視してあと2回実行します。(計3回実行でエラーは出なくなると思います)
うまく行ってれば設定ファイルで指定したディレクトリにファイルが作成されます。
htmlファイルをブラウザ経由で開けば無事ネットワークのトラフィックページが表示されるはずです。

apt-get apdate
apt-get install mrtg
続いてsnmpをインストール。
apt-get install net-snmp
インストールが無事完了したらcfgmakerコマンドでMRTG自動生成コンフィグを作成します。
今回は/etc/mrtgにmrtg.cfgという名前で作成しました。
/usr/bin/cfgmaker --output=/etc/mrtg/mrtg.cfg public@localhost
動作設定はこのコンフィグファイルに手を入れていくことになります。
まずは動かしてみるということで軽く手を入れてみます。
変更点は以下です。
# for Debian
WorkDir: ここにWebページ表示対象となるパスを表示します。(/var/wwwなど)
Language: UTF-8(eucjpなど環境に合わせてください)
----------------
とりあえずこれで保存して動かしてみます。
env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
最初の実行ではエラーになると思います。
これは過去データがまだ作られていないので起きるエラーです。
無視してあと2回実行します。(計3回実行でエラーは出なくなると思います)
うまく行ってれば設定ファイルで指定したディレクトリにファイルが作成されます。
htmlファイルをブラウザ経由で開けば無事ネットワークのトラフィックページが表示されるはずです。

2008,01,26 Sat 13:03
次はCPU、メモリの監視設定です。
設定内容の細かい意味はここでは省略します(笑)
※検索すれば設定値の意味は出てくると思います。
以下作成したコンフィグファイルに追加。
-----------------
### CPU ###
Options[cpu]: gauge,absolute,integer,growright,nopercent
MaxBytes[cpu]: 100
YLegend[cpu]: CPU Load Average (%)
Legend1[cpu]: 1 min CPU Load Avalage
Legend2[cpu]: 5 min CPU Load Avalage
LegendI[cpu]: 1min
LegendO[cpu]: 5min
ShortLegend[cpu]: percent (%)
Unscaled[cpu]: ymwd
Target[cpu]: .1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:public@localhost
Title[cpu]: CPU Load Average for localhost
PageTop[cpu]: <H1>CPU Load Average for localhost</H1>
### memory ###
Options[memory]: gauge,absolute,growright
YLegend[memory]: Memory Used(Bytes)
ShortLegend[memory]: (Bytes)
Legend1[memory]: Real Memory
Legend2[memory]: Swap Memory
LegendI[memory]: Real
LegendO[memory]: Swap
Unscaled[memory]: dwmy
kMG[memory]: k,M,G,T,P
Target[memory]: 1.3.6.1.4.1.2021.4.6.0&1.3.6.1.4.1.2021.4.4.0:public@localhost
MaxBytes1[memory]: 131072
MaxBytes2[memory]: 131072
Title[memory]: Memory Used for localhost
PageTop[memory]: <H1>Memory Used for localhost</H1>
-----------------------
これでまた3回実行すればCPU、メモリのhtmlも作成されているはずです。


設定内容の細かい意味はここでは省略します(笑)
※検索すれば設定値の意味は出てくると思います。
以下作成したコンフィグファイルに追加。
-----------------
### CPU ###
Options[cpu]: gauge,absolute,integer,growright,nopercent
MaxBytes[cpu]: 100
YLegend[cpu]: CPU Load Average (%)
Legend1[cpu]: 1 min CPU Load Avalage
Legend2[cpu]: 5 min CPU Load Avalage
LegendI[cpu]: 1min
LegendO[cpu]: 5min
ShortLegend[cpu]: percent (%)
Unscaled[cpu]: ymwd
Target[cpu]: .1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:public@localhost
Title[cpu]: CPU Load Average for localhost
PageTop[cpu]: <H1>CPU Load Average for localhost</H1>
| System: | localhost |
| Maintainer: | Root |
| Ip: | 192.168.0.0 |
### memory ###
Options[memory]: gauge,absolute,growright
YLegend[memory]: Memory Used(Bytes)
ShortLegend[memory]: (Bytes)
Legend1[memory]: Real Memory
Legend2[memory]: Swap Memory
LegendI[memory]: Real
LegendO[memory]: Swap
Unscaled[memory]: dwmy
kMG[memory]: k,M,G,T,P
Target[memory]: 1.3.6.1.4.1.2021.4.6.0&1.3.6.1.4.1.2021.4.4.0:public@localhost
MaxBytes1[memory]: 131072
MaxBytes2[memory]: 131072
Title[memory]: Memory Used for localhost
PageTop[memory]: <H1>Memory Used for localhost</H1>
| System: | localhost |
| Maintainer: | Root |
| Ip: | 192.168.0.0 |
-----------------------
これでまた3回実行すればCPU、メモリのhtmlも作成されているはずです。


2008,01,26 Sat 13:33
ここまでは比較的簡単に出来ると思います。
次にディスクの使用率監視設定を行います。
と、その前にディスク使用率上昇、FAN回転数上昇、温度上昇が
ある一定の値を超えた場合に管理者にメールするスクリプトを作成します。
※このスクリプトを動かすためにはmailutils、exim4のパッケージをインストールし
mailコマンドでメール送信が出来るように設定する必要があります。
/usr/local/mrtg/binにmail_warning.plというPerlスクリプトを作成します。
(権限などは動くように変更してください)
以下mail_warning.plの内容
---------------------
#!/usr/bin/perl --
$to = $ENV{'EMAIL'};
$from = "mrtguser@hiro7216.dyndns.org";
$subject = "'[ Warning ] $ARGV[0] on $ENV{'HOST'}'";
open(MAIL,"| mail -s $subject $to");
print MAIL "From: $fromn";
print MAIL "To: $ton";
print MAIL "Subject: $subjectnn";
print MAIL `date` . "$ARGV[0] が閾値 を超えました。n";
print MAIL "------------------------------------------------- n";
print MAIL " 閾値 : $ARGV[1] n";
print MAIL " 現在の値 : $ARGV[2] n";
print MAIL "------------------------------------------------- nn";
print MAIL "$ENV{'URL'} n";
foreach(@ARGV){
print MAIL $_;
}
close(MAIL);
---------------------
これで警告メール送信スクリプトの準備が出来ました。
mrtg.cfgにメール送信の為の共通オプション設定を書き加えます。
共通設定ですのでネットトラフィックやCPU監視設定よりも先に書くことになります。
---------------------
SetEnv[^]: HOST="localhost"
ThreshDir: 警告ファイルを出力するパス/www/
ThreshProgI[_]: /usr/local/mrtg/bin/mail_warning.pl
ThreshProgO[_]: /usr/local/mrtg/bin/mail_warning.pl
---------------------
これで設定した値を超えた値を検出した場合にメールを送信する設定が終わりました。
次にディスクの監視を行うために監視したいパーティションがマウントされているパスをsnmpdに設定します。
/etc/snmp/snmpd.confというsnmpdを設定するコンフィグファイルがあるので
その一番最後に監視したいパーティションにあるパスを指定します。
---------------------
disk /
disk /mnt/disk1
---------------------
設定後に/etc/init.d/snmpd restartとコマンドでsnmpデーモンを再起動してください。
再起動後に指定したディスクの情報をsnmpから取得することが出来るように成します。
いよいよmrtg.cfgにディスク監視用の設定を書き込みます。
---------------------
Options[df]: growright,gauge
ThreshMaxI[df]: 80
ThreshMaxO[df]: 80
SetEnv[df]: EMAIL="メール送信先アドレス"
URL="http://ディスク監視ページのアドレス/df.html"
MaxBytes[df]: 100
YLegend[df]: Disk Usage
ShortLegend[df]: %
LegendI[df]:rootfs
LegendO[df]:/mnt/disk1
Target[df]: .1.3.6.1.4.1.2021.9.1.9.1&.1.3.6.1.4.1.2021.9.1.9.2:public@localhost:
Title[df]: Disk Usage "rootfs" and "/mnt/disk1"
PageTop[df]: <H1>Disk Usage "rootfs" and "/mnt/disk1" on localhost</H1>
---------------------
今回の設定ではディスク使用率が80%を超えたら警告メールが送信されるようになっています。
%を変更するには
ThreshMaxI[df]: 80
ThreshMaxO[df]: 80
この数値を変更してください。
設定した数値の%を超えるとメール送信されるようになります。
mrtgをまた3回実行すればディスク監視用のhtmlファイルが作成され確認できると思います。

次にディスクの使用率監視設定を行います。
と、その前にディスク使用率上昇、FAN回転数上昇、温度上昇が
ある一定の値を超えた場合に管理者にメールするスクリプトを作成します。
※このスクリプトを動かすためにはmailutils、exim4のパッケージをインストールし
mailコマンドでメール送信が出来るように設定する必要があります。
/usr/local/mrtg/binにmail_warning.plというPerlスクリプトを作成します。
(権限などは動くように変更してください)
以下mail_warning.plの内容
---------------------
#!/usr/bin/perl --
$to = $ENV{'EMAIL'};
$from = "mrtguser@hiro7216.dyndns.org";
$subject = "'[ Warning ] $ARGV[0] on $ENV{'HOST'}'";
open(MAIL,"| mail -s $subject $to");
print MAIL "From: $fromn";
print MAIL "To: $ton";
print MAIL "Subject: $subjectnn";
print MAIL `date` . "$ARGV[0] が閾値 を超えました。n";
print MAIL "------------------------------------------------- n";
print MAIL " 閾値 : $ARGV[1] n";
print MAIL " 現在の値 : $ARGV[2] n";
print MAIL "------------------------------------------------- nn";
print MAIL "$ENV{'URL'} n";
foreach(@ARGV){
print MAIL $_;
}
close(MAIL);
---------------------
これで警告メール送信スクリプトの準備が出来ました。
mrtg.cfgにメール送信の為の共通オプション設定を書き加えます。
共通設定ですのでネットトラフィックやCPU監視設定よりも先に書くことになります。
---------------------
SetEnv[^]: HOST="localhost"
ThreshDir: 警告ファイルを出力するパス/www/
ThreshProgI[_]: /usr/local/mrtg/bin/mail_warning.pl
ThreshProgO[_]: /usr/local/mrtg/bin/mail_warning.pl
---------------------
これで設定した値を超えた値を検出した場合にメールを送信する設定が終わりました。
次にディスクの監視を行うために監視したいパーティションがマウントされているパスをsnmpdに設定します。
/etc/snmp/snmpd.confというsnmpdを設定するコンフィグファイルがあるので
その一番最後に監視したいパーティションにあるパスを指定します。
---------------------
disk /
disk /mnt/disk1
---------------------
設定後に/etc/init.d/snmpd restartとコマンドでsnmpデーモンを再起動してください。
再起動後に指定したディスクの情報をsnmpから取得することが出来るように成します。
いよいよmrtg.cfgにディスク監視用の設定を書き込みます。
---------------------
Options[df]: growright,gauge
ThreshMaxI[df]: 80
ThreshMaxO[df]: 80
SetEnv[df]: EMAIL="メール送信先アドレス"
URL="http://ディスク監視ページのアドレス/df.html"
MaxBytes[df]: 100
YLegend[df]: Disk Usage
ShortLegend[df]: %
LegendI[df]:rootfs
LegendO[df]:/mnt/disk1
Target[df]: .1.3.6.1.4.1.2021.9.1.9.1&.1.3.6.1.4.1.2021.9.1.9.2:public@localhost:
Title[df]: Disk Usage "rootfs" and "/mnt/disk1"
PageTop[df]: <H1>Disk Usage "rootfs" and "/mnt/disk1" on localhost</H1>
| System: | localhost |
| Maintainer: | Root |
| Ip: | 192.168.0.0 |
---------------------
今回の設定ではディスク使用率が80%を超えたら警告メールが送信されるようになっています。
%を変更するには
ThreshMaxI[df]: 80
ThreshMaxO[df]: 80
この数値を変更してください。
設定した数値の%を超えるとメール送信されるようになります。
mrtgをまた3回実行すればディスク監視用のhtmlファイルが作成され確認できると思います。

2008,01,26 Sat 13:51
いよいよLinkStation特有の設定であるFAN回転数と温度の監視に入ります。
まずmrtgに結果を返してあげるPerlスクリプトを作成します。
まずFANの回転数を取得するスクリプトです。
/usr/local/mrtg/binにmon_fan.plという名前で作成します。
-----------------------
#!/usr/bin/perl --
$rpm = readpipe('/usr/local/sbin/miconapl -a fan_get_speed');
$rpm =~ s/#[miconapl.fan_get_speed]sfan_rpm=//;
print "$rpm" . "2640nnlocalhostn";
-----------------------
このスクリプトは以下のような内容の結果を出力します。
実際のFANの回転数
2640
(空白行)
localhost
この結果をmrtgが受け取ることで二つのグラフのが完成します。
2640の部分は0でも構いません。
この場合はグラフを見る場合の目安線とする為にこの値にしています。
スクリプトを作成したら適切な権限を与えて
/usr/local/mrtg/bin/mon_fan.plを実行してみてください。
FANの回転数等が表示されるはずです。
次に同じように温度を出力するスクリプトを作成します。
/usr/local/mrtg/binにmon_temp.plという名前で作成します。
-----------------------
#!/usr/bin/perl --
$temp = readpipe('/usr/local/sbin/miconapl -a temp_get');
$temp =~ s/#[miconapl.temp_get]stemp=//;
print "$temp" . "55nnlocalhostn";
-----------------------
内容は基本的にFANと同じで温度に変わっただけです。
スクリプトを作成しましたのでmtrg.cfgにFAN、温度監視の設定を追加します。
-----------------------
Options[fan]: gauge,growright,nopercent,unknaszero
MaxBytes[fan]: 3700
ThreshMaxI[fan]: 3000
SetEnv[fan]: EMAIL="メールの送信先アドレス"
URL="http://ウェブアクセスアドレス/fan.html"
YLegend[fan]: Fan RPM
ShortLegend[fan]: rpm
LegendI[fan]:RPM
LegendO[fan]:fastline
Unscaled[fan]: ymwd
Target[fan]: `/usr/local/mrtg/bin/mon_fan.pl`
Title[fan]: Fan RPM Information
PageTop[fan]: <H1>Fan RPM Information on localhost</H1>
Options[temp]: gauge,growright,nopercent,unknaszero
MaxBytes[temp]: 75
ThreshMaxI[temp]: 50
SetEnv[temp]: EMAIL="メールの送信先アドレス"
URL="http://ウェブアクセスアドレス/temp.html"
YLegend[temp]: Temperature
ShortLegend[temp]: C-deg
LegendI[temp]:TEMP
LegendO[temp]:borderline
Unscaled[temp]: ymwd
Target[temp]: `/usr/local/mrtg/bin/mon_temp.pl`
Title[temp]: Temperature Information
PageTop[temp]: <H1>Temperature Information on localhost</H1>
-----------------------
またまた3回mrtgを実行すればFAN、温度監視のHTMLが作成されます。
もちろんディスク管理の時と同じで設定温度、FAN回転数が
規定値を超えれば送信先アドレスにメールが送信されます。
試しにThreshMaxI[temp]: の値を低くしてmrtgを実行してみれば
実際にメールが送られてくるか確認できます。
メールが送られてこない場合は実行ファイルの権限や
スクリプト、コンフィグファイルの内容を再確認してください。


まずmrtgに結果を返してあげるPerlスクリプトを作成します。
まずFANの回転数を取得するスクリプトです。
/usr/local/mrtg/binにmon_fan.plという名前で作成します。
-----------------------
#!/usr/bin/perl --
$rpm = readpipe('/usr/local/sbin/miconapl -a fan_get_speed');
$rpm =~ s/#[miconapl.fan_get_speed]sfan_rpm=//;
print "$rpm" . "2640nnlocalhostn";
-----------------------
このスクリプトは以下のような内容の結果を出力します。
実際のFANの回転数
2640
(空白行)
localhost
この結果をmrtgが受け取ることで二つのグラフのが完成します。
2640の部分は0でも構いません。
この場合はグラフを見る場合の目安線とする為にこの値にしています。
スクリプトを作成したら適切な権限を与えて
/usr/local/mrtg/bin/mon_fan.plを実行してみてください。
FANの回転数等が表示されるはずです。
次に同じように温度を出力するスクリプトを作成します。
/usr/local/mrtg/binにmon_temp.plという名前で作成します。
-----------------------
#!/usr/bin/perl --
$temp = readpipe('/usr/local/sbin/miconapl -a temp_get');
$temp =~ s/#[miconapl.temp_get]stemp=//;
print "$temp" . "55nnlocalhostn";
-----------------------
内容は基本的にFANと同じで温度に変わっただけです。
スクリプトを作成しましたのでmtrg.cfgにFAN、温度監視の設定を追加します。
-----------------------
Options[fan]: gauge,growright,nopercent,unknaszero
MaxBytes[fan]: 3700
ThreshMaxI[fan]: 3000
SetEnv[fan]: EMAIL="メールの送信先アドレス"
URL="http://ウェブアクセスアドレス/fan.html"
YLegend[fan]: Fan RPM
ShortLegend[fan]: rpm
LegendI[fan]:RPM
LegendO[fan]:fastline
Unscaled[fan]: ymwd
Target[fan]: `/usr/local/mrtg/bin/mon_fan.pl`
Title[fan]: Fan RPM Information
PageTop[fan]: <H1>Fan RPM Information on localhost</H1>
| System: | localhost |
| Maintainer: | Root |
| Ip: | 192.168.0.1 |
Options[temp]: gauge,growright,nopercent,unknaszero
MaxBytes[temp]: 75
ThreshMaxI[temp]: 50
SetEnv[temp]: EMAIL="メールの送信先アドレス"
URL="http://ウェブアクセスアドレス/temp.html"
YLegend[temp]: Temperature
ShortLegend[temp]: C-deg
LegendI[temp]:TEMP
LegendO[temp]:borderline
Unscaled[temp]: ymwd
Target[temp]: `/usr/local/mrtg/bin/mon_temp.pl`
Title[temp]: Temperature Information
PageTop[temp]: <H1>Temperature Information on localhost</H1>
| System: | localhost |
| Maintainer: | Root |
| Ip: | 192.168.0.1 |
-----------------------
またまた3回mrtgを実行すればFAN、温度監視のHTMLが作成されます。
もちろんディスク管理の時と同じで設定温度、FAN回転数が
規定値を超えれば送信先アドレスにメールが送信されます。
試しにThreshMaxI[temp]: の値を低くしてmrtgを実行してみれば
実際にメールが送られてくるか確認できます。
メールが送られてこない場合は実行ファイルの権限や
スクリプト、コンフィグファイルの内容を再確認してください。


2008,01,26 Sat 15:56
ここまでで一応設定等は終わりですが手動でmrtgを動かすわけにも行かないので
スクリプトを作成してcronに登録します。
また、作成したページをインデックス表示してくれるHTMLも
mrtgで提供されているスクリプトを利用して作成します。
/usr/binにexec_mrtgという名前でスクリプトを作成します。
内容はこの一行だけです。
※cronに直接登録したら動かなかったのでスクリプトにしました。
env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
実行権限も適切に与えてください。
このスクリプトをcronに登録します。
crontab -e コマンドを実行して登録してください。
*/10 * * * * /usr/bin/exec-mrtg
通常は5分間隔で実行することが多いようですが
LinkStationのCPUは非力なので10分間隔で実行するようになっています。
次にインデックスページを作成します。
indexmakerというスクリプトを使うと自動で生成してくれるので非常に便利です。
/usr/bin/indexmaker /etc/rtg/mrtg.cfg > /インデックスを作成したいパス/index.html
途中にある「>」はりダイレクトというファイルに出力する記号なので
省いて実行するとエラーになり作成されませんので注意してください。
index.htmlをブラウザから開けばインデックスのページが表示されます。
※設定等はご自分の環境に合わせた設定に調整して行ってください。

スクリプトを作成してcronに登録します。
また、作成したページをインデックス表示してくれるHTMLも
mrtgで提供されているスクリプトを利用して作成します。
/usr/binにexec_mrtgという名前でスクリプトを作成します。
内容はこの一行だけです。
※cronに直接登録したら動かなかったのでスクリプトにしました。
env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
実行権限も適切に与えてください。
このスクリプトをcronに登録します。
crontab -e コマンドを実行して登録してください。
*/10 * * * * /usr/bin/exec-mrtg
通常は5分間隔で実行することが多いようですが
LinkStationのCPUは非力なので10分間隔で実行するようになっています。
次にインデックスページを作成します。
indexmakerというスクリプトを使うと自動で生成してくれるので非常に便利です。
/usr/bin/indexmaker /etc/rtg/mrtg.cfg > /インデックスを作成したいパス/index.html
途中にある「>」はりダイレクトというファイルに出力する記号なので
省いて実行するとエラーになり作成されませんので注意してください。
index.htmlをブラウザから開けばインデックスのページが表示されます。
※設定等はご自分の環境に合わせた設定に調整して行ってください。

2008,01,26 Sat 16:51
Linuxのメモリ使用量の計算は単純にusedではなく
メモリ使用量=total - (free + buffers + cached) と計算するようです。
そこでmrtgのメモリ部分の設定を以下のように変更しました。
Target[memory]: 1.3.6.1.4.1.2021.4.5.0&1.3.6.1.4.1.2021.4.3.0:public@localhost
- 1.3.6.1.4.1.2021.4.6.0&1.3.6.1.4.1.2021.4.4.0:public@localhost
- 1.3.6.1.4.1.2021.4.14.0&1.3.6.1.4.1.2021.4.1.0:public@localhost
- 1.3.6.1.4.1.2021.4.15.0&1.3.6.1.4.1.2021.4.1.0:public@localhost
これでバッファやキャッシュを引いた実メモリの使用量が正しく表示されるようです。
メモリ使用量=total - (free + buffers + cached) と計算するようです。
そこでmrtgのメモリ部分の設定を以下のように変更しました。
Target[memory]: 1.3.6.1.4.1.2021.4.5.0&1.3.6.1.4.1.2021.4.3.0:public@localhost
- 1.3.6.1.4.1.2021.4.6.0&1.3.6.1.4.1.2021.4.4.0:public@localhost
- 1.3.6.1.4.1.2021.4.14.0&1.3.6.1.4.1.2021.4.1.0:public@localhost
- 1.3.6.1.4.1.2021.4.15.0&1.3.6.1.4.1.2021.4.1.0:public@localhost
これでバッファやキャッシュを引いた実メモリの使用量が正しく表示されるようです。
2008,02,21 Thu 16:57
ファイルサーバーの監視もSNMP経由でMRTGで纏めてやってみようと思い
ファイルサーバー側のSNMPの設定を行ってみました。
繋がりません・・・
色々なサイトを見て設定は間違っていないと思うのですが。
試しにsnmpwalk で値が取得できるか試してみました。
snmpwalk -v 1 localhost -c pubilic
ちゃんと取得できます。
snmpwalk -v 1 192.168.X.X -c pubilic
IPだと取得できません・・・
hostsからIPが漏れていたので追加するとIPでも動きました。
しかしhostsにWebサーバーのIPを追加してもTimeout: No Response from 192.168.X.X
と表示されるだけで値は返って来ません。
ちゃんとネット経由用の設定も追加したのに何故だろうか?
※追記
snmpのバージョンアップで基本的に127.0.0.1からしか繋がらないようになったようです。
恐らく殆どのサイトがバージョンアップ前の古い記事でこの設定が書かれていないようです。
この設定を解除するには以下のファイルに手を加えます。
/etc/default/snmpd
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'
単純にSNMPDOPTSの127.0.0.1を外すだけで良いようです。
この後snmpdを再起動してあげれば無事ネット経由での取得が可能になりました。
ちなみに-u snmp オプションを消すと自前で登録したスクリプトなどをroot権限で動かすことが可能になります。
逆に言えばroot権限で実行させたい場合は外す必要があります。
ファイルサーバー側のSNMPの設定を行ってみました。
繋がりません・・・
色々なサイトを見て設定は間違っていないと思うのですが。
試しにsnmpwalk で値が取得できるか試してみました。
snmpwalk -v 1 localhost -c pubilic
ちゃんと取得できます。
snmpwalk -v 1 192.168.X.X -c pubilic
IPだと取得できません・・・
hostsからIPが漏れていたので追加するとIPでも動きました。
しかしhostsにWebサーバーのIPを追加してもTimeout: No Response from 192.168.X.X
と表示されるだけで値は返って来ません。
ちゃんとネット経由用の設定も追加したのに何故だろうか?
※追記
snmpのバージョンアップで基本的に127.0.0.1からしか繋がらないようになったようです。
恐らく殆どのサイトがバージョンアップ前の古い記事でこの設定が書かれていないようです。
この設定を解除するには以下のファイルに手を加えます。
/etc/default/snmpd
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'
単純にSNMPDOPTSの127.0.0.1を外すだけで良いようです。
この後snmpdを再起動してあげれば無事ネット経由での取得が可能になりました。
ちなみに-u snmp オプションを消すと自前で登録したスクリプトなどをroot権限で動かすことが可能になります。
逆に言えばroot権限で実行させたい場合は外す必要があります。
2008,03,06 Thu 09:29
