概要
「Munin」はサーバリソースグラフツール。
最新版は2.0.7だが、Ubuntu だと munin 1.x 系しかインストールできない模様なので、インストール手順をメモする。
muninの概要
munin は サーバのリソースをグラフ化するツール。似たようなツールは cacti 等が存在する。
muninの利点は以下
- MySQL 等のデータベース不要
- データ記録に RRDtool を利用
- RRDtool で生成したデータファイルは、容量が初期生成時から増えることはないので、サーバの容量管理が容易
- Perl で記述されているので、多くの環境で動作する
- plugin の作成のためのプログラム言語はなんでも良く、書き方も比較的容易
munin は「master」と「node」が存在する。ここでは一つのサーバに「master」と「node」をインストールしているが、通常は「node」しかインストールしないサーバ等も存在することになる。
インストール
インストール手順を書いた fabfile は以下。「fab install」でインストールできる。
この記事を書いた時点では、deb ファイルがまだ 2.0.6 しかなかったので、2.0.6 をインストールしている。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from fabric.decorators import task
from fabric.api import (
sudo,
run,
cd,
env,
)
@task
def install():
"""
munin 2.0 インストール
"""
# 依存ファイルのインストール
sudo('apt-get update')
sudo('apt-get -y install librrds-perl '
'rrdtool '
'liblog-log4perl-perl '
'ttf-dejavu '
'libdate-manip-perl '
'libcgi-fast-perl '
'libfile-copy-recursive-perl '
'libio-socket-inet6-perl '
'librrd4 '
'libfcgi-perl '
'libyaml-syck-perl '
'libsocket6-perl '
'liblist-moreutils-perl '
'libnet-server-perl '
'libio-multiplex-perl '
'libnet-cidr-perl '
'libnet-snmp-perl '
'libhtml-template-perl '
'liburi-perl '
'gawk ')
etc_dict = {
'urlpath': 'http://ftp.jp.debian.org/debian/pool/main/m/munin/',
'ver': '2.0.6-1',
}
with cd(env.path):
deb_tpl = (
'munin-common_{ver}_all.deb'.format(**etc_dict),
'munin_{ver}_all.deb'.format(**etc_dict),
'munin-plugins-core_{ver}_all.deb'.format(**etc_dict),
'munin-node_{ver}_all.deb'.format(**etc_dict),
)
# ダウンロード
for deb in deb_tpl:
run('wget {urlpath}/{deb}'.format(deb=deb, **etc_dict))
# インストール
for deb in deb_tpl:
sudo('dpkg -i {deb}'.format(deb=deb))
起動
基本的には自動起動するはず。
「/etc/init.d/munin-node」および、「/etc/cron.d/munin」、「/etc/cron.d/munin-node」を確認する。
ディレクトリ
ディレクトリを確認しておく必要がある。
- 設定ファイル:/etc/munin
- 記録ファイル:/var/lib/munin
- HTMLファイル:/var/cache/munin/www
- ログ:/var/log/munin
- pid:/var/run/munin
細かい設定は、設定ファイルで実施するが、とりあえずこの記事ではインストールまでとする。
nginxの設定
http 経由でグラフを見えるように設定する。
以下のような設定を nginx の設定に追加すれば、「http://ip/munin/」でグラフを見ることが可能になる。
# munin
location ^~ /munin/ {
alias /var/cache/munin/www/;
}
以上