オラクる。

oracle専門ブログにしてみようかな~っと

カテゴリ: Nagios

apacheとPHPのインストールが終わって、今日はいよいよnagios本体のインストールです。

[root@test01 ~]# useradd -d /usr/local/nagios/ -M nagios

nagios専用のユーザ/グループを作成します。

[root@test01 ~]# cd /usr/local/src/
[root@test01 src]# wget http://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.0.6/nagios-4.0.6.tar.gz/download
[root@test01 src]# tar xzf nagios-4.0.6.tar.gz
[root@test01 src]# cd nagios-4.0.6

nagiosのソースファイルをダウンロードして、解凍します。
nagiosの最新版は下記からダウンロードしてきました。

Nagios - Browse Files at SourceForge.net
http://sourceforge.net/projects/nagios/files/

[root@test01 nagios-4.0.6]# wget http://ftp.momo-i.org/pub/security/nagios/patches/nagios-jp-4.0.6.patch.gz
[root@test01 nagios-4.0.6]# gzip -dc nagios-jp-4.0.6.patch.gz | patch -p1

nagiosの日本語パッチもダウンロードして、ソースファイルへの適用を行ないます。 
日本語パッチは下記からダウンロードしてください。

http://ftp.momo-i.org/pub/security/nagios/patches/

[root@test01 nagios-4.0.6]# mkdir /usr/local/apache/conf.d/
[root@test01 nagios-4.0.6]# vi /usr/local/apache/conf/httpd.conf

