自宅サーバー構築メモ(その9) muninでサーバー監視する(困った篇)
muninインストール直後から発生していたことなのですが、下図のグラフ(netstat,IO Service time)の縦軸の表記がおかしいのです。
図のとおり数値が指数表記になっています。(もしかしたら指数表記が正しいのかもしれませんが。)
図.netstat
図.IO Service time
気になるので、netstatプラグインから調査を行いました。
netstatプラグインが出力する値を確認する
プラグインが出力する値は、munin-runコマンドで確認することができます。
# cd /etc/munin/plugins
# munin-run netstat
active.value 5036
passive.value 39332
failed.value 1704
resets.value 1638
established.value 1
プラグインが出力する値に、おかしな点はないようです。
rrdtoolのデータファイルを確認する
次に、rrdtoolのデータファイルの内容を確認してみました。
rrdファイルの内容を確認するにはrrdtoolコマンドを使用します。
# rrdtool info ./ml115g5.blogdns.net-netstat-established-d.rrd
filename = "./ml115g5.blogdns.net-netstat-established-d.rrd"
rrd_version = "0003"
step = 300
last_update = 1274186127
ds[42].type = "DERIVE"
ds[42].minimal_heartbeat = 600
ds[42].min = 0.0000000000e+00
ds[42].max = 5.0000000000e+04
ds[42].last_ds = "3"
ds[42].value = 0.0000000000e+00
ds[42].unknown_sec = 0
rra[0].cf = "AVERAGE"
rra[0].rows = 576
rra[0].cur_row = 202
rra[0].pdp_per_row = 1
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 0
rra[1].cf = "MIN"
rra[1].rows = 576
rra[1].cur_row = 518
rra[1].pdp_per_row = 1
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = NaN
rra[1].cdp_prep[0].unknown_datapoints = 0
rra[2].cf = "MAX"
rra[2].rows = 576
rra[2].cur_row = 185
rra[2].pdp_per_row = 1
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = NaN
rra[2].cdp_prep[0].unknown_datapoints = 0
rra[3].cf = "AVERAGE"
rra[3].rows = 432
rra[3].cur_row = 250
rra[3].pdp_per_row = 6
rra[3].xff = 5.0000000000e-01
rra[3].cdp_prep[0].value = 0.0000000000e+00
rra[3].cdp_prep[0].unknown_datapoints = 0
rra[4].cf = "MIN"
rra[4].rows = 432
rra[4].cur_row = 7
rra[4].pdp_per_row = 6
rra[4].xff = 5.0000000000e-01
rra[4].cdp_prep[0].value = 0.0000000000e+00
rra[4].cdp_prep[0].unknown_datapoints = 0
rra[5].cf = "MAX"
rra[5].rows = 432
rra[5].cur_row = 35
rra[5].pdp_per_row = 6
rra[5].xff = 5.0000000000e-01
rra[5].cdp_prep[0].value = 0.0000000000e+00
rra[5].cdp_prep[0].unknown_datapoints = 0
rra[6].cf = "AVERAGE"
rra[6].rows = 540
rra[6].cur_row = 519
rra[6].pdp_per_row = 24
rra[6].xff = 5.0000000000e-01
rra[6].cdp_prep[0].value = 3.3333333333e-03
rra[6].cdp_prep[0].unknown_datapoints = 0
rra[7].cf = "MIN"
rra[7].rows = 540
rra[7].cur_row = 470
rra[7].pdp_per_row = 24
rra[7].xff = 5.0000000000e-01
rra[7].cdp_prep[0].value = 0.0000000000e+00
rra[7].cdp_prep[0].unknown_datapoints = 0
rra[8].cf = "MAX"
rra[8].rows = 540
rra[8].cur_row = 236
rra[8].pdp_per_row = 24
rra[8].xff = 5.0000000000e-01
rra[8].cdp_prep[0].value = 3.0310258864e-03
rra[8].cdp_prep[0].unknown_datapoints = 0
rra[9].cf = "AVERAGE"
rra[9].rows = 450
rra[9].cur_row = 350
rra[9].pdp_per_row = 288
rra[9].xff = 5.0000000000e-01
rra[9].cdp_prep[0].value = 3.3333333333e-03
rra[9].cdp_prep[0].unknown_datapoints = 0
rra[10].cf = "MIN"
rra[10].rows = 450
rra[10].cur_row = 206
rra[10].pdp_per_row = 288
rra[10].xff = 5.0000000000e-01
rra[10].cdp_prep[0].value = 0.0000000000e+00
rra[10].cdp_prep[0].unknown_datapoints = 0
rra[11].cf = "MAX"
rra[11].rows = 450
rra[11].cur_row = 402
rra[11].pdp_per_row = 288
rra[11].xff = 5.0000000000e-01
rra[11].cdp_prep[0].value = 3.0310258864e-03
rra[11].cdp_prep[0].unknown_datapoints = 0
rrdファイルに格納されている値が指数表記になっていました。
rrdファイルを更新する処理がおかしいのかとおもったのですが、他の正常なグラフのrrdファイルを
確認したところ、他のrrdファイルも指数表記で値を保存しているので、これは問題ないようです。
netstatプラグインを確認する
次に、netstatプラグインを確認しました。
/etc/munin/plugins/netstat
if [ "$1" = "config" ]; then
echo 'graph_title Netstat'
echo 'graph_args --base 1000 --logarithmic'
echo 'graph_vlabel active connections'
echo 'graph_category network'
echo 'graph_period second'
echo 'graph_info This graph shows the TCP activity of all the network interfaces combined.'
~途中省略~
fi
正常なグラフのプラグインと比較しながら眺めていると、気になる点が1箇所(赤文字の行)ありました。
他のプラグインは下記のようになっています。
echo 'graph_args --base 1000 -l 0'
そこで、netstatプラグインの該当個所を上記のように修正してから、念のためnetstatのrrdファイルを削除し、munin-nodeを再起動しました。
5分ほどまってから確認してみると、縦軸の表記が下図のようになりました。
図.netstat
IO Service timeプラグインも同様の記述になっていたので、同様の修正を行いました。
図.IO Service time
とりあえず、縦軸の表記が正しくなったように思います。
ただ、この対応でよかったのか確証がありません。もしかすると自宅での検証用サーバーというモニターする数値が(実環境に比べて)きわめて小さく、且つ変動が少ないという環境によるものかもしれませんし、指数表記が正しい状態なのかもしれません。
このあたりは時間ができたら調べてみたいとおもいます。
*googleなどで、munin netstatというキーワードで検索するとmuninの監視ページ自体が何件もヒットします。
そのうち、munin 1.3.x、munin 1.4.xだと大体同じ現象が起きています。
munin 1.2.xだと問題無い様です。