サーバの稼働状態を監視したいと思い、sysstat/sarでデータ取得を行っていますが、sarコマンドでチェックすると言っても、数字の羅列を見るよりは次のような要件を満たす方法の方が何かと便利です。
- グラフ化
- 自動化
- Webインターフェース
これらを手軽にできるツールがMuninです。
sarの収集データをgnuplotするなどを考えていましたが、基本的に同じデータを元にするのであれば、Muninを使ってみようと思い、導入しました。
実際に実行した結果、作成されるグラフ例です。これはCPU使用率を示しています。「Sat 0:00」過ぎからデータ収集を始めたので、グラフはその時点以降で描画されています。
他も含めて、次のようなデータのグラフが生成され、Webブラウザで参照できるようになります。
localhost Disk Filesystem usage (in %) Inode usage (in %) Network Netstat Postfix Postfix Mailqueue Processes Fork rate Number of Processes VMstat System CPU usage Available entropy Interrupts & context switches Load average Memory usage File table usage Inode table usage Swap in/out
導入手順にクセや引っ掛かりは特別ないというのが感想ですが、
httpd設定ファイルmunin.confの場所MuninのWebドキュメントルートの場所
が異なるケースに遭遇しましたので、下記手順中の登場箇所で注記します。
↑
実はこれ、Muninがバージョン1.2.5とバージョン1.4.5の違いでした。
EPELリポジトリを使わないと、1386(32bit)とx86_64(64bit)でインストールされるバージョンが違っていることに目が行っていませんでした。
1.Muninのインストール
Muninは、収集されたデータを集約してグラフ化する役割を持つ Munin(Munin master)と、データを収集するエージェントの役割を持つ Munin node からなり、ここではローカルサーバでローカルサーバの監視を行う単純な構成を構築しますので、Munin、Munin node の両方をインストールします。
[root ~]# yum install munin munin-node
2.munin-nodeの起動
munin-nodeを起動するだけで、データの収集を5分間隔で行うようになります。
[root ~]# service munin-node start Starting Munin Node: [ OK ]
3.LISTENポートの確認
TCPポート4949dLISTENしていることを確認します。
[root ~]# netstat -ln --tcp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:4949 0.0.0.0:* LISTEN
4.munin-nodeの自動起動の設定
[root ~]# chkconfig --list munin-node munin-node 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root ~]# chkconfig munin-node on [root ~]# chkconfig --list munin-node munin-node 0:off 1:off 2:on 3:on 4:on 5:on 6:off
5.httpdの設定
/etc/httpd/conf.d/munin.conf が作成されていると思います。
このファイルの内容を参考に、次のようにWebドキュメントパスを設定します。
ScriptAlias /munin/cgi/ /var/www/munin/cgi/ <Directory /var/www/munin/cgi/> Options ExecCGI Order deny,allow Allow from all </Directory> Alias /munin/ /var/www/munin/ <Directory /var/www/munin/> Options -Indexes FollowSymLinks Order deny,allow Allow from all </Directory>
6.httpdへの設定反映
[root ~]# service httpd reload httpd を再読み込み中: [ OK ]
これで、設定はすべて完了です。
すでにmunin-nodeがデータ収集をしているかと思いますので、Webブラウザからグラフを参照できるようになっているはずです。