監視ツールの一本化

本記事は最終更新日より 1 年以上経過しております。
スポンサーリンク

徹夜こいてやってしまったこの作業。
いままでは HotSaNic と MRTG の併用なんちゅーことをしていたけど、
昔ちょっとつかっていた Munin を思い出してこれをインスコしてみた。

最初はソースからインスコしたんだけど /etc/munin/plugin-conf.d/ 以下が空っぽで
自分で記述してやろうがなんだろうがグラフが出力されないという状態だったので、
仕方なしに RPM パッケージからインスコした。

まず速攻エラーで Cron からメールが 5 分おきにすっ飛んできた。
直前に Perl のバージョンを 5.8.5 から 5.8.8 にしたせいで、ライブラリが狂っていた
みたいだったからエラーの出ていた 5.8.5 側のライブラリを削除して ldconfig してから
/etc/init.d/munin-node restart とかましてみたら泣きやんだ。

そこからは監視したい所を追加すべく /usr/share/munin/plugins/ からバンバン
/etc/munin/plugins/ へシンボリックリンクはってプラグイン追加。
そんで /etc/munin/plugin-conf.d/munin-node への編集する必要のある物は
プラグインのドキュメントみながら設定。

結果として現在監視できている項目は~
Apache, Disk, MySQL, Network, DNS, NTP, Uptime, Logged in users
Postfix, Processes, Squid, System(CPU, Load Average, Memory, etc…)
これが大項目としてあって、その下に 2~7 個位項目がぶら下がっている感じ。

MRTG では一度に 2 つの値までしかグラフ化する事ができなかったが、軽量で自動更新は
5 分毎となっており割とリアルタイムにサーバーの状態を見て取れる物だった。
HotSaNic は RRD を使っているので多数の数値が 1 つのグラフとする事ができたけど
更新頻度が 15 分。

Munin は上記の両者で良いところ取りしてしまった感じが否めない所。
グラフはプラグインで幾らでも増やせる。更新時間も短く 5 分毎。そしてボリュームの割には
そんな負荷が高くない。
RRD 使用でグラフも見やすくて良い。

このブログにある左ペインに以前から貼っていた「Traffic」と「Load Ave.」のグラフも
Munin の物にすり替えた (笑

んで、このグラフを見ると作業の進捗がよく見える。
20071002_proc.png20071002_memory.png
これはサーバー上で動いているプロセス数(プログラムの数) とメモリ使用量なんだけど、
03:00 頃に全ての設定作業を終え、04:00 までの間だに HotSaNic と MRTG の動作を
止めた所。
丁度その時刻に走っているプロセスがガクンとおちてメモリも SwapIn して使用量が
減っている。メモリの Comitted がなんか一直線入ってるけどこれは後に調査かなと。

あと一つ不満点がある。それはグラフのスケールが小さすぎて 1 メモリ 1 時間。
これだと分単位の動きが分かりづらい所 orz

で、設定かましたプラグインは以下のデフォルト記述プラス追加分のみ。
設定不要の自動動作するやつは記述なしです。

/etc/munin/plugin-conf.d/munin-node

[mysql*] 
env.mysqlopts -u root -pxxxxxxxxxx (パス伏せ) 
env.mysqladmin /usr/local/mysql/bin/mysqladmin  

[cpu*] 
user root  

[exim*] 
group mail  

[cps*] 
user root  

[apt] 
user root  

[vlan*] 
user root  

[users] 
user root  

[postfix*] 
user root 
env.logfile maillog  

[squid_*] 
env.squidhost localhost 
env.squidport 8080  

[bind9*] 
user root 
env.logfile /var/named/log/query.log 
env.rndc /usr/local/sbin/rndc 
env.querystats /var/named/named.stats

追記で Postfix のプラグインにある BugFix を備忘録としてはっておこう。

vi /etc/munin/plugins/postfix_mailstats
#on line 239 change from:
$cause = 'OTHER' unless $1 =/^\d+$/;
#to:
$cause = 'OTHER' unless $1 =~/^\d+$/;
スポンサーリンク