読者です 読者をやめる 読者になる 読者になる

ボールを蹴りたいシステムエンジニア

ボール蹴りが大好きなシステムエンジニア、ボールを蹴る時間確保の為に時間がある時には勉強する。

【成功】Linuxへのnagiosインストール

前々回nagiosのインストールに失敗しました。

【失敗】Linuxへのnagiosインストール - とりあえずエンジニアの備忘録

php関連でつまづいた為、前回にphpのインストールとApache連携完了
今度こそnagiosインストールします!
今度はすんなり終わらせてみせる

Apachephpがインストールされている事が前提です

Apachephpのインストールはこちら
LinuxへのApacheインストール(さくらVPS) - とりあえずエンジニアの備忘録
Linuxへのphp5.3インストールとApache2.2との連携(さくらVPS) - とりあえずエンジニアの備忘録


以下の手順は前回の失敗も踏まえエラーが発生しないよう注意して書き直しました

・環境

さくらVPS
Linux
CentOS release 6.4 (Final)
nagios3.5.1
Apache2.2.25
php5.3.27

1.nagiosインストール

gd-develインストール

nagiosインストール時の依存ライブラリgd-develをインストールします

yum -y install gd-devel
nagiosユーザー作成

nagiosユーザーを作成します

useradd -d /usr/local/nagios/ -M nagios
nagiosダウンロード&解凍

nagiosをダウンロードします

cd /usr/local/src/
wget http://downloads.sourceforge.net/project/nagios/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz
tar xzf nagios-3.5.1.tar.gz 

最新版は
Nagios - Browse /nagios-3.x at SourceForge.net
から取得してください
今回は3.5.1をダウンロードしました

日本語化パッチダウンロード

日本語表示の為、日本語化パッチをダウンロードします

cd nagios/
wget http://ftp.momo-i.org/pub/other/nagios-jp-3.5.1.patch.gz

最新版は
http://ftp.momo-i.org/pub/security/nagios/patches/

から取得してください
どうやらnagiosのバージョンと合わせないとダメぽいです。
って事で3.5.1のをダウンロードしました

日本語化パッチ実行
gzip -dc nagios-jp-3.5.1.patch.gz  | patch -p1

Reversed (or previously applied) patch detected!  Assume -R? [n]

所々、上記のような確認がありますが
全てyを入力エンター押して下さい
nにすると後々エラーの原因になります

Apache連携用設定ファイル出力先作成

nagiosをブラウザ表示の為、Apache設定ファイル配置ディレクトリを作成します
nagiosインストール時にこのconf.dディレクトリに設定ファイルが作成されます

mkdir /usr/local/apache/conf.d/
Apache設定ファイル修正

作成したconf.d以下の設定ファイルを読み込むように
httpd.confにインクルード文を追記します

vi /usr/local/apache/conf/httpd.conf

Include conf.d/*.conf
	

nagiosのTOPページはindex.phpphpファイルとなっています。
Apacheのデフォルトではディレクトリアクセス時の読み込みファイルは
index.htmlのみとなっているので、index.phpを追記します

vi /usr/local/apache/conf/httpd.conf

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>
コンパイル

オプションについては以下を参照

./configure --prefix=/usr/local/nagios/ --with-nagios-user=nagios --with-nagios-group=nagios --with-httpd-conf=/usr/local/apache/conf.d
  • prefix

nagiosのホームディレクトリ

nagiosユーザー名

nagiosの所属グループ名

Apache連携用の設定ファイル配置ディレクトリ

インストール
make all

その他、設定ファイル系をインストールします
それぞれエラーが出ないか要チェックです。

make install
make install-init
make install-commandmode
make install-config
make install-webconf

それぞれのインストールについてメモ

  • install-init

起動スクリプト

  • install-commandmode

コマンドのパーミッションの設定

  • install-config

標準設定ファイルのインストール

  • install-webconfは

ブラウザから確認用のwebUI設定インストール

標準プラグインインストール

http,ping,process,load average,sshといった
基本的な項目の監視の為、標準プラグインをインストールします。
プラグインをインストールしないとnagiosインストールが出来ても
肝心の監視ができません

nagios標準ライブラリの最新版はこちらから取得できます
Nagios - Download Nagios Plugins

cd /usr/local/src/
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
tar xzf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16 
./configure --prefix=/usr/local/nagios
make
make install
chown -R nagios:nagios /usr/local/nagios/

コンパイラ時にはprefixでnagiosのホームディレクトリを指定します

2.WebUIのための設定

ブラウザから確認する為の設定です

webページパスワード制限

nagios画面へのアクセスにユーザー名とパスワードによるアクセス制限(Basic認証)をかけます
Apache標準のhtpasswdコマンドでhtpasswdファイルを作成します

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

New password:
Re-type new password: 
Adding password for user nagiosadmin 

htpasswdコマンドを実行するとパスワードを聞かれますので
任意のパスワードを入力してエンターを押します、再確認ありますので再度入力エンター

ここで生成されたhtpasswdファイルは
make install-webconfでインストールされた
/usr/local/apache/conf.d/nagios.confにて以下のように読み込まれApacheに読み込ませています

<Directory "/usr/local/nagios//share">
#  SSLRequireSSL
   Options None
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios//etc/htpasswd.users
   Require valid-user
</Directory>

3.自動起動サービス登録

make install-initで起動スクリプトが/etc/init.d/nagiosにインストールされていますので
自動起動サービス登録を行います
定番の作業になってきました

chkconfig --add nagios
chkconfig --list nagios
nagios          0:off   1:off   2:off   3:on    4:on    5:on    6:off

4.起動確認

Apache設定も変更しているのでApacheも再起動します

/etc/init.d/nagios start
/etc/init.d/httpd restart

ブラウザから
http://localhost/nagios/
へアクセスします
Basic認証の入力がありますが、先ほど設定したアカウントを入力します

nagiosのtopページが表示されました!!
Apachephpのインストールが出来ていれば
以上の手順ですんなりnagiosインストール出来そうです

nagiosのインストールは結構時間掛かりました。
3日に渡り完了しましたが、時間で言うと5時間は掛かった気がします・・・

とりあえずインストール出来てよかったです!
現時点では特に監視するものは無いですが
今後何かに利用したいと思います