【Debian/Ubuntu】Munin 2.0 をソースor バイナリ(.deb)でセットアップ

【Debian/Ubuntu】Munin 2.0 をソースor バイナリ(.deb)でセットアップ はてなブックマーク - 【Debian/Ubuntu】Munin 2.0 をソースor バイナリ(.deb)でセットアップ


Debian 6.0 (Squeeze) および Ubuntu Server 12.04 LTS で、Munin 2.0 を入れてみました( ^ω^)

方法は2つあります。ソースコードから実行する方法と、テスト用のリポジトリから .dev バイナリパッケージのセットアップを行う方法です。

現時点では、Debian PTS では testing の状態です( version 2.0.1-1 )。最新の 2.0.5-1 は unstable の為、以下バイナリでは 2.0.1-1 2.0.6-1 のセットアップを前提ですすめます。

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

(※2012年9月24日…現行版の2.0.6に手順を書き換えました)

CentOS/RHEL は、こちらのページをご覧下さい

◆ 方法1:.deb パッケージを使ってセットアップする

1. apt-get の情報更新と、関連パッケージのセットアップ

# apt-get update
# apt-get install \
 rrdtool librrds-perl \
 libhtml-template-perl \
 libfile-copy-recursive-perl \
 libfcgi-perl libcgi-fast-perl libcgi-pm-perl \
 libio-socket-inet6-perl \
 libnet-snmp-perl \
 liblog-log4perl-perl \
 libnet-server-perl \
 libdate-manip-perl \
 liblist-moreutils-perl

※ Ubuntu は「apt-get install liburi-perl gawk」も必要

2. パッケージの取得とセットアップ

$ mkdir munin2
$ cd /usr/local/src/munin2
$ wget http://ftp.jp.debian.org/debian/pool/main/m/munin/munin_2.0.6-1_all.deb
$ wget http://ftp.jp.debian.org/debian/pool/main/m/munin/munin-common_2.0.6-1_all.deb
$ wget http://ftp.jp.debian.org/debian/pool/main/m/munin/munin-doc_2.0.6-1_all.deb
$ wget http://ftp.jp.debian.org/debian/pool/main/m/munin/munin-node_2.0.6-1_all.deb
$ wget http://ftp.jp.debian.org/debian/pool/main/m/munin/munin-plugins-core_2.0.6-1_all.deb
# dpkg -i munin*.deb

3. Apacheのアクセス制限を調整

# vi /etc/apache2/conf.d/munin

初期状態では、ローカルホストからしか参照できないので、適時調整します。

<Directory /var/cache/munin/www>
 Order allow,deny
 Allow from localhost 127.0.0.0/8 ::1

たとえば「Allow from all 」と書き換えると、どの環境からも参照できます。

4. Apache 再起動で、設定を有効にします。

# service apache2 restart

あとは、5分まつか、sudo -u munin /usr/bin/munin-cron を実行し、http://<ホスト名>/munin/ にアクセスします。以上でセットアップ完了です。

◆ 方法2;ソースコードから最新安定版(Munin 2.0.5 2.0.6) をセットアップする

1. apt-get の情報更新と、関連パッケージのセットアップ

# apt-get update
# apt-get install \
 rrdtool librrds-perl \
 libhtml-template-perl \
 libfile-copy-recursive-perl \
 libfcgi-perl libcgi-fast-perl libcgi-pm-perl \
 libio-socket-inet6-perl \
 libnet-snmp-perl \
 liblog-log4perl-perl \
 libnet-server-perl \
 libdate-manip-perl \
 liblist-moreutils-perl

※ Ubuntu は「apt-get install liburi-perl gawk」も必要

2.munin ユーザとグループの作成

# /usr/sbin/groupadd munin
# /usr/sbin/useradd munin -g munin -b /opt -s /sbin/nologin -c "Munin user"

3. ソースの取得とコンパイル

$ 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
$ make
$ make install

これで、munin のバイナリ等は /opt/munin へ、設定ファイルは /etc/munin へセットアップされます。

4. munin-node のプラグイン設定

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

自動で推奨されるプラグイン(グラフの元となるもの)が組み込まれます。

5. munin-node 起動

# /opt/munin/sbin/munin-node

サーバ起動時にも有効にするため、/etc/rc.local にも

/opt/munin/sbin/munin-node &

記述を追加しておきます。

6. グラフ描画のためのファイル設置と、パーミッション調整

# ln -s  /opt/munin/www/docs /var/www/munin
# ln -s /opt/munin/www/cgi/munin-cgi-html /usr/lib/cgi-bin
# ln -s /opt/munin/www/cgi/munin-cgi-graph /usr/lib/cgi-bin
# chown -R munin.www-data /opt/munin/www/docs
# chmod 775 /opt/munin/www/docs
# chown munin.www-data /var/opt/munin/cgi-tmp
# chmod 775 /var/opt/munin/cgi-tmp
# chown -R munin.www-data /opt/munin/log/munin
# chmod 775 /opt/munin/log/munin

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

cgiurl_graph /cgi-bin/munin-cgi-graph

7. cron の設定を有効にします。

# cp build/resources/linux-cron.d_munin /etc/cron.d/munin
# /etc/init.d/cron restart
Restarting periodic command scheduler: cron.

※ Ubuntu Server では、言語環境によっはグラフの曜日・月部分が文字化けします。vi /etc/cron.d/munin を編集し、次のように、「export LANG=C」と記述することで回避できます。

#!/bin/sh

# This used to test if the executables were installed.  But that is
# perfectly redundant and supresses errors that the admin should see.

export LANG=C

/opt/munin/lib/munin-update $@ || exit 1

以上でセットアップ完了です。

◆参考

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

Debian Package Tracking System – munin
http://packages.qa.debian.org/m/munin.html