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ファイルを解凍
デフォルトでは /usr/local/ 配下にインストールされる。
その後、設定ファイル等をインストールするため、以下実行。
上記3つをまとめて実行する場合は以下でOK(らしい)
****************************************
反映するためにapache(httpd)を再起動する。
★設定★
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内にある以下のディレクティブを以下の通りにする。
■command.cfg
次にcommand.cfgを編集する。
Note: nagios 3.Xは/usr/local/perlは指定する必要がないので、以下のようにしてもOK
★インストール結果のチェック★
PNP4Nagiosには実際にちゃんと動作するかどうかをチェックする仕組みがある。
ブラウザで以下のURLにアクセスする。<servername>は適宜、置き換えて下さい。
http://<servername>/pnp4nagios/
そうすると各コンポーネントが正しく設定されているかどうかが表示される。
エラーがあると進めない。
自分の場合は、phpのバージョンとget_magic_quotes_gpcでハマる。(後述)
結果がOKであれば、/usr/local/pnp4nagios/share/install.phpをリネームするか、削除する。
■process_perfdata.cfg
process_perfdata.plの設定ファイルを編集する。
設定ファイルは/usr/local/pnp4nagios/etc/配下にある。
ログの出力レベルを詳細にするために、このファイルの中の以下のディレクティブを変更する。
する必要がなければデフォルトのまま、0にする。
LOG_LEVEL=2
★表示する★
上記までが実際に使えるまでの準備作業。
ここから、実際に収集した各サーバ、サービスごとのパフォーマンスデータを表示するための設定を行う。
■template.cfg
/usr/local/nagios/etc/objects/template.cfgに以下の記述を追記。
参考にしたのは以下のサイト
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/
ホスト情報や,サービス情報を開くと爆発したようなアイコンが追加されるのに気づく。
ここをクリックするとグラフが表示される。







コメント 0