Include conf.d/*.conf→追記
<IfModule dir_module>
    DirectoryIndex index.html index.php→追記
</IfModule> 

nagios用の追加apache設定ファイルの置き場所をつくります。
また、apacheのhttpd.confに追加設定ファイルの場所、index.phpのトップページ設定の追記を行ないます。

[root@test01 nagios-4.0.6]# ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-http-conf=/usr/local/apache/conf.d/

[root@test01 nagios-4.0.6]# make all
[root@test01 nagios-4.0.6]# make install
[root@test01 nagios-4.0.6]# make install-init
[root@test01 nagios-4.0.6]# make install-commandmode
[root@test01 nagios-4.0.6]# make install-config
[root@test01 nagios-4.0.6]# make install-webconf 

configureしてコンパイル、インストールを行ないます。
なお、何種類かmake installがありますが、下記のような役割です。

make install →基本コンポーネントのインストール
make install-init →自動起動ファイルのインストール
make install-commandmode →ディレクトリのパーミッション設定
make install-config →サンプル設定ファイルのインストール
make install-webconf →web設定ファイルのインストール

[root@test01 src]# wget http://nagios-plugins.org/download/nagios-plugins-2.0.2.tar.gz
[root@test01 src]# tar xzf nagios-plugins-2.0.2.tar.gz
[root@test01 src]# cd nagios-plugins-2.0.2
[root@test01 nagios-plugins-2.0.2]# ./configure --prefix=/usr/local/nagios
[root@test01 nagios-plugins-2.0.2]# make
[root@test01 nagios-plugins-2.0.2]# make install

同じようにnagiosの標準プラグインをインストールします。
configure時のprefixにはnagiosのパスを指定します。 
 
[root@test01 nagios-plugins-2.0.2]# chown -R nagios:nagios /usr/local/nagios/

プログラムファイル配置場所のパーミッション設定を行ないます。 

今日はNagiosの前提条件であるPHPのインストールを行ないます。
PHPの最新版(現時点で5.1.2)は以下のサイトからダウンロードしています。

PHP: Get Download
[root@test01 src]# wget http://jp1.php.net/get/php-5.5.12.tar.gz/from/this/mirror

2014-05-27 23:35:44 (10.2 MB/s) - `php-5.5.12.tar.gz' へ保存完了 [17112729/17112729]

[root@test01 src]# tar xvf php-5.5.12.tar.gz 

まずは、wgetを利用したダウンロードと解凍です。 

./configure \
--prefix=/usr/local/php5 \
--with-apxs2=/usr/local/apache/bin/apxs \
--enable-mbstring \
--enable-ftp \
--enable-sockets \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-zlib \
--with-openssl

続いてconfigureでコンパイル前の設定を行ないます。
一通りのライブラリは有効化しています。

[root@test01 php-5.5.12]# make
[root@test01 php-5.5.12]# make test
[root@test01 php-5.5.12]# make install

さらにコンパイルとインストールを実行します。

[root@test01 php-5.5.12]# vi /usr/local/apache/conf/httpd.conf

LoadModule php5_module        modules/libphp5.so
AddType application/x-httpd-php .php .phtml→追記 

コンパイル後、apacheの設定ファイルにphpモジュールを読み込む設定が追記されています。
その下にAddTypeでphpの拡張子を指定する設定を追記します。

[root@test01 php-5.5.12]# service httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

サービスを再起動して、設定を有効化します。

[root@test01 php-5.5.12]# cd /usr/local/apache/htdocs/
[root@test01 htdocs]# echo '<?php phpinfo();' >phpinfo.php

phpが有効化されていることを確認するため、phpinfoのテストファイルを作成します。
http://(IPアドレス)/phpinfo.phpにアクセスして、phpinfoのページが表示されたら成功です。
phpは有効化されています。

前回インストールしたapacheを自動起動するように設定してみました。

[root@test01 rpm]# pwd
/usr/local/src/httpd-2.4.9/build/rpm
[root@test01 rpm]# cp httpd.init /etc/rc.d/init.d/httpd

自動起動のサンプルファイルは展開したソースファイルの中にあります。
サンプルファイルを/etc/rc.d/init.dにコピーします。

[root@test01 rpm]# vi /etc/rc.d/init.d/httpd

httpd=/usr/local/apache/bin/httpd
pidfile=/usr/local/apache/logs/httpd.pid
CONFFILE=/usr/local/apache/conf/httpd.conf

起動ファイルを開き、httpd、pidfile、CONFFILEを自分の環境に合うように編集します。

[root@test01 rpm]# /etc/init.d/httpd start
httpd を起動中:                                            [  OK  ]
[root@test01 rpm]# /etc/init.d/httpd stop
httpd を停止中:                                            [  OK  ]

実施に起動、停止をしてみましたが、特に問題ありません。

[root@test01 rpm]# chkconfig --add httpd
[root@test01 rpm]# chkconfig httpd on
[root@test01 rpm]# chkconfig --list | grep httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off

サービスに追加し、自動起動するように設定します。 

今日から監視システムの構築検証ということでオープンソースのNagiosを検証してみます。
利用するOSはRedhat Enterprise Linux 5.9です。
まずは前提条件である、Apacheのインストールから。
現時点で最新バージョンの2.4.9を利用します。

・ソースのダウンロード
[root@test01 ~]# cd /usr/local/src
[root@test01 src]# wget http://ftp.riken.jp/net/apache//httpd/httpd-2.4.9.tar.gz
・ 
2014-05-25 23:37:36 (9.06 MB/s) - `httpd-2.4.9.tar.gz' へ保存完了 [6784016/6784016] 
[root@test01 src]# ls
httpd-2.4.9.tar.gz
[root@test01 src]# tar xzf httpd-2.4.9.tar.gz
[root@test01 src]# ls
httpd-2.4.9  httpd-2.4.9.tar.gz
まずは、http://httpd.apache.org/download.cgiからソースをダウンロードしてきて解凍します。
http-2.4.9というフォルダが作成され、そちらにソースが格納されています。

・ソースのコンパイル

[root@test01 httpd-2.4.9]# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all

checking for APR... no
configure: error: APR not found.  Please read the documentation. 

まずは、configureコマンドを実行しますが、早速エラーメッセージが・・・

[root@test01 srclib]# pwd
/usr/local/src/httpd-2.4.9/srclib
[root@test01 srclib]# wget http://ftp.jaist.ac.jp/pub/apache//apr/apr-1.5.1.tar.gz

[root@test01 srclib]# wget http://ftp.jaist.ac.jp/pub/apache//apr/apr-util-1.5.3.tar.gz

[root@test01 srclib]# tar xvf apr-1.5.1.tar.gz

[root@test01 srclib]# tar xvf apr-util-1.5.3.tar.gz

[root@test01 srclib]# mv apr-1.5.1 apr
[root@test01 srclib]# mv apr-util-1.5.3 apr-util
[root@test01 srclib]# ls
Makefile.in  apr  apr-1.5.1.tar.gz  apr-util  apr-util-1.5.3.tar.gz

早速、http://apr.apache.org/download.cgiからaprとapr-utilというのをダウンロードしてきました。
解凍したフォルダはsrclibに格納しておきます。

[root@test01 httpd-2.4.9]# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all

checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

それでも、またエラーメッセージが・・・

[root@test01 pcre-8.33]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.gz
[root@test01 pcre-8.33]# tar zxvf pcre-8.33.tar.gz
[root@test01 pcre-8.33]# cd pcre-8.33
[root@test01 pcre-8.33]# ./configure
[root@test01 pcre-8.33]# make
[root@test01 pcre-8.33]# make install

今度はpcreというソースをftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/からダウンロードしてきて、コンパイル、インストールします。

[root@test01 httpd-2.4.9]# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all
[root@test01 httpd-2.4.9]# make
[root@test01 httpd-2.4.9]# make install

今度はエラー無くコンパイル、インストール出来ました。

・起動 

[root@test01 bin]# cd /usr/local/apache/bin
[root@test01 bin]# ./apachectl start
[root@test01 bin]# ps ax|grep httpd
18538 ?        Ss     0:00 /usr/local/apache/bin/httpd -k start
18539 ?        Sl     0:00 /usr/local/apache/bin/httpd -k start
18541 ?        Sl     0:00 /usr/local/apache/bin/httpd -k start
18566 ?        Sl     0:00 /usr/local/apache/bin/httpd -k start
18624 pts/0    S+     0:00 grep httpd
[root@test01 bin]# ./apachectl stop

起動停止も特に問題ないようです。
ブラウザからIPにアクセスするとIt worksと表示されています。
無事、apacheがインストール出来た証拠です。 

このページのトップヘ