2008/12/30(火)サーバやネットワークトラフィックの管理ツール― Munin 【後編】

2017/10/11 7:42 サーバ運営・管理
Munin には、インストールされた機器自身の構成をチェックし、ある程度の情報が最初から取得できるようにすることができます。

root で以下のコマンドを実行します。
# /usr/local/munin/sbin/munin-node-configure --shell | sh

そうすると、/usr/local/etc/munin/plugins 配下にシンボリックリンクの形で取得できそうな情報がプラグインの形で設定されます。

次に /usr/local/etc/munin/munin-node.conf を編集。
変更箇所は、

user munin
group munin
allow ^127\.0\.0\.1$
allow ^172\.16\.1\.20$
← 他ホストで情報収集する場合、そのホストのIPアドレスを追加。

この程度で良いはず。
その次に /usr/local/etc/munin/munin.conf を編集。
変更箇所は、

dbdir /db/munin
htmldir /home/webroot/hankakusai.basekernel.co.jp/htdocs/munin
logdir /var/log/munin
rundir /var/run/munin

[hankakusai.basekernel.co.jp]
address 127.0.0.1
use_node_name yes


こんな感じです。
情報取得対象ホストがそれ自身の場合は、 address に 127.0.0.1 を指定します。そうでない場合は、該当ホストの IP アドレスを指定します。そのとき、対象ホスト上で munin を稼動させ、munin-node.conf の allow ディレクティブにて、アクセス許可しておく必要があります。

dbdir は、取得情報を保存するディレクトリ
htmldir は、生成する html ファイルを保存するディレクトリ
(このディレクトリは外部からWebブラウザで閲覧できる位置にする必要あり)
logdir は、munin の動作ログ格納ディレクトリ
rundir は、pid などを格納するディレクトリ

で、全て UID munin で書き込みできるようにディレクトリパーミッションを設定しておく必要があります。

最後に crontab -u munin -e で、
*/5 * * * * /usr/local/munin/bin/munin-cron
として、5分毎に実行するようにして、設定完了です。
5分ごとにグラフが描画され、更新しているのが確認できれば、正常稼動できています。

ということで、20台ほどのサーバを munin で集中管理する環境が構築できました。

2008/12/13(土)サーバやネットワークトラフィックの管理ツール― Munin 【前編】

2017/10/11 7:44 サーバ運営・管理
数ヶ月前、この手のツールに Zabbix を導入したのですが、想像をはるかに超える勢いで取得情報のデータベースが肥大化し、貧弱な設備では半年も持たないことが判明した(爆)ので、急遽管理ツールの変更を迫られたのでした。
一度、採用候補にしていたのですが、日本語の情報が少ないので、Zabbix導入の際、ボツにしたこの Munin を何とかインストールしたのです。
メモリ状況 Munin は、「ムーニン」と言うのでしょうか? どうしても「ムーミン」と読んでしまうのは、自分だけでは無い と思うのだが、、
左記のような感じで、いろいろな情報を表示できるようです。

Munin は、perl スクリプトの集合体です。
入手場所はこちら → [トップページ] [ダウンロード]
ダウンロードの際は、最初は stable版で。




インストールの際は、予め以下のものが必要です。
・RRDTool 1.2.x
・Net::SNMP (Perl モジュール)
・Net::Server(perl モジュール)
・Crypt::DES(perl モジュール/ Net::SNMP が依存)
・Digest::HMAC(perl モジュール/ Net::SNMP が依存)
・Digest::SHA1(perl モジュール/ Net::SNMP が依存)
・HTML::Template(perl モジュール)

インストールの際は、更にいくつか前作業が必要。
・ユーザ名 munin, グループ名 munin を作成。UID,GID は 4949 あたりで良い。
・tar.gz ファイルを解凍し、作成されたディレクトリの中の Makefiie.config をインストールしたい対象マシンに合わせて編集。
・環境変数 PATH の中に './' (カレントパス) が入っていたら、削除したものを再設定しておく。
 カレントディレクトリが環境変数 PATH に入っていると、perl の環境汚染チェック(-T スイッチ) に引っかかり、動作に支障が出る。← これに填まりました。。

準備が出来たら、
gmake install-main
gmake install-node install-node-plugins

で本体をインストール。

インストール自体はこれで完了ですが、利用できるようにするためには、更に設定が必要。