【入れてみた】Munin 2.0 をソースor yumでセットアップ(RHEL/CentOS)

【入れてみた】Munin 2.0 をソースor yumでセットアップ(RHEL/CentOS) はてなブックマーク - 【入れてみた】Munin 2.0 をソースor yumでセットアップ(RHEL/CentOS)


自分用のメモ&検証を兼ねて( ^ω^)

RHEL6 または、CentOS 6 の環境で、Munin 2.0 のセットアップを行う方法です。

☆ Debian/Ubuntu は、こちらの投稿をごらんください

現時点は、セットアップ方法は2つあります。1つは、EPEL (Extra Packages for Enterprise Linux) のテスト用パッケージを使う方法。yum 経由なので、手軽です。そして、もう1つは、ソースコードからコンパイルする方法です。

☆ 細かい設定よりも、今回は「セットアップ」に絞ってみました。

☆ なお、本検証は CentOS 6.3 (x86_64) で行いました。記述の間違いや、上手くいかない所があれば、ご指摘いただけると嬉しいかなって。また、いずれも新規セットアップを想定しています。バージョンアップの再には気をつけてください。

(※2012年9月24日、現行安定版の2.0.6向けに加筆訂正しました)

◆ 方法1:EPEL からバイナリで Munin Master と node をインストールする

1. EPEL レポジトリを有効にします。

# wget http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm

もしかしたら、EPELのリリース情報が更新され、リンク先に存在しないかもしれません。その場合は、EPELのサイトで最新版をダウンロードします。

2. .epel-testingリポジトリを扱えるように設定を変更します。

# vi /etc/yum.repos.d/epel-testing.repo

ファイルを開いたら epel-testing の enabled=1 にします。

[epel-testing]
name=Extra Packages for Enterprise Linux 5 - Testing - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/testing/5/$basearch
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=testing-epel5&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL

3. yum コマンドで munin パッケージをインストールします。

# yum install munin

後は、依存性のあるパッケージ情報が表示されますので、最後で【 y 】を入力します。

==========================================================================================
 Package               Arch            Version                Repository             Size
==========================================================================================
Installing:
 munin                 noarch          2.0.4-3.el5            epel-testing          206 k
Installing for dependencies:
 munin-common          noarch          2.0.4-3.el5            epel-testing           76 k
 munin-node            noarch          2.0.4-3.el5            epel-testing          420 k

Transaction Summary
==========================================================================================
Install       3 Package(s)
Upgrade       0 Package(s)

Total download size: 703 k
Is this ok [y/N]: y

これでセットアップ完了です。http://<ホスト名>/munin/ にアクセスすると、表示されるようになります。

◆ 方法2:Munin をソースからセットアップする

ソースを用いる場合には、いくつか方法があります。ここでは、比較的手軽な、Munin 以外は yum ( EPEL ) を使う方法を紹介します。

1. EPEL リポジトリを有効にします。

$ wget http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/i386/epel-release-6-7.noarch.rpm
# rpm -ivh epel-release-6-7.noarch.rpm

2. yum で Muniin が必要なパッケージ群(Perl 用のモジュール,RRD等)をセットアップします。

# yum install \
 rrdtool perl-rrdtool perl-Module-Buildrrdtool\
 perl-Module-Build \
 perl-Time-HiRes \
 perl-Digest-MD5 \
 perl-HTML-Template \
 perl-File-Copy-Recursive \
 fcgi fcgi-devel perl-FCGI perl-CGI \
 perl-IO-Socket-INET6 \
 perl-Net-SNMP \
 perl-Log-Log4perl \
 perl-Net-Server

3. Munin 用の専用ユーザとグループを作成します。

# /usr/sbin/groupadd munin
# /usr/sbin/adduser -g munin -b /var/lib -s /sbin/nologin -c "Munin user" munin

4. 最新版のコードをダウンロード、展開します。

$ wget http://sourceforge.net/projects/munin/files/stable/2.0.6/munin-2.0.6.tar.gz
$ tar xfz munin-2.0.6.tar.gz
$ cd munin-2.0.6

5. Makefile を RedHat 系向けの記述に書き換えます。

# vi Makefile

ファイルを開いたら CONFIG 行を書き換えます。

CONFIG = dists/redhat/Makefile.config

あるいは、次の1行を実行するだけでも構いません。

$ sed -i Makefile -e 's,CONFIG = Makefile.config,CONFIG = dists/redhat/Makefile.config,'

6. make して、インストールします

$ make
$ make install

もしコンパイル時に Javaのエラーが出る場合は、Makefileの以下行をコメントアウトします。

#ifeq ($(JCVALID),yes)
#JAVA_BUILD=build-plugins-java
#JAVA_INSTALL=install-plugins-java
#JAVA_PLUGINS=plugins/node.d.java/*
#endif

7. グラフ描画のための、パーミッション設定を行います。

# cp /var/www/html/munin/cgi/munin-cgi-graph /var/www/cgi-bin/
# cp /var/www/html/munin/cgi/munin-cgi-html /var/www/cgi-bin/
# chown -R munin.apache /var/log/munin/
# chmod 775 /var/log/munin/
# chown -R munin.apache /var/www/html/munin
# chmod -R 775 /var/www/html/munin
# chown munin.apache /var/lib/munin/cgi-tmp
# chmod 775 /var/lib/munin/cgi-tmp
# chown munin.munin /var/lib/munin/spool/
# chmod 755 /var/lib/munin

※2.0.6以降は、/etc/munin/muin.confの設定変更が必要です。munin.conf を開き、cgirul_graphの行を次のように指定してください。パスを変更した場合、その対象パスに書き換えます。

cgiurl_graph /cgi-bin/munin-cgi-graph

8. プラグイン向けのパーミッション設定を行います。

# chown nobody.nobody /var/lib/munin/plugin-state
# chmod 775 /var/lib/munin/plugin-state

9. munin-node 用の起動スクリプト設置と実行をします。

# cp dists/redhat/munin-node.rc /etc/init.d/munin-node
# chmod 755 /etc/init.d/munin-node
# /sbin/chkconfig --add munin-node

サーバ起動時の自動実行の確認。ランレベル345でon になります。

# /sbin/chkconfig --list munin-node
munin-node      0:off   1:off   2:on    3:on    4:on    5:on    6:off

プラグインの初期設定を行います。

# /usr/sbin/munin-node-configure --shell --families=contrib,auto | sh -x

munin-node を起動します。

# /sbin/service munin-node start
Starting Munin Node:                                       [  OK  ]

10. cron の設定を行います。

# cp dists/redhat/munin.cron.d  /etc/cron.d/munin
# /sbin/service crond restart

あとは5分待つか、sudo -u munin /usr/bin/munin-cron を実行して、グラフを生成し、ブラウザから http://<ホスト名>/munin/ で確認を行います。

なお、ソースからのインストールの場合 /var/www/html/munn/.htaccess に BASIC 認証等の記述があります。必要があれば、AllowOverride で .htaccess を有効にするか httpd.conf 等で、当該ディレクトリでの .htaccess を許可します。

上手くいかない時は…

/var/log/munin/ 以下の各種ログ、グラフ描画に関しては Apache の error_log も参照してみてくださいね。

◆参考

INSTALL
https://github.com/munin-monitoring/munin/blob/devel/INSTALL

2 thoughts on “【入れてみた】Munin 2.0 をソースor yumでセットアップ(RHEL/CentOS)