harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

GNU/Linux infra nagios 運用

nagiosgraph/1.install

投稿日:2010年11月25日

Last Updated on 2021年7月4日 by かんりにん

 
[pukiwiki]

*nagiosgraphインストールログ [#x0215ac2]
nagiosgraphの導入ログ。

参考資料:nagiosgraph本家サイト
http://nagiosgraph.svn.sourceforge.net/viewvc/nagiosgraph/trunk/nagiosgraph/INSTALL

**事前情報 [#tdc51e9e]

-phpのバージョンについて
pnp4nagiosはphp5.2以上が動作条件だったが、nagiosgraphは制限無し。
よってCentOSのRPM版php(5.1.6)でも動作する。
-依存関係パッケージ
rpmforgeからインストールするrrdtoolのRPMパッケージのほか
perlのモジュールを多数必要とする。
Installationドキュメントを見たところ
sudo yum install perl-rrdtool perl-GD
となっていたが、自分の環境ではぜんぜん足りなかったw
以下、CentOS5.*での環境セットアップ時に使用した依存関係パッケージをメモ(自分用)。
freetype
freetype-devel
gd
gd-devel
libart_lgpl
libpng
libpng-devel
perl-CGI-Ajax
perl-CGI-Application
perl-CGI-Application-Plugin-Output-XSV
perl-CGI-Application-Plugin-QueryHash
perl-CGI-Auth-Auto
perl-CGI-Cookie-Splitter
perl-CGI-Debug
perl-CGI-Ex
perl-CGI-FastTemplate
perl-CGI-GuruMeditation
perl-CGI-Lite
perl-CGI-Log
perl-CGI-Minimal
perl-CGI-Out
perl-CGI-PathInfo
perl-CGI-Persistent
perl-CGI-Prototype
perl-CGI-Response
perl-CGI-Screen
perl-CGI-Scriptpaths
perl-CGI-Session
perl-CGI-Session-Hidden
perl-CGI-Simple
perl-CGI-SpeedyCGI
perl-CGI-Untaint
perl-CGI-Untaint-date
perl-CGI-Untaint-email-0.03-
perl-CGI-Upload
perl-CGI-Validate
perl-CGI-WeT
perl-CGI-Widget
perl-CGI-WML
perl-CGI-XML
perl-CGI-XMLForm
rrdtool
rrdtool-devel

※OSインストール時に各種開発環境をインストール済みの場合は上記の限りではない。
不足しているパッケージは都度インストールしていく。

**nagiosgraphセットアップ環境 [#e90289c8]

インストール済みのnagios環境と出来るだけ合わせるためのセットアップ環境。
※一部nagios環境と統合できないものもある。

***1)nagiosgraphセットアップ環境 [#p6835b78]

セットアップにあたっての各種ファイルの配置先は以下の通り設定。
コンフィグ /usr/local/nagios/etc/nagiosgraph/
CGI /usr/local/nagios/sbin
ライブラリ /usr/local/nagios/libexec
共有ファイル /usr/local/nagios/share
ログ出力先 /usr/local/nagios/var/log

***2)rrdtoolバンドル環境 [#a4efd919]

nagiosgraphのドキュメントにて指定されている出力先。
特にカスタマイズすることなく、本家ドキュメントでの出力先を適用。
※apacheが値を取得できるディレクトリに出力する必要ありだが、INSTALLドキュメントを見る限りでは、うまく変更できそう。

perfdata.log出力先 /var/nagios/perfdata.log
rrddir /var/nagios/rrd

**インストールおよび初期設定 [#hff01e5a]

インストールといってもビルドやコンパイルはなく、アーカイブを展開し
コンフィグやライブラリを任意のディレクトリに配置していく。

***1)nagiosgraphインストール [#le2d2834]

$ pwd
/home/user/src
$ wget http://sourceforge.net/projects/nagiosgraph/files/nagiosgraph/1.4.3/nagiosgraph-1.4.3.tar.gz/download
$ tar -zxvf nagiosgraph-1.4.3.tar.gz
$ cd nagiosgraph-1.4.3
# mkdir /usr/local/nagios/etc/nagiosgraph
# chown nagios:nagios /usr/local/nagios/etc/nagiosgraph/
# cp -p etc/* /usr/local/nagios/etc/nagiosgraph/
-確認
# ll /usr/local/nagios/etc/nagiosgraph/
total 172
-rw-r–r– 1 nagios nagios 879 Mar 15 2010 access.conf
-rw-r–r– 1 nagios nagios 714 Mar 15 2010 datasetdb.conf
-rw-r–r– 1 nagios nagios 2251 Mar 15 2010 groupdb.conf
-rw-r–r– 1 nagios nagios 1446 Mar 15 2010 hostdb.conf
-rw-r–r– 1 nagios nagios 2717 Mar 15 2010 labels.conf
-rw-r–r– 1 nagios nagios 13312 Mar 15 2010 map
-rw-r–r– 1 nagios nagios 11840 Jun 8 01:30 nagiosgraph.conf
-rw-r–r– 1 nagios nagios 793 Mar 15 2010 nagiosgraph_de.conf
-rw-r–r– 1 nagios nagios 865 Mar 15 2010 nagiosgraph_es.conf
-rw-r–r– 1 nagios nagios 935 Mar 15 2010 nagiosgraph_fr.conf
-rw-r–r– 1 nagios nagios 99606 Jun 8 01:30 ngshared.pm
-rw-r–r– 1 nagios nagios 660 Feb 19 2010 rrdopts.conf
-rw-r–r– 1 nagios nagios 480 Mar 15 2010 servdb.conf
-パスの編集
対象ファイル内の”use lib”で指定している設定ファイルの格納ディレクトリのパスを編集する。
–対象ファイルを編集
# vi cgi/*.cgi lib/insert.pl
–[編集箇所]
指定するパスはインストール環境に応じて変わるので、自分の環境に合わせて都度読み替える。
use lib ‘/opt/nagiosgraph/etc’;

use lib ‘/usr/local/nagios/etc/nagiosgraph’;
-各ファイルのコピー
# cp -p lib/insert.pl /usr/local/nagios/libexec
# cp -p cgi/*.cgi /usr/local/nagios/sbin
# cp -p share/nagiosgraph.css /usr/local/nagios/share
# cp -p share/nagiosgraph.js /usr/local/nagios/share

***2)rrdtool実行環境作成 [#ra147356]

※当初/usr/local/nagios/var以下に作成しようとしたところ
apacheのプロセスのリード権限が無いためエラーに。
nagiosgraphの公式マニュアルに沿って/var/nagiosディレクトリを作成。

# mkdir /var/nagios/
# chown nagios.nagios /var/nagios/
# touch /var/nagios/perfdata.log
# chown nagios:nagios /var/nagios/perfdata.log
# chmod 644 /var/nagios/perfdata.log

-rrd用ディレクトリ作成
# mkdir /var/nagios/rrd
# chown nagios:nagios /var/nagios/rrd
# chmod 755 /var/nagios/rrd

-nagiosgraphのログファイル作成
※以下の例は、$NAGIOSROOT/var以下にlog/ディレクトリを作成し、その下にログファイルを作成している例。
こちらも環境により都度パスを変更する。
# touch /usr/local/nagios/var/log/nagiosgraph.log
# chown nagios.nagios /usr/local/nagios/var/log/nagiosgraph.log
# chmod 644 /usr/local/nagios/var/log/nagiosgraph.log
# touch /usr/local/nagios/var/log/nagiosgraph-cgi.log
# chown nagios.nagios /usr/local/nagios/var/log/nagiosgraph-cgi.log
# chmod 644 /usr/local/nagios/var/log/nagiosgraph-cgi.log
# ll /usr/local/nagios/var/log/
total 8
-rw-r–r– 1 nagios nagios 0 Nov 22 19:04 nagiosgraph-cgi.log
-rw-r–r– 1 nagios nagios 0 Nov 22 19:03 nagiosgraph.log
-rw-rw-r– 1 nagios nagios 4724 Nov 22 18:50 nagios.log

***2)nagiosgraph.conf編集 [#c2f37cbf]

# cd /usr/local/nagios/etc/nagiosgraph/
# cp -p nagiosgraph.conf nagiosgraph.conf.org
# vi nagiosgraph.conf
-[編集箇所]
11c11
< logfile = /var/log/nagiosgraph.log — > logfile = /usr/local/nagios/var/log/nagiosgraph.log
17c17
< perflog = /var/nagios/perfdata.log — > perflog = /var/nagios/perfdata.log
20c20
< rrddir = /var/nagiosgraph/rrd — > rrddir = /var/nagios/rrd
23c23
< mapfile = /etc/nagiosgraph/map — > mapfile = /usr/local/nagios/etc/nagiosgraph/map
26c26
< nagiosgraphcgiurl = /nagiosgraph/cgi-bin — > nagiosgraphcgiurl = /nagios/cgi-bin
33c33
< javascript = /nagiosgraph/nagiosgraph.js — > javascript = /nagios/nagiosgraph.js
36c36
< stylesheet = /nagiosgraph/nagiosgraph.css — > stylesheet = /nagios/nagiosgraph.css
76c76
< debug = 3 — > debug = 5

***3)nagios側設定 [#w7d663bb]

nagiosプロセスがnagiosgraphを使用するための設定変更及び追加を行う。

3-1.nagios.cfg
process_performance_data=1
service_perfdata_file=/var/nagios/perfdata.log
service_perfdata_file_template=$LASTSERVICECHECK$||$HOSTNAME$||$SERVICEDESC$||$SERVICEOUTPUT$||$SERVICEPERFDATA$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=30
service_perfdata_file_processing_command=process-service-perfdata

3-2.command.cfg

nagios.cfg内の”service_perfdata_file_processing_command”で指定した
コマンド定義パラメータ””process-service-perfdata””を編集。
nagiosgraphの実行スクリプトをコマンドラインとして登録する。

# cd /usr/local/nagios/etc/objects/
# cp -p commands.cfg commands.cfg.20101122
# vi commands.cfg
-[ 編集箇所 ]
242c242,243
< 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

> #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
> command_line /usr/local/nagios/libexec/insert.pl

上記設定変更後、nagios再起動にてグラフの生成を確認(10~15分程度)。
[/pukiwiki]
 
 

 

-GNU/Linux, infra, nagios, 運用
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

[メモ]7zip(linux版)

[pukiwiki] #contents たまたまlinux環境で使用する必要が出たので、インストール。 -公開サイト http://p7zip.sourceforge.net/ -ダウンロードページ …

no image

postfixウィルス対策[ClamAV]

[pukiwiki] #topicpath &lastmod; testuser #contents *postfixウィルス対策 タイトルはpostfixadmin/ウィルス対策となっているが 実際 …

no image

script​/標準入力の判定(case文)

[pukiwiki] ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出 …

no image

net-snmp snmpd.logの設定を追加、変更

[pukiwiki] 某VPSサービスで借りた仮想サーバーでsnmpdを動かしたところ、ログがどこにも出ていなかったのでログ出力設定を追加。 たまたまだと思いつつ、設定状況は環境によって様々だと思うの …

no image

インフラ運用の心得:最低限やっておくこと

[pukiwiki] #contents *インフラ運用に最低限やっておくこと [#m5d8ab99] 以下の整備については、”呼吸するのと同じくらい当たり前のこと”としてやっ …