So-net無料ブログ作成
  • ブログをはじめる
  • ログイン

pnp4nagiosのインストール [nagios]

前回に続いて、pnp4nagiosのインストールを行う。
参考にしたのは以下のサイト

PNP4Nagios
http://docs.pnp4nagios.org/start

PNP4Nagios(0.6.2)のインストール
http://junrei.dip.jp/wordpress/nagios/pnp4nagios%EF%BC%880-6-2%EF%BC%89%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

★前提条件★
Redhat Linux ES4
nagios 3.2.1
pnp4nagios 0.6.4

★準備★
Perl5.X以上
RRDtool
PHP5.2以上
nagios2.X以上

RRDtoolはパッケージ(RPM)インストール
PHP5.2.13はソースからインストール
※RH ES4はRPMではPHP4.Xしか提供されていないため。

★インストール★
pnp4nagiosをダウンロード
ダウンロードしたtarファイルを解凍
tar zxvf pnp4nagios-0.6.4.tar.gz
cd pnp4nagios-0.6.4
./configure
make all
make install

デフォルトでは /usr/local/ 配下にインストールされる。
その後、設定ファイル等をインストールするため、以下実行。

make install-webconf
make install-config
make install-init

上記3つをまとめて実行する場合は以下でOK(らしい)

make fullinstall

****************************************
反映するためにapache(httpd)を再起動する。
service httpd restart
****************************************

★設定★
pnp4nagiosには3つのモードがある。
http://docs.pnp4nagios.org/pnp-0.6/config

1.Synchronous Mode
2.Bulk Mode
3.Bulk Mode with NPCD

一番単純なモデルが1で、パフォーマンスが一番良いのが3である。
ここ、はまりました。
そのため、一番単純な1を実行することにした。

仕組みとしてはperfdata.plを呼び出して、nagiosの他のプラグインが収集するデータを集める。
集めたデータをRRDtoolに渡し、XMLに書き出すというもの。

■nagios.cfg
まずは、nagiosからperfdata.plを呼び出せるように設定ファイルを編集する。

/usr/local/nagios/etc/nagios.cfg内にある以下のディレクティブを以下の通りにする。

process_performance_data=1
enable_environment_macros=1
service_perfdata_command=process-service-perfdata
host_perfdata_command=process-host-perfdata

■command.cfg
次にcommand.cfgを編集する。

define command {
   command_name process-service-perfdata
   command_line /usr/bin/perl
  /usr/local/pnp4nagios/libexec/process_perfdata.pl
}
define command {
   command_name process-host-perfdata
   command_line /usr/bin/perl
  /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
}

Note: nagios 3.Xは/usr/local/perlは指定する必要がないので、以下のようにしてもOK

define command {
   command_name process-service-perfdata
   command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl
}
define command {
   command_name process-host-perfdata
   command_line
  /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
}

★インストール結果のチェック★

PNP4Nagiosには実際にちゃんと動作するかどうかをチェックする仕組みがある。
ブラウザで以下のURLにアクセスする。<servername>は適宜、置き換えて下さい。

http://<servername>/pnp4nagios/

そうすると各コンポーネントが正しく設定されているかどうかが表示される。
エラーがあると進めない。

自分の場合は、phpのバージョンとget_magic_quotes_gpcでハマる。(後述)
結果がOKであれば、/usr/local/pnp4nagios/share/install.phpをリネームするか、削除する。

mv /usr/local/pnp4nagios/share/install.php /usr/local/pnp4nagios/share/install.php.org

■process_perfdata.cfg
process_perfdata.plの設定ファイルを編集する。
設定ファイルは/usr/local/pnp4nagios/etc/配下にある。

mv process_perfdata.cfg-sample process_perfdata.cfg

ログの出力レベルを詳細にするために、このファイルの中の以下のディレクティブを変更する。
する必要がなければデフォルトのまま、0にする。

LOG_LEVEL=2

★表示する★
上記までが実際に使えるまでの準備作業。
ここから、実際に収集した各サーバ、サービスごとのパフォーマンスデータを表示するための設定を行う。

■template.cfg
/usr/local/nagios/etc/objects/template.cfgに以下の記述を追記。

define host {
   name host-pnp
   action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=_HOST_
   register 0
}
define service {
   name srv-pnp
   action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
   register 0
}


■localhost.cfg
localhost.cfgに以下のように編集する。
ちなみに、セミコロンから始まる部分はコメントになる。
最初の”define host"から始まる部分は、ホスト名、エイリアス(別名)、IPアドレスを定義している。
もうひとつの"define service"はサービスを定義しており、ここではPINGによる監視サービスを定義している。詳細は別途エントリを書くことにしたい。

define host{
   use linux-server,host-pnp ; Name of host templates to use
                                      ; This host definition will inherit all variables that are defined
                                      ; in (or inherited by) the linux-server host template definition.
  host_name localhost
   alias localhost
   address 127.0.0.1
}
define service{
   use local-service,srv-pnp ; Name of service template to use
   host_name localhost
   service_description PING
   check_command check_ping!100.0,20%!500.0,60%
}


★再起動★


設定内容に間違いがないかどうかをチェックする。

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

エラーが出るとメッセージが出力されるので、内容を確認して修正する。OKだと以下のようなメッセージが出力される。

Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

設定を反映させるため、nagios を再起動する。

service nagios restart


nagiosにアクセスする。
http://<servername>/nagios/

ホスト情報や,サービス情報を開くと爆発したようなアイコンが追加されるのに気づく。
ここをクリックするとグラフが表示される。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:[必須]
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は180日以上新しい記事の更新がないブログに表示されております。