Nagios でアクセス権のエラーが出る場合 [nagios]
nagiosでログ監視の際にこの機能を使えばアクセス権の関係でエラーになる場合(insufficient permissions)があります。
setfaclコマンドで解消出来ます。
詳しくはこちら参照。
setfaclコマンドで解消出来ます。
# setfacl --m u:nagios:r /var/log/maillog
詳しくはこちら参照。
NagVisを使ってみる(設定編) [nagios]
■準備作業
ホスト間の親子関係を定義する。
方法はホスト定義の記述に"parents"に親となるホスト名を指定する。
define host {host_name aaa・・・parents bbb <--- この部分を追記。}
■ログインについて
以下のURLにアクセスする。
nagvisにはデフォルトで以下のユーザーが用意されている。
ユーザー名:nagiosadmin パスワード:nagiosadmin
ユーザー名:guest パスワード:guest
guestユーザーは読み取り権限しかないので、ここではnagiosadminユーザーを使ってログインする。ログイン後の画面には [Map Index] [Automap index] [Rotation Pools]と言った表記がある。
それぞれいったい何かというと、マップインデックスは表示画面一覧とでもいうもので、マップというのはそれぞれ作成した表示画面のことである。
Automapはその名の通り、自動作成されたマップのことである。
そしてローテーションプールとは複数のマップを束ねて一定時間おきに自動でマップが切り替わるものである。その名の通りマップがローテーションしてくれるわけである。
初期画面で簡単なサンプルデモ画面がいくつか存在する。
これらのデモマップ画面を参考に編集してみる。
まず、基本的な仕組みとしては、背景に画像ファイルをおいて、その上にnagiosで定義した監視対象ホストのアイコンをブラウザ上で配置する。アイコンはNagiosと自動的にリンクしてくれるのでいくつかのプロパティを設定(と言っても結構細かい設定が可能)すればこだわりの監視画面が作成できる。
■閲覧モードから編集モードへ切り替える。
まず、[Map Index] にある[demo] をクリックしてマップを開く。
閲覧モードなので、編集する場合は画面上部のメニューバーの中から、Action -> Edit Current Map をクリックする。
そうすると、メニューバーに [Map] と [Options] というメニュー表示が増え、ブラウザ上で編集することが出来る。
■マップ全体のオプション変更
マップの背景画像や配置したアイコンオブジェクト共通のプロパティを変更する場合は Map -> Map Options をクリックする。
ただし、背景画像をあらかじめnagvisに登録しておく必要がある。
この場合、新規の画像ファイルを作成したあと、Options -> Manage Backgrouds をクリックし、
[Upload Background Image]の[Choose an Image] 欄に画像ファイルを指定してUploadボタンをクリックする。そうすると[Map Options] の[map_image] プルダウンメニューに先ほど登録した画像ファイルが選択可能になる。
■マップにアイコンを追加する
マップ上にホストアイコンを追加する場合は Map -> Add Icon -> Host をクリックする。
サービスオブジェクトを追加する場合は Map -> Add Icon -> Service をクリックする。
■アイコンの移動、編集、削除
画面上にある緑色のチェックボックスアイコンは四角がホスト(サーバ)、丸がサービスをしめしている。アイコンにマウスをあわせて左クリックしたままマウスを移動させるとアイコンもドラッグして移動する。右クリックするとプロパティ編集やクローンコピー、アイコンの削除が出来る。
プロパティの内容については本家ドキュメントに詳しく載っているのでこちらを参照。
NagVisを入れてみる (インストール編) [nagios]
NagiosのフロントエンドとしてNagVisと言うのを入れてみる。
Nagiosのマップ機能が弱かったりするのでUIを改善することを試みる。
元ネタは本家ドキュメントからです。
■必要なもの(Requirements)
Nagios
MKLivestatus
Webserver with PHP Support
PHP modules needed
php5-gd
php5-gettext
php5-mbstring
php5-session
php5-json
php5-pdo and pdo-sqlite
mklivestatusを使う場合は、php-net-socketまたはphp5-socketsが必要。
ndomy,merlinmyの場合は、php5-mysqlが必要。
ndo2fsの場合はphp5-xmlが必要。
graphviz
■PHPモジュールの確認
インストール済みのPHPモジュールを調べる。
# php -m | grep gd
追加でモジュールをインストールする
# yum install php-mbstring
■MKLivestatusのインストール
従来、NDOUtilsが必要だったが、NagVis1.5からはmklivestatusというのがデフォルトのようなのでそちらを入れることにする。
まずはmklivestatusをダウンロード&インストールする。
# tar zxvf mk-livestatus-1.1.11i2.tar.gz# cd mk-livestatus-1.1.11i2
手動でインストールする場合は以下の通り。
# configure# make# make install
自動インストールの場合、check_mk-1.1.11i2.tar.gzの中にサブセットとしてlivestatusは含まれており、check_mk-1.1.11i2.tar.gzを解凍した直下にsetup.shというスクリプトがあるのでこれを実行する。
その場合、livestatus.oというファイルが/usr/lib/check_mk配下にコピーされる。(パスを変更していない場合)
そして、モジュールをロードするために必要な2行の記述をnagios.cfgファイルに追加する。
ここはせっかくなので手動でインストールしてみる。
手順もWebサイトで丁寧に書かれているので安心。
上記の手動インストール手順を実行した後、nagios.cfgファイルに以下の2行を追加する。
broker_module=/usr/local/lib/mk-livestatus/livestatus.o /usr/local/nagios/var/rw/liveevent_broker_options=-1
Nagiosを再起動する。
# service nagios restart
そうすると、ソケットファイルが作成される。
また、ログファイルにモジュールがロードされたことが示される。
■graphviz のインストール
redhatにパッケージがあるのでこれを使う。
# yum install graphviz
■NagVisのダウンロード
本家サイトからダウンロード&解凍する。
# tar zxvf nagvis-1.5.10.tar.gz
インストーラーがあるので実行権を付与して実行する。
ちなみに1.5.10では実行権が付与されていたのでそのまま実行。
# cd nagvis-1.5.10# ./install.sh
実行するといろいろ聞いてくるので、適宜回答する。デフォルトのままの場合はEnterで。
+------------------------------------------------------------------------------+
| Welcome to NagVis Installer 0.2.17 |
+------------------------------------------------------------------------------+
| This script is built to facilitate the NagVis installation and update |
| procedure for you. The installer has been tested on the following systems: |
| - Debian Etch, Hardy (4.0, 5.0) |
| - Ubuntu Hardy, Intrepid, Jaunty, Karmic, Lucid (8.04 to 10.04) |
| - SuSE Linux Enterprise Server 10 and 11 |
| |
| Similar distributions to the ones mentioned above should work as well. |
| That (hopefully) includes RedHat, Fedora, CentOS, OpenSuSE |
| |
| If you experience any problems using these or other distributions, please |
| report that to the NagVis team. |
+------------------------------------------------------------------------------+
| Do you want to proceed? [y]: y
+------------------------------------------------------------------------------+
| Starting installation of NagVis 1.5.10 |
+------------------------------------------------------------------------------+
| OS : Red Hat Enterprise Linux Server release 6.1 (Santiago) |
| Perl: 5.010001 |
| |
+--- Checking for tools -------------------------------------------------------+
| Using packet manager /bin/rpm found |
| |
+--- Checking paths -----------------------------------------------------------+
| Please enter the path to the nagios base directory [/usr/local/nagios]:
| nagios path /usr/local/nagios found |
| Please enter the path to NagVis base [/usr/local/nagvis]:
| |
+--- Checking prerequisites ---------------------------------------------------+
| Nagios Core 3.2.3 found |
| PHP 5.3 found |
| PHP Module: gd php found |
| PHP Module: mbstring php found |
| PHP Module: gettext compiled_in found |
| PHP Module: session compiled_in found |
| PHP Module: xml php found |
| Apache mod_php found |
| Checking Backends. (Available: mklivestatus,ndo2db,ido2db,merlinmy) |
| Do you want to use backend mklivestatus? [y]:
| Do you want to use backend ndo2db? [n]:
| Do you want to use backend ido2db? [n]:
| Do you want to use backend merlinmy? [n]:
| Livestatus Socket (/usr/local/nagios/var/rw/live) found |
| PHP Module: sockets compiled_in found |
| Graphviz 2.26 found |
| Graphviz Module dot 2.26.0 found |
| Graphviz Module neato 2.26.0 found |
| Graphviz Module twopi 2.26.0 found |
| Graphviz Module circo 2.26.0 found |
| Graphviz Module fdp 2.26.0 found |
| |
+--- Trying to detect Apache settings -----------------------------------------+
| Please enter the web path to NagVis [/nagvis]:
| Please enter the name of the web-server user [apache]:
| Please enter the name of the web-server group [apache]:
| create Apache config file [y]:
| |
+--- Checking for existing NagVis ---------------------------------------------+
| |
+------------------------------------------------------------------------------+
| Summary |
+------------------------------------------------------------------------------+
| NagVis home will be: /usr/local/nagvis |
| Owner of NagVis files will be: apache |
| Group of NagVis files will be: apache |
| Path to Apache config dir is: /etc/httpd/conf.d |
| Apache config will be created: yes |
| |
| Installation mode: install |
| |
| Do you really want to continue? [y]:
+------------------------------------------------------------------------------+
| Starting installation |
+------------------------------------------------------------------------------+
| Creating directory /usr/local/nagvis... done |
| Creating directory /usr/local/nagvis/var... done |
| Creating directory /usr/local/nagvis/var/tmpl/cache... done |
| Creating directory /usr/local/nagvis/var/tmpl/compile... done |
| Creating directory /usr/local/nagvis/share/var... done |
| Copying files to /usr/local/nagvis... done |
| Creating main configuration file... done |
| Adding MKLivestatus Backend... done |
| Creating web configuration file... done |
| Setting permissions for web configuration file... done |
| |
| |
| |
+--- Setting permissions... ---------------------------------------------------+
| /usr/local/nagvis/etc/nagvis.ini.php-sample done |
| /usr/local/nagvis/etc done |
| /usr/local/nagvis/etc/maps done |
| /usr/local/nagvis/etc/maps/* done |
| /usr/local/nagvis/etc/automaps done |
| /usr/local/nagvis/etc/automaps/* done |
| /usr/local/nagvis/share/userfiles/images/maps done |
| /usr/local/nagvis/share/userfiles/images/maps/* done |
| /usr/local/nagvis/share/userfiles/images/shapes done |
| /usr/local/nagvis/share/userfiles/images/shapes/* done |
| /usr/local/nagvis/var done |
| /usr/local/nagvis/var/* done |
| /usr/local/nagvis/var/tmpl done |
| /usr/local/nagvis/var/tmpl/cache done |
| /usr/local/nagvis/var/tmpl/compile done |
| /usr/local/nagvis/share/var done |
| |
+------------------------------------------------------------------------------+
| Installation complete |
| |
| You can safely remove this source directory. |
| |
| For later update/upgrade you may use this command to have a faster update: |
| ./install.sh -n /usr/local/nagios -p /usr/local/nagvis -B /usr/local/nagios/bin/nagios -l "unix:/usr/local/nagios/var/rw/live" -b mklivestatus -u apache -g apache -w /etc/httpd/conf.d -a y
| |
| What to do next? |
| - Read the documentation |
| - Maybe you want to edit the main configuration file? |
| Its location is: /usr/local/nagvis/etc/nagvis.ini.php |
| - Configure NagVis via browser |
| - Initial admin credentials: |
| Username: nagiosadmin |
| Password: nagiosadmin |
+------------------------------------------------------------------------------+
apacheを再起動する。
# service httpd restart
ブラウザでアクセスする。(http://<hostname>/nagvis/)
Nagiosでネットワークトラフィックをグラフ化する [nagios]
従来、ネットワークトラフィックをグラフ化するといえばMRTGが定番。
しかし、Nagiosに一本化することを検討。
まず、前提知識としてSNMPの知識は必須。
SNMPについてはこのへんが詳しい。
ちょいとはまった点は32ビットと64ビットでオブジェクトIDが違う点。
32bitOSのネットワークトラフィックのOIDはこちら。
ifInOctets 1.3.6.1.2.1.2.2.1.10
ifOutOctets 1.3.6.1.2.1.2.2.1.16
64bitOSのネットワークトラフィックのOIDはこちら。
ifHCInOctets 1.3.6.1.2.1.31.1.1.1.6
ifHCOutOctets 1.3.6.1.2.1.31.1.1.1.10
上記のOIDにネットワークインターフェースのIDを付加する。
例)eth0が2の場合
1.3.6.1.2.1.2.2.1.10.2
1.3.6.1.2.1.2.2.1.16.2
上記のOIDなどをネットで調べる場合はCiscoのSNMPオブジェクトナビゲーターが便利。
コマンドラインで調べる場合は以下の通り。
オブジェクト名が分かっていて、OIDを調べたい場合
# snmptranslate -On -IR ifInOctets
戻り値を調べる方法
# snmpwalk -v 2c -c public localhost 1.3.6.1.2.1.2.2.1.10.2
"No Such Object"って言われる場合は設定ファイルを見直そう。
/etc/snmp/snmpd.conf
以下の記述を追加。
view systemview included .1.3.6.1.2.1.31
.1.3.6.1.2.1.31配下のオブジェクトをsystemviewと言う名前オブジェクトに追加する。
こうすることで、ifHCInOctetsが読み取れるようになる。
◆Nagiosで利用する場合
check_snmpというコマンドがあるのでこれを利用する。
送信、受信のネットワークトラフィックを収集する場合は以下のように受信、送信のOIDをカンマ(,)でつなぐ。
注)check_snmp v1.4.15 (nagios-plugins 1.4.15)の場合
define service{use generic-service,srv-pnphost_name localhostservice_description Traffic Usagecheck_command check_snmp!-C public -P 2c --rate -o 1.3.6.1.2.1.2.2.1.10.2,1.3.6.1.2.1.2.2.1.16.2}
PNP4Nagiosのグラフはcheck_snmp_int.phpをもとに適宜修正する。
SNMPはいろんなデータが取得できるのでデータ収集し出すと止まらない。
きりがないので適当なところでやめておこう。
nagiosユーザーにroot権限を付与する [nagios]
check_XXXの中には実行するためにroot権限が必要なものがある。
こうしたコマンドを実行するためにはnagios ユーザをsudoに追加する必要がある。
しかもパスワードなしで実行できるようにする必要がある。
この設定をするにはvisudoを使う。このコマンドを使うと/etc/sudoersと言うファイルを編集できる。
# visudo
以下のような記述を追加する。
%nagios ALL=(ALL) NOPASSWD: ALL
NOPASSWD:ALLは出来るだけ控え、ALLの部分に実行可能なコマンドを指定する。
redhat ES6の場合、さらに以下の部分をコメントアウトする。
Defaults requiretty
NRPEを使ったグラフ作成について [nagios]
前回の例では、結局「check_XXX.php」というファイルをテンプレートディレクトリに配置すればいいことになるので、check_nrpe.phpというファイルを配置すればいいことになります。しかし、そうするとNRPEからキックされ、リモートホスト上で実行される別のコマンドが何なのか分からなくなります。check_loadコマンドの実行結果とcheck_httpの実行結果は異なるので、データも形式も異なり、グラフを表示するためのデータが正しく収集できません。
このため、NRPEを使った場合の設定ファイルを作成します。
以下のディレクトリにはcheck_nrpe.cfg-sampleというファイルがあるので、これをもとに作成します。
# cd /usr/local/pnp4nagios/etc/check_commands# cp check_nrpe.cfg-sample check_nrpe.cfg
コピーしたcheck_nrpe.cfgを開いて編集します。
ポイントは「CUSTOM_TEMPLATE」の指定です。
コマンドの引数を以下のように番号で指定します。
例)# check_command check_nrpe!load!-w 4,4,4 -c 5,5,5# ________0__________| | |# ________1_______________| |# ________2_______________________|
下記のように指定した場合、
CUSTOM_TEMPLATE = 0,1
テンプレートファイル名は以下の通りになります。
check_nrpe_load.php
一方、下記のように指定した場合、
CUSTOM_TEMPLATE = 1,0
テンプレートファイル名は以下の通りになります。
load_check_nrpe.php
前回説明したようにグラフ用のファイルcheck_nrpe_load.phpを/usr/local/pnp4nagios/share/templates/配下に作成します。
0から作成するのは大変なので、既存のファイルをコピーして編集するようにします。
設定後、ブラウザで表示されることを確認します。# cd /usr/local/pnp4nagios/share# cp templates.dist/check_load.php templates/load_check_nrpe.php
タグ:Nagios pnp4nagios
PNP4Nagiosのグラフ表示について [nagios]
PNP4Nagiosを利用して様々なデータのグラフを表示することが出来ます。しかし場合によって、デフォルトのグラフをカスタマイズする場合があります。そのためにまず、様々なグラフを表示する仕組みについて確認します。
ソースはこちらです。
例えば、localhost上でhttpというサービスのグラフを表示させるとき、PNPは/usr/local/pnp4nagios/var/perfdata/localhost/http.xmlというXMLファイルを探し、そのファイルの内容を読み取ります。
XMLファイルは自動的に作成され、特定のホストとサービスについての情報をそのファイルに書き込みます。ヘッダーにはプラグインと性能データについての情報を格納します。その中に記載される、そのXMLタグ<TEMPLATE>によってグラフに使われるテンプレートかどうか特定します。
例)http.xml<TEMPLATE>check_http</TEMPLATE>
<TEMPLATE>タグに囲われた文字列check_httpをもとにPNPはテンプレートファイルcheck_http.phpというファイルを以下の順序で探します。このテンプレートファイルがグラフ表示のためのファイルになります。
次にこのcheck_http.phpというファイルを以下の順序で探します。
/usr/local/pnp4nagios/share 配下
1. templates/check_http.php
2. templates.dist/check_http.php
3. templates/default.php
4. templates.dist/default.php
1のディレクトリにcheck_http.phpというファイルが見つかれば、そのテンプレートファイルを利用します。どのディレクトリにもファイルが見つからなければ、4のtemplates.dist/default.phpが使われます。
/usr/local/pnp4nagios/share/templates.dist/配下には多くのテンプレートファイルが格納されています。
これらのファイルをベースにしてカスタマイズしたグラフを作成することが出来ます。
以上、基本編でした。
pnp4Nagiosが静かにとまってた。 [nagios]
今日気づいたらNagiosが止まっていた。
原因はパフォーマンス(性能)測定データのスプールファイル(/usr/local/pnp4nagios/var/service-perfdata)が2GBになってしまったため。
32ビットLinux(うちの場合はredhat Linux ES4)だとその制約があるため、ファイルに書き込みが出来なくなってNagios自体が終了する始末。
この辺を見ると設定次第な感じもするところですが、忙しいので手っ取り早く、スプールのファイル名を変更。
nagios.cfg の中の該当ファイルの部分を以下の通り修正。
Nagiosを起動して無事稼働中。この辺改善点ですねぇ。#service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdataservice_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata1
Nagiosのサービス時間を定義する [nagios]
障害時のアラートメールが飛ぶように設定。デフォルト値を使うと24時間毎日いつでもメールが飛んでくる。
社内用サーバだったらそんなハイクオリティサービスは必要ないと言うことで、サービス時間を以下の通り定義する。
■障害通知期間
・月曜~金曜 8時~18時の間
・土日・祝日は除外
・冬季休暇(12月29日~1月3日)は除外
で、日本の祝日はいつだっけ~?ということでこちらを参照。
国民の祝日について --大臣官房総務課
http://www8.cao.go.jp/chosei/shukujitsu/gaiyou.html
祝日を定義するのはtimeperiod.cfgというファイル。このファイルに以下の記述を追加。
同じように年末年始休暇も同様に定義する。
そして、チェック時間を定義する。
ここで、上記で作成した祝日、休暇定義を利用して除外とするには"exclude"句を使う。
ここまで、準備作業。
これを各ホスト、サービスに適用するため、template.cfgに追記する。
そしてこのサービスレベルを適用するホスト、サービスを指定するために、localhost.cfgやremotehost.cfgなどを編集する。
nagiosを再起動して変更を反映する。
参考リンク
Time Period Definition
http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#timeperiod
社内用サーバだったらそんなハイクオリティサービスは必要ないと言うことで、サービス時間を以下の通り定義する。
■障害通知期間
・月曜~金曜 8時~18時の間
・土日・祝日は除外
・冬季休暇(12月29日~1月3日)は除外
で、日本の祝日はいつだっけ~?ということでこちらを参照。
国民の祝日について --大臣官房総務課
http://www8.cao.go.jp/chosei/shukujitsu/gaiyou.html
祝日を定義するのはtimeperiod.cfgというファイル。このファイルに以下の記述を追加。
define timeperiod{
name japan-holidays
timeperiod_name jp-holidays
alias Japan Holidays
january 1 00:00-00:00 ; New Years
monday 2 january 00:00-00:00 ; Coming of Age Day
february 11 00:00-00:00 ; National Foundation Day
march 21 00:00-00:00 ; Vernal Equinox
april 29 00:00-00:00 ; Showa Day
may 3 00:00-00:00 ; Constitution Memorial Day
may 4 00:00-00:00 ; Greenery Day
may 5 00:00-00:00 ; Children's Day
monday 3 july 00:00-00:00 ; Marine Day
monday 3 september 00:00-00:00 ; Respect for the Aged Day
september 23 00:00-00:00 ; Autumnnal Equinox
monday 2 october 00:00-00:00 ; Health & Sports Day
november 3 00:00-00:00 ; National Culture Day
november 23 00:00-00:00 ; Labor Thanksgiving Day
december 23 00:00-00:00 ; Emperor's Birthday
}
同じように年末年始休暇も同様に定義する。
define timeperiod{
name company-holidays
timeperiod_name company-holidays
alias Company Holidays
december 29 00:00-00:00 ; Winter holidays
december 30 00:00-00:00 ; Winter holidays
december 31 00:00-00:00 ; Winter holidays
january 2 00:00-00:00 ; New Years holidays
january 3 00:00-00:00 ; New Years holidays
}
そして、チェック時間を定義する。
ここで、上記で作成した祝日、休暇定義を利用して除外とするには"exclude"句を使う。
define timeperiod{
timeperiod_name checkhours
alias Normal Work Hours
exclude jp-holidays,company-holidays
monday 08:00-18:00
tuesday 08:00-18:00
wednesday 08:00-18:00
thursday 08:00-18:00
friday 08:00-18:00
}
ここまで、準備作業。
これを各ホスト、サービスに適用するため、template.cfgに追記する。
そしてこのサービスレベルを適用するホスト、サービスを指定するために、localhost.cfgやremotehost.cfgなどを編集する。
nagiosを再起動して変更を反映する。
参考リンク
Time Period Definition
http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#timeperiod
Nagiosでリモートサーバの監視をする。 [nagios]
リモートサーバの監視をする。
Nagios 監視エージェントのインストール
■必要なもの
gcc
openssl-devel
■材料
こちらから以下のファイルの最新版をダウンロードする。
http://www.nagios.org/download/
nagios-plugins
nrpe
監視対象サーバにrootでログインする。(またはsudoする)
nagiosユーザーを作成する。
ダウンロードしたファイルを解凍する。
Nagios plugin をインストールする。
デフォルトでは /usr/local/nagios 配下にインストールされる。
インストール先のディレクトリの所有者、権限をnagiosユーザーに変更する。
NRPEをインストールする。
ダウンロードしたファイルを展開する。
NRPEをインストールする。
NRPEの設定ファイルを編集する。
xinetd配下で起動するために設定ファイルを編集する。
ファイルはこちら。/etc/xinetd.d/nrpe
編集箇所は「only_from」から始まる部分。
ここにマネージャー側のサーバIPアドレスを追記する。
そして、/etc/services にNRPEのポートを追記する。
同じサービス名、ポートがないかどうか確認することは忘れずに。
xinetdを再起動する。
サービスが起動しているか、確認する。
以下の通り、LISTENしてればOK! Greatだ!!
さらにNRPEが適切に機能しているかを確認。
こんな感じでインストールしたバージョンが表示されればOK!
Nagios 監視エージェントのインストール
■必要なもの
gcc
openssl-devel
■材料
こちらから以下のファイルの最新版をダウンロードする。
http://www.nagios.org/download/
nagios-plugins
nrpe
監視対象サーバにrootでログインする。(またはsudoする)
nagiosユーザーを作成する。
# useradd nagios
# passwd nagios
ダウンロードしたファイルを解凍する。
# tar zxvf nagios-plugins-1.4.14.tar.gz
# cd nagios-plugins-1.4.14
Nagios plugin をインストールする。
# ./configure
# make
# make install
デフォルトでは /usr/local/nagios 配下にインストールされる。
インストール先のディレクトリの所有者、権限をnagiosユーザーに変更する。
# chown -R nagios.nagios /usr/local/nagios
NRPEをインストールする。
ダウンロードしたファイルを展開する。
# tar zxvf nrpe-2.12.tar.gz
# cd nrpe-2.12
NRPEをインストールする。
# ./configure
# make all
# make install-plugin
# make install-daemon
# make install-daemon-config
# make install-xinetd
NRPEの設定ファイルを編集する。
xinetd配下で起動するために設定ファイルを編集する。
ファイルはこちら。/etc/xinetd.d/nrpe
編集箇所は「only_from」から始まる部分。
ここにマネージャー側のサーバIPアドレスを追記する。
(例)
only_from = 127.0.0.1 192.168.1.XXX
そして、/etc/services にNRPEのポートを追記する。
同じサービス名、ポートがないかどうか確認することは忘れずに。
nrpe 5666/tcp # NRPE (Nagios)
xinetdを再起動する。
# service xinetd restart
xinetd を停止中: [ OK ]
xinetd を起動中: [ OK ]
サービスが起動しているか、確認する。
# netstat -at | grep nrpe
以下の通り、LISTENしてればOK! Greatだ!!
tcp 0 0 *:nrpe *: LISTEN
さらにNRPEが適切に機能しているかを確認。
# /usr/local/nagios/libexec/check_nrpe -H localhost
こんな感じでインストールしたバージョンが表示されればOK!
NRPE v2.12