Pocket

Nagios

  • add this entry to hatena bookmark

監視ツール「Nagios」のインストールと設定について記載します。

※ Nagios Core Fedora Quickstart を参考にさせていただきました。

1.必要となるモジュールの事前インストール

Nagiosをインストールする上で、apache(httpd)やphp、gdライブラリなどが必要になります。私の環境では、gdライブラリだけが未インストールでしたので、yumでインストールを行いました。

# yum install gd gd-devel

gdのインストールだけでも必要となるパッケージが多いので、yumを使うとインストールが非常に楽です。

2.Nagios用のアカウント関連を準備

Nagiosをインストールする前に、必要となるOSアカウントとグループを設定します。

# useradd -m nagios
# passwd nagios
# groupadd nagcmd
# usermod -a -G nagcmd nagios
# usermod -a -G nagcmd daemon

上記載の「daemon」は、apacheデーモン用のアカウントです。環境によって「apache」や別のアカウントになるケースもありますので、ご自身の環境に合わせて設定します。

3.Nagiosダウンロードと解凍

インストールはNagiosサイトからダウンロードしたソースコードから行います。

Nagiosで監視を行う為には、モニタリングエンジンのコア部分とWebインターフェースが含まれる「Nagios Core」と、実際に監視を行うモジュールが含まれる「Nagios Plugins」が必要になります。

今回のソースコードのバージョンは、「Nagios Core」は、バージョン3.4.1、「Nagios Plugins」はバージョン1.4.16となります。

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.1.tar.gz
# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
# tar zxvf nagios-3.4.1.tar.gz
# tar zxvf nagios-plugins-1.4.16.tar.gz

ここでは、一旦まとめて解凍まで行っていますが、CoreとPluginは別作業で構いません。

4.Nagios Coreのインストール

解凍したNagios Coreをインストールします。

# cd nagios
# ./configure --with-command-group=nagcmd
# make all
# make install
# make install-init
# make install-config
# make install-commandmode
# make install-webconf

上記載のとおり、一緒に初期スクリプトなどもインストールします。

5.Nagios Core 作業途中の簡易設定

Pluginsのインストール前に以下の設定を行います。

まず、「/usr/local/nagios/etc/objects/contacts.cfg」ファイルをviで開き、emailセクションに自身のメールアドレスを設定します。

次に、Webインターフェースにアクセスする際の、Basic認証用アカウントを作成します。

# /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

ちなみに、Nagiosのapache設定サンプルファイルが「/etc/httpd/conf.d/nagios.conf」に配置されています。apacheの設定はまた後ほど行います。

6.Nagios Plugins のインストール

Nagios Pluginsのインストールを行います。

# cd nagios-plugins-1.4.16
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install

以上で、インストール作業は終了です。

7.Nagios起動設定

Nagiosの監視モジュールの起動設定を行います。

まず、OS初期起動時にNagiosが起動するように、以下の設定を行います。

# chkconfig nagios on

次に、Nagiosの設定ファイルの検証を行います。

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

configファイルがチェックされ、コンソール上に、「Total Warnings: 0」、「Total Errors: 0」、「Things look okay – No serious problems were detected during the pre-flight check」が表示されれば問題ありません。

8.Nagios起動

Nagiosの監視デーモンを起動します。

# service nagios start
Starting nagios: done.
# ps -awef|grep -v grep | grep nagios
nagios   15544     1  0 13:51 ?        00:00:00 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
nagios   15547 15544  0 13:51 ?        00:00:00 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
nagios   15548 15547  0 13:51 ?        00:00:00 /usr/local/nagios/libexec/check_ping -H 127.0.0.1 -w 3000.0,80% -c 5000.0,100% -p 5
nagios   15549 15548  0 13:51 ?        00:00:00 /bin/ping -n -U -w 30 -c 5 127.0.0.1
#

無事、Nagiosの監視デーモンが起動できました。

9.Nagios Web画面用の設定

NagiosのWeb画面にアクセスする為に、apacheの設定を行います。

Nagios用のapache設定サンプルファイルは、「/etc/httpd/conf.d/nagios.conf」にありますので、このファイルを利用してapache設定を行います。

なお、Nagiosではcgiを使う為、apacheのインストール時にconfigureオプションで「–enable-cgi」を有効にしておく必要があります。また、httpd.conf にて、以下の設定を適切に設定する必要があります。

LoadModule cgi_module modules/mod_cgi.so
AddHandler cgi-script .cgi

また、NagiosのWeb画面ではフレームが使われている為、httpd.conf に別途設定していた以下の設定を変更しました。
変更前:Header always append X-FRAME-OPTIONS “DENY”
変更後:Header always append X-FRAME-OPTIONS “SAMEORIGIN

変更を反映する為に、apacheを再起動します。

その後、NagiosのWeb画面にアクセスできるようになります。
Nagios Web画面

備考

今回の環境では、phpのバージョンの関係上、Web画面を表示する際に問題があり、以下のファイルを少し修正しました。

  1. /usr/local/nagios/share/index.php(53行目)
  2. /usr/local/nagios/share/main.php(123行目)

修正した内容は、以下の設定を追加しました。

date_default_timezone_set('Asia/Tokyo');

関連する投稿
Pocket

コメントを残す

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


*

チェックサイト RSS Feed読者登録はいかがでしょうか?RSS配信中です。