CentOS 5.4 に munin(サーバー監視ツール) をインストール MRTG/cacti

▼munin 本家サイト
http://munin-monitoring.org/

munin って何?

munin(ムーニン)は、オープンソースで公開されているサーバー監視、グラフ化ツールです。
MTRG/cacti などと同様のツールです。

主な特徴

  • 比較的導入が簡単
  • プラグインによる取得データの拡張が出来る
  • グラフ化部(マスター)とデータ取得部(ノード)が違うプログラムになっている

マスター(munin)とノード(munin-node)の役割

マスター: データ収集 + グラフ化
ノード: マスターへのデータ提供

▼munin のインストール
基本的に munin を yum でインストールします。
しかし、CentOS-Base.repo では munin のパッケージが見つからないので
dag.repo を使用して munin のインストールをします。

▼そこで、yum レポジトリの追加(dag.repo)
参考:http://mt.mizba.net/archives/001205.php

$ sudo vi /etc/yum.repos.d/dag.repo

[dag]
name=Dag RPM Repository for redhat
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag
enabled=0   # enabled は0にして必要な時だけ有効にします
gpgcheck=1

続いて PGP key をインポートします。

$ sudo rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

これで dag.repo の設定は完了です。

▼次に munin を使用するに当たって必要になるアプリケーションのインストール
今回は「情報を集積するサーバ(マスター)」と「監視対象になるサーバ(ノード)」を
同一のサーバにするため munin と munin-node の両方をインストールします。

自分の場合は以下のようになりました。
※各自の環境によって違うと思います。

$ sudo yum --enablerepo=dag install munin munin-node

================================================================================
 Package                           Arch        Version              Repository  
================================================================================
Installing:
 munin                             noarch      1.2.5-2.el5.rf       dag         
 munin-node                        noarch      1.2.5-2.el5.rf       dag         
Installing for dependencies:
 perl-Compress-Zlib                i386        1.42-1.fc6           base        
 perl-Crypt-DES                    i386        2.05-3.2.el5.rf      rpmforge    
 perl-DateManip                    noarch      5.44-1.2.1           base        
 perl-Digest-HMAC                  noarch      1.01-15              base        
 perl-HTML-Parser                  i386        3.64-1.el5.rf        rpmforge    
 perl-HTML-Tagset                  noarch      3.20-1.el5.rf        rpmforge    
 perl-HTML-Template                noarch      2.9-1.el5.rf         rpmforge    
 perl-Net-SNMP                     noarch      5.2.0-1.2.el5.rf     rpmforge    
 perl-Net-Server                   noarch      0.97-1.el5.rf        rpmforge    
 perl-Socket6                      i386        0.23-1.el5.rf        rpmforge    
 perl-URI                          noarch      1.35-3               base        
 perl-libwww-perl                  noarch      5.805-1.1.1          base        

Transaction Summary
================================================================================
Install     14 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

▼続いて munin の設定です。
といっても特に必要ないと思います。

作られたファイルは以下の設定ファイルを見ると分かります。
※各自の環境によって違うと思いますが。
設定ファイルは /etc/munin/munin.conf です。

自分の環境では、以下のようになっていました。

  ・htmldir /var/www/munin
  
  ・/etc/httpd/conf.d/munin.conf
    ScriptAlias /munin/cgi/ /var/www/munin/cgi/
    Alias /munin/ /var/www/munin/

▼設定ファイルの確認が終わったら munin の起動と apache の再起動をします。
・munin の起動及び自動起動設定

    $ sudo /etc/init.d/munin-node start
    Starting Munin Node:       [  OK  ]

    $ sudo /sbin/chkconfig --list munin-node
    munin-node      0:off   1:off   2:off   3:off   4:off   5:off   6:off
    
    off になっていたら、以下コマンドを実行
    $ sudo /sbin/chkconfig munin-node on
    $ sudo /sbin/chkconfig --list munin-node
    munin-node      0:off   1:off   2:on    3:on    4:on    5:on    6:off

上記のようになったら自動起動 OK!

・apache を再起動します。
munin を起動してからは5分おきにグラフが更新されるようになります。

    $ sudo /etc/init.d/httpd restart

apache の再起動が完了したら http://localhost/munin/ にアクセスし
munin の状況を見てみましょう。

munin-graph

このように、MRTG/cacti とよく似た感じのグラフィカルなグラフで
負荷状況やサーバー状態などを確認出来ます。

MRTG/cacti よりもインストール設定などが簡単なので是非とも
導入してみては如何でしょうか。

最近欲しい(読みたい)と思う本

最近、下記の本が読みたいなあと思ってます。
買い忘れがないようにメモ。

[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)

# 単行本(ソフトカバー): 384ページ
# 出版社: 技術評論社 (2008/8/7)
# ISBN-10: 4774135666
# 商品の寸法: 20.8 x 15 x 2.2 cm

アマゾンでの評価も高いみたいですし!
http://www.amazon.co.jp/dp/4774135666/

CSRの生成方法 Apache2 OpenSSL

CSRの生成方法(SSLサーバー証明書)メモです。

参考URL:
http://jp.globalsign.com/support/index.php?action=artikel&cat=4&id=18&artlang=ja

http://x68000.q-e-d.net/~68user/net/ssl-setup-1.html

※本例では以下環境を前提としています。
ご自分の環境に合わせて任意に読み替えてご覧ください。

コモンネーム(common name) ssl.globalsign.com
confディレクトリまでのパス /etc/httpd/conf/
秘密鍵の保存ディレクトリ /etc/httpd/conf/ssl.key/
CSRの保存ディレクトリ /etc/httpd/conf/ssl.csr/
秘密鍵のファイル名 ssl.globalsign.com.key
CSRのファイル名 ssl.globalsign.com.csr

1.OpenSSLがインストールされているか確認してください。

# openssl version
OpenSSL 0.9.8b 04 May 2006

次にApacheの confのパスに移動してください。

# cd /etc/httpd/conf

2.秘密鍵を生成します。

既存のファイルに上書きをしないようご注意ください。
ここで入力するパスフレーズを忘れてしまうと使用することができなくなります。

※更新の場合、既に存在する鍵を誤って上書きしないようご注意ください。
ファイル名に年度を入れるか、鍵のバックアップを取った上でおこなうことをお勧めします。

# openssl genrsa -des3 -out ./ssl.key/ssl.globalsign.com.key 1024

3.CSRを生成します。

パスフレーズ入力後、各項目を半角英数字で入力します。コマンドは1行です。

# openssl req -new -key ./ssl.key/ssl.globalsign.com.key -out ./ssl.csr/ssl.globalsign.com.csr

※ 半角英数文字 および半角スペース[ ]、ハイフン[-]、ドット[.]、アンダースコア[_]、カンマ[,]、プラス[+]、
スラッシュ[/]、かっこ[(]、閉じかっこ[)]がご利用可能です。

※ ワイルドカードオプションをご利用の場合は、Common Nameにアスタリスク[*]を含めてください。例: *.globalsign.com

フィールド 説明
Country Name 国を示す2文字のISO略語です。 JP
State or Province Name 組織が置かれている都道府県です。 Osaka
Locality Name 組織が置かれている市区町村です。 Osaka-shi
Organization Name 組織の名称です。 GlobalSign
Organization Unit Name 組織での部署名です。
※指定がない場合は – (ハイフン)を入力してください。
Sales
Common Name ウェブサーバのFQDNです。 ssl.globalsign.com
Email Addres 入力不要です。
A challenge password 入力不要です。
An optional company name 入力不要です。

企業認証をご利用の場合、サイトシールに表示される項目です。

詳細な番地はお申し込みの際に入力いただきます。

例) sakuragaoka 20-1

▼補足ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

※ [ ] の部分はご自分の環境に合わせて読み替えてください。

1. 秘密鍵の内容を確認

# openssl rsa -text -noout -in /[FilePath]/[KeyFile]

2. 秘密鍵のパスフレーズを解除
(Windows版のApacheでは、秘密鍵のパスフレーズを解除する必要があります。)

# cp /[FilePath]/[KeyFile] /[FilePath]/[KeyFile].org (元ファイルのバックアップ)
# openssl rsa -in /[FilePath]/[KeyFile] -out /[FilePath]/[KeyFile]

3. CSRの内容を確認

# openssl req -text -noout -in /[FilePath]/[CSR]

4. 証明書の内容を確認

# openssl x509 -text -noout -in /[FilePath]/[CertFile]