2014年6月28日土曜日

RHEL5にMunin2.0をインストール&設定

今回はリソース監視ツール「Munin」のインストールと
監視設定について記述します。

[Muninとは...]
サーバのリソースデータを収集し、グラフ描画する監視ツール。
Perl5で記述されており、ライセンスはGNU GPL v2。
http://munin-monitoring.org/

[環境]
RHEL 5.8 (64bit)
Munin 2.0.19-1

[用語説明]
Muninサーバ:監視対象サーバからデータを収集しグラフ描画するサーバ
Muninノード:監視対象サーバ

1. 事前準備 [Muninサーバ、Muninノード共通]

1-1 Perlライブラリインストール
rpm -ivh perl-Compress-Zlib-1.42-1.fc6.x86_64.rpm
rpm -ivh perl-HTML-Tagset-3.10-2.1.1.noarch.rpm
rpm -ivh perl-HTML-Parser-3.55-1.fc6.x86_64.rpm
rpm -ivh perl-libwww-perl-5.805-1.1.1.noarch.rpm
rpm -ivh perl-XML-Parser-2.34-6.1.2.2.1.x86_64.rpm
rpm -ivh perl-XML-NamespaceSupport-1.09-1.2.1.noarch.rpm
rpm -ivh perl-XML-SAX-0.14-11.noarch.rpm
rpm -ivh perl-XML-Simple-2.14-4.fc6.noarch.rpm
rpm -ivh perl-XML-Twig-3.26-1.fc6.noarch.rpm
rpm -ivh perl-XML-LibXML-Common-0.13-8.2.2.x86_64.rpm
rpm -ivh perl-XML-LibXML-1.58-6.x86_64.rpm
rpm -ivh perl-XML-RegExp-0.03-2.el5.noarch.rpm
rpm -ivh perl-XML-DOM-1.44-2.el5.noarch.rpm
rpm -ivh perl-DateManip-5.44-1.2.1.noarch.rpm
rpm -ivh perl-TimeDate-1.16-5.el5.noarch.rpm
rpm -ivh perl-Digest-SHA1-2.11-1.2.1.x86_64.rpm
rpm -ivh perl-Digest-HMAC-1.01-15.noarch.rpm
rpm -ivh perl-Net-IP-1.25-2.fc6.noarch.rpm
rpm -ivh perl-Net-DNS-0.59-3.el5.x86_64.rpm
rpm -ivh perl-Net-SSLeay-1.30-4.fc6.x86_64.rpm
rpm -ivh perl-Socket6-0.19-3.fc6.x86_64.rpm
rpm -ivh perl-IO-Socket-SSL-1.01-1.fc6.noarch.rpm
rpm -ivh perl-IO-Socket-INET6-2.51-2.fc6.noarch.rpm
rpm -ivh sysstat-7.0.2-11.el5.x86_64.rpm

1-2 EPELリポジトリ有効化
# wget http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm
# rpm -ivh epel-release-5-4.noarch.rpm

2. Muninインストール

2-1 Muninサーバインストール [Muninサーバ]
# yum --enablerepo=epel install munin
# vi /etc/httpd/conf.d/munin.conf
---
Alias /munin /var/www/html/munin
---
→ 先頭に追記
# htpasswd -c /etc/munin/munin-htpasswd username
→ usernameのパスワードを設定
# /etc/init.d/httpd restart

2-2 Muninノードインストール [Muninノード]
# yum --enablerepo=epel install munin-node
# /etc/init.d/munin-node restart
→ 5分位経過後、データが作成され表示可能になる。
http://*******/munin/


2-3 Muninノード自動起動設定 [Muninノード]
# chkconfig munin-node on

3. 監視設定

3-1 監視対象サーバ設定 [Muninサーバ]
# vi /etc/munin/munin.conf  ※以下は例
[グループ名;ホスト1]
address 99.99.99.99 →監視対象サーバのIPアドレス
use_node_name yes
load.load.critical 10 → ロードアベレージ10を超えたらアラート
memory.free.critical 100000000: → 空きメモリが100MB以下になったら
[グループ名;ホスト2]
address 99.99.99.98
use_node_name yes
load.load.critical 10
memory.free.critical 100000000:
→ 監視対象サーバ分設定する。

3-2 Munin接続許可設定 [Muninノード]
# vi /etc/munin/munin-node.conf
host_name XXXXX
→ 自ホスト名設定
allow ^99\.99\.99\.1$
→ MuninサーバのIPから接続許可
# /etc/init.d/munin-node restart

3-3 Apache監視追加 Apacheプラグインの追加(シンボリックリンク設定)
# ln -s /usr/share/munin/plugins/apache_accesses /etc/munin/plugins/
# ln -s /usr/share/munin/plugins/apache_processes /etc/munin/plugins/
# ln -s /usr/share/munin/plugins/apache_volume /etc/munin/plugins/

Apacheの情報を取得するため、mod_statusを設定
# vi /etc/httpd/conf/httpd.conf
--- /etc/httpd/conf/httpd.conf.o
+++ /etc/httpd/conf/httpd.conf
@@ -222,6 +222,7 @@
 # Off) when the "server-status" handler is called. The default is Off.
 #
 #ExtendedStatus On
+ExtendedStatus On

 #
 # If you wish httpd to run as a different user or group, you must run
@@ -917,7 +918,7 @@
     SetHandler server-status
     Order deny,allow
     Deny from all
+    Allow from 127.0.0.1
 </Location>

Apache再起動、mod_status接続確認
# /etc/init.d/httpd restart
# wget -q -O - http://127.0.0.1/server-status/?auto

ノード再起動
# /etc/init.d/munin-node restart

3-4 アラートメール設定 [Muninサーバ]
# vi /etc/munin/munin.conf
contact.mail.command mail -s "Munin Alerts ${var:group}::${var:host}" 送信先メールアドレス
contact.mail.max_messages 20
contact.mail.always_send warning critical

0 件のコメント: