Munin 2.0 をRPMパッケージ(epel-testing)で入れてみた

Munin 2.0 をRPMパッケージ(epel-testing)で入れてみた はてなブックマーク - Munin 2.0 をRPMパッケージ(epel-testing)で入れてみた


リソース推移監視ツールの Munin 2.0。バージョンアップで、色々便利になって使い勝手も向上。

ただ、Red Hat Enterprise Linux 環境では、まだ正式な RPM パッケージが出ていないので、セットアップがチョット面倒(´・ω・`)

でも、気がついたら Red Hat Enterprise Linux  向けの RPM パッケージが開発中です。EPRL (Extra Packages for Enterprise Linux) の有志の方が作成されています。対象 OS は、RHEL5 および 6 でした。キタ━(゚∀゚)━ !!

折角公開されているのなら、試してみようということで、以下 RHEL5 環境における Munin 2.0.4 のセットアップ方法です( ^ω^)

★注意★ epel-testing リポジトリは開発途上の 【 人柱用 】 です。実環境でのご利用は、気をつけてください。特に yum update munin でバージョンアップはされますが、気づいた範囲でも munin.conf が上書きされるなど、開発途上である事が伺われます。アップデートは、十分に気をつけて、バックアップをとってお試し下さい。既に、何かしら稼働中のシステムで作業することは、おすすめ出来ないのです。。一応、お約束と言うことで。

◆ RHEL5 に Munin2.0 を RPM で入れる手順(1/4);EPELリポジトリ有効化

作業は、epel-testing リポジトリを有効にし、yum を使ってサクッっとインストールします。その後、いくつかコマンドを実行するだけで作業完了です(慣れたら5分程度)。

前提として、まず EPRL リポジトリを使えるようにする必要があります。もし有効にしていない場合は、このページを参考にしてリポジトリを有効にしてください。

【メモ】EPELリポジトリをRed Hat Enterprise Linuxで使うには
http://pocketstudio.jp/log3/2012/04/09/how_to_use_epel_repository_on_rhel/

次に、epel-testing を有効にします。epel-testing のレポジトリファイルを編集します。

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

[epel-testing]リポジトリに関する6 行目、「enabled=0」を「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

これでepel-testing が利用可能になります(なお、muninのセットアップ後は、再び enabled=0 にしておく事が、不用意なバージョンアップを避けるために安全と思います)。

◆手順(2/4) yum で munin-2 パッケージをインストール

次は、yum コマンドでインストールします。

# yum install munin

これだけで munin 本体と、munin-node (エージェント)、関連パッケージがすべてインストールされます。

Dependencies Resolved

==========================================================================================
 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

依存関係に問題が無いようであれば【 y 】を実行します。

Complete!

と表示されれば大丈夫です。

◆ (3/4) munin-node の起動と、BASIC 認証の設定

データを取得するための munin-node を起動します。

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

それから、サーバ起動時に munin-node も自動実行されるよう、ランレベルを変更&動作確認します。

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

それから、munin-node の、簡単な動作テストを行います。応答が出ない場合は、何かしら問題がありそうなので、各種ログをあたる必要がありそうです。

$ telnet localhost 4949
# munin node at node3.pocketstudio.net
version
munins node on node3.pocketstudio.net version: 2.0.4
quit

正常な応答があれば、このようにバージョン情報が表示されます。そのほか list (対応プラグインの一覧表)や fetch cpu (CPUの情報を取得)などを試すと良いですね。終了は quit です。

これで http://<サーバのホスト名か IP アドレス>/munin/ にセットアップがされています。次に、このページに BASIC 認証をかける設定を行います。以下、ID を admin にする場合の例です。

# htpasswd -c /etc/munin/munin-htpasswd admin
New password: *********
Re-type new password: *********
Adding password for user admin

これは Apache の設定ファイル /etc/httpd/conf.d/munin で、上のファイルを使って BASIC 認証を行う記述がある為です。認証をかけたくない場合は、設定ファイルを編集して BASIC 認証を外すこともできます。

次に、認証を有効にするため Apache を再起動します。再起動するまで BASIC 認証は有効になりません。

# /sbin/service httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

これでブラウザから URL にアクセスすると、認証の確認と、実際にデータが表示されます。

◆ (4/4) ズーミング機能を使う調整

これまでの手順で、最低限のグラフ描画は可能です。ですが、Munin 2.0 の新機能であるグラフのズーミング機能が利用できません。なので、少し手作業で有効にします。ズーミングについては、次の記事を参考にしてください。

【試してみた】Munin 2.0-betaを入れてリソースを監視してみた
http://pocketstudio.jp/log3/2012/02/15/munin2beta_review/

以下、ズーミング対応作業です。まず、cgi-bin に、CGI をコピーします。

# cp /var/www/html/munin/cgi/munin-cgi-* /var/www/cgi-bin/

これがないと、Apache のエラーログには “script not found or unable to stat: /var/www/cgi-bin/munin-cgi-graph” が延々と出続けます。

所有者情報を変更します。また、CGI 用の一時ディレクトリも作成します。

# chgrp apache /var/log/munin/
# chmod g+w /var/log/munin/
# mkdir /var/lib/munin/cgi-tmp/
# chown apache.apache /var/lib/munin/cgi-tmp/

CGI はログを出力しますが、適切な権限(Apache の所有者・グループである apache ユーザ権限)が無いと、ログの書き込みができません。この手順を踏まないと ” munin-cgi-graph: Can’t open /var/log/munin/munin-cgi-graph.log (Permission denied) at /usr/lib/perl5/vendor_perl/5.8.8/Log/Log4perl/Appender/File.pm line 102.” や、” munin-cgi-graph: Can’t open /var/log/munin/munin-cgi-graph.log” といったログが出続けます。

以上で、ズーミング機能が利用できるようになります。

1点、ログには “unin-cgi-graph: Name “Date::Manip::Backend” used only once: possible typo at /var/www/cgi-bin/munin-cgi-graph line 31″ が出続けます。基本、無視しても良いのですが、ログが汚くなるので

# vi /var/www/cgi-bin/munin-cgi-graph

でファイルを開き、31 行目の先頭に # を入れてコメントアウトすると出なくなります。

これで作業は完了です( ^ω^) yum を使って入れられるようになると、RHEL でもカナリ助かりますね。。

★備考1;人柱用 “epel-testing リポジトリ”の利用にあたっては、十分ご注意ください。fedora-extra 相当のパッケージですが、開発途上のため、様々な不具合が予想されます。

★備考2;CentOSは、今手許に環境用意できなかったので、誰か試してブログに書いていただけると、嬉しいかなって(他力本願)