CentOS7

性能統計グラフ追加(Nagios+PNP4Nagios)

NagiosのアドオンPNP4Nagiosを導入して、Nagios監視項目の性能統計データをグラフ化する。

Nagios導入済であることが前提

PNP4Nagiosインストール

[root@localhost ~]# yum -y install rrdtool php-gd ← PNP4Nagiosに必要なパッケージインストール
[root@localhost ~]# wget http://downloads.sourceforge.net/project/pnp4nagios/PNP-0.6/pnp4nagios-0.6.25.tar.gz ← PNP4Nagiosダウンロード
※最新版のURLはダウンロードページで確認すること
[root@localhost ~]# tar zxvf pnp4nagios-0.6.25.tar.gz ← PNP4Nagios展開
[root@localhost ~]# cd pnp4nagios-0.6.25/ ← PNP4Nagios展開先ディレクトリへ移動
[root@localhost pnp4nagios-0.6.25]# ./configure && make all && make fullinstall ← PNP4Nagiosインストール
[root@localhost pnp4nagios-0.6.25]# cd ← PNP4Nagios展開先ディレクトリを抜ける
[root@localhost ~]# rm -rf pnp4nagios-0.6.25 ← PNP4Nagios展開先ディレクトリを削除
[root@localhost ~]# rm -f pnp4nagios-0.6.25.tar.gz ← ダウンロードしたファイルを削除
[root@localhost ~]# systemctl restart httpd ← Apache再起動

http://サーバー名/pnp4nagios/へアクセスして全項目グリーン表示されることを確認

[root@localhost ~]# rm -f /usr/local/pnp4nagios/share/install.php ← インストールスクリプト削除

PNP4Nagios設定

PNP4Nagios設定

[root@localhost ~]# vi /usr/local/pnp4nagios/etc/config_local.php ← PNP4Nagios設定ファイル編集
#
# Date format
#
$conf['date_fmt'] = "Y.m.d G:i"; ← 日付形式をYYYY.MM.DDにする
[root@localhost ~]# wget "https://exchange.nagios.org/components/com_mtree/attachment.php?link_id=4174&cf_id=24" -O check_mem ← check_memプラグインのPNPテンプレートダウンロード
[root@localhost ~]# /bin/mv check_mem.php /usr/local/pnp4nagios/share/templates.dist/ ← check_memプラグインのPNPテンプレートを所定のディレクトリへ移動
[root@localhost ~]# wget "https://exchange.nagios.org/components/com_mtree/attachment.php?link_id=4105&cf_id=29" -O check_traffic.php ← check_traffic_pnp4naiosプラグインのPNPテンプレートダウンロード
[root@localhost ~]# mv check_traffic.php /usr/local/pnp4nagios/share/templates.dist/ ← check_traffic_pnp4naiosプラグインのPNPテンプレートを所定のディレクトリへ移動
[root@localhost ~]# vi /usr/local/pnp4nagios/share/templates.dist/check_traffic.php ← check_traffic_pnp4naiosプラグインのPNPテンプレート編集
<?php
$ds_name[1] = "Traffic Usage"; ← 追加(表タイトル)
$opt[1] = "--vertical-label bits/s --title \"Traffic for $hostname / $servicedesc\" ";

Nagios設定

[root@localhost ~]# vi /usr/local/nagios/etc/nagios.cfg ← nagios.cfg編集
process_performance_data=1 ← パフォーマンスデータ取得を有効化

host_perfdata_command=process-host-perfdata ← ホストパフォーマンスデータ取得コマンドを有効化
service_perfdata_command=process-service-perfdata ← サービスパフォーマンスデータ取得コマンドを有効化

以下を最終行へ追加
#
# service performance data
#
service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata
service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=15
service_perfdata_file_processing_command=process-service-perfdata-file

#
# host performance data starting with Nagios 3.0
#
host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdata
host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$
host_perfdata_file_mode=a
host_perfdata_file_processing_interval=15
host_perfdata_file_processing_command=process-host-perfdata-file
[root@localhost ~]# vi /usr/local/nagios/etc/objects/commands.cfg ← commands.cfg編集
--削除(ここから)--
# 'process-host-perfdata' command definition
define command{
command_name process-host-perfdata
command_line /usr/bin/printf "%b" "$LASTHOSTCHECK$\t$HOSTNAME$\t$HOSTSTATE$\t$HOSTATTEMPT$\t$HOSTSTATETYPE$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$\n" >> /usr/local/nagios/var/host-perfdata.out
}
# 'process-service-perfdata' command definition
define command{
command_name process-service-perfdata
command_line /usr/bin/printf "%b" "$LASTSERVICECHECK$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICESTATE$\t$SERVICEATTEMPT$\t$SERVICESTATETYPE$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$\n" >> /usr/local/nagios/var/service-perfdata.out
}
--削除(ここまで)--
以下を最終行へ追加
define command{
command_name process-service-perfdata-file
command_line /bin/mv /usr/local/pnp4nagios/var/service-perfdata /usr/local/pnp4nagios/var/spool/service-perfdata.$TIMET$
}
define command{
command_name process-host-perfdata-file
command_line /bin/mv /usr/local/pnp4nagios/var/host-perfdata /usr/local/pnp4nagios/var/spool/host-perfdata.$TIMET$
}
[root@localhost ~]# vi /usr/local/nagios/etc/objects/templates.cfg ← templates.cfg編集

[root@localhost ~]# /etc/rc.d/init.d/npcd start ← NPCD起動
[root@localhost ~]# chkconfig npcd on ← NPCD自動起動設定
[root@localhost ~]# /etc/rc.d/init.d/nagios restart ← Nagios再起動

PNP確認

http://サーバー名/nagios/へアクセスし、「ホスト」または「サービス」でをクリックして性能統計グラフが表示されることを確認。

※一部監視項目はパフォーマンスデータを出力しないため、グラフ表示できない


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS