- - PR -
Net-SNMP と MRTG による空きメモリの監視について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-04-25 13:03
サーバ側 (RHEL 4) で Net-SNMP を起動し、MRTG (ver 2.15.1) で監視の設定をしてみたのですが、空きメモリの情報が正確に取得できていないようです。
[ `Daily' Graph (5 Minute Average) ] Max Average Current Real 256.6 MBytes 18.1 MBytes 52.0 KBytes Swap 1297.5 MBytes 125.6 MBytes 23.0 KBytes [ mrtg.cfg ファイルの空きメモリに関する設定内容 ] Target[mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.4.0:public@xxx.xxx.xxx.xxx SetEnv[mem]: MRTG_INT_IP="xxx.xxx.xxx.xxx" MRTG_INT_DESCR="bond0" MaxBytes1[mem]: 200000 MaxBytes2[mem]: 200000 Unscaled[mem]: dwmy Options[mem]: gauge,absolute,noinfo,growright,nopercent YLegend[mem]: Mem Free(Bytes) ShortLegend[mem]: Bytes kilo[mem]: 1024 kMG[mem]: K,M,G,T,P LegendI[mem]: Real LegendO[mem]: Swap Legend1[mem]: Real [MBytes] Legend2[mem]: Swap [MBytes] Title[mem]: Memory Free [ サーバ側で free を実行した結果 ] # free total used free shared buffers cached Mem: 510408 497556 12852 0 324388 53408 -/+ buffers/cache: 119760 390648 Swap: 1044216 656 1043560 [ snmpd.conf ファイルの修正箇所 ] com2sec mynetwork xxx.xxx.xxx.0/24 public # 他の "com2sec" はコメントアウト group myConfigGroup v1 mynetwork group myConfigGroup v2c mynetwork # 他の "group" はコメントアウト access myConfigGroup "" any noauth exact view_all none none # 他の "access" はコメントアウト (1) 実メモリについて、サーバ側で free を実行すると 510 MB ほどの空きがあることが確認できるのに、MRTG のレポートでは Max でも 256.6 MB になっています。 (2) MRTG レポートの Max、Average、Current とはそれぞれ何を意味しているのかいまいちよく分かりません。Current は現在の空きメモリを表しているのかと思っていましたが、空きメモリが 52 KB しかないというのは、free の結果と照らし合わせてみても理解できません。 設定のどこかが間違っていて、正しく情報を取得できていないのでしょうか? それとも、SNMP で取得している情報は free や vmstat で取得できる内容とは異なっているのでしょうか? [ メッセージ編集済み 編集者: あんとれ 編集日時 2007-04-25 13:05 ] | ||||
|
投稿日時: 2007-04-25 13:45
ちょっと調べてみましたが、空メモリの監視をする場合は、以下の設定を行う必要があります。
見たところ設定している値と実際のMAX値が違うので、Freeの結果を設定してから試してみてはどうでしょうか? MaxBytes1[mem]: 200000 ← 実メモリMAX値 MaxBytes2[mem]: 200000 ← スワップMAX値 [ メッセージ編集済み 編集者: ゆうじゅん 編集日時 2007-04-25 13:46 ] | ||||
|
投稿日時: 2007-04-25 16:33
すみません。free を別サーバで取得していました。SNMP の設定をしたサーバでの実行結果は以下の通りでした。どちらも約 2GB です。 $ free total used free shared buffers cached Mem: 2025008 1719952 305056 0 110700 771548 -/+ buffers/cache: 837704 1187304 Swap: 2044072 0 2044072 | ||||
|
投稿日時: 2007-04-25 16:46
>Options[mem]: gauge,absolute,noinfo,growright,nopercent
手元に確認できる環境がないので申し訳ないのですが、 absoluteはいらないのでは? >MRTG レポートの Max、Average、Current とはそれぞれ何を意味しているのかいまいちよく分かりません。 Currentは現在値、MAXはそのグラフ中の最大値です。 なので、Currentの値が正しく取得できず、ずっと低い値で記録されていれば、 MAXの値も当然低い値になるかと思います。 | ||||
|
投稿日時: 2007-04-25 21:47
memAvailReal.0の値は完全に未使用なメモリ量です。 バッファ容量など(memBuffer.0やmemCached.0)を足してみると、 freeコマンドの「-/+ buffers/cache:」行と同じになります。 | ||||
|
投稿日時: 2007-04-26 00:00
こんばんは。 自分の場合、実メモリ1GB/スワップ1.5GBのマシンで下記のように設定しています。 MaxBytes1[mem]: の値には、 $ snmpwalk -v 1 localhost -c public .1.3.6.1.4.1.2021.4.5 UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 1027472 として出てきた1027472を MaxBytes2[mem]: の値には、 $ snmpwalk -v 1 localhost -c public .1.3.6.1.4.1.2021.4.3 UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 1574360 として出てきた1574360を指定しています。 これでFreeで取得できる値とグラフの値がほぼ同一になっています。 | ||||
|
投稿日時: 2007-05-07 17:09
回答いただいた内容を参考にし、自分なりに MRTG のグラフや snmpwalk の結果や free や vmstat コマンドの結果の比較等を行ってみたいと思います。
本当にありがとうございました。 |
1