Pocket

Nagios NRPEを使ったリモートホストのリソース監視(ディスク使用率監視)

  • add this entry to hatena bookmark

監視ツールNagiosを使って、リモートホストのリソース監視(CPU使用率やメモリ使用率、ディスク容量使用率など)を実施する為の設定を行います。

実現する為にNRPE(Nagios Remote Plugin Executor)を導入する事にします。

NRPEは、Nagiosで広く使われているリモートホスト監視用のプラグインです。

監視マネージャ側へのインストール

既にNagiosが稼働している監視マネージャ環境にNRPEをインストールします。バージョンは 2.13 となります。

NRPEのインストールには、SSL Librariesが必要になるので、openssl-develを事前にインストールしておきます。

# yum install openssl-devel

次に、NRPEをダウンロードし、インストールします。

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz
# tar zxvf nrpe-2.13.tar.gz
# cd nrpe-2.13
# ./configure
# make all
# make install

NRPEはデフォルトで以下のオプションでインストールされます。

General Options:
-------------------------
NRPE port:    5666
NRPE user:    nagios
NRPE group:   nagios
Nagios user:  nagios
Nagios group: nagios

以上で、NRPEが監視マネージャにインストールされました。

監視対象側へのインストール

まずは、OSアカウントを作成します。

# useradd -d /usr/local/nagios/ -M nagios
# mkdir /usr/local/nagios
# chown nagios:nagios /usr/local/nagios

※ 監視対象側のNRPEは、daemonで起動する設定としたいので、xinetdはインストールしません。

監視マネージャ側と同様に、openssl-develが入っていなかったら事前にインストールしておきます。
次に、NRPEをダウンロードし、インストールします。

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz
# tar zxvf nrpe-2.13.tar.gz
# cd nrpe-2.13
# ./configure
# make nrpe
# make install-daemon
# make install-daemon-config

次に、Nagios-Pluginsをインストールします。

# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
# tar zxvf nagios-plugins-1.4.16.tar.gz
# cd nagios-plugins-1.4.16
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install

以上で、Nagios-Pluginsのインストールは完了です。

監視対象側の設定と起動

/usr/local/nagios/etc/nrpe.cfg が、監視対象側のNRPE設定ファイルになります。

allowed_hosts にはデフォルトで 127.0.0.1 だけが指定されているので、Nagiosサーバのアドレスを追加します。(コンマ区切り)

次に、nrpe の起動スクリプトを準備します。

# cp /usr/local/src/nrpe-2.13/init-script /etc/rc.d/init.d/nrpe
# chmod 755 /etc/rc.d/init.d/nrpe
# /etc/init.d/nrpe
Usage: nrpe {start|stop|restart|status}
# /etc/init.d/nrpe status
nrpe is stopped
# /etc/init.d/nrpe start
Starting nrpe:                                             [  OK  ]
# /etc/init.d/nrpe status
nrpe (pid  8273) is running...
#

ディスク使用率を監視する為に、監視対象のディスク情報を確認します。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            8.0G  2.6G  5.4G  32% /
tmpfs                 298M     0  298M   0% /dev/shm
#

以下の設定を監視対象サーバの nrpe.cfg に設定します。

command[check_xvda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/xvda1

監視対象サーバのNagios設定は以上です。

別途、環境によっては、監視マネージャから監視対象サーバに対するアクセス許可をFireWallで設定する必要があります。監視対象サーバの NRPE は、デーモンとして TCPポート5666 で起動していますので、許可設定を施します。(設定は nrpe.cfg にて「server_port=5666」で設定されています。)

監視マネージャ側の設定

まず、/usr/local/nagios/etc/objects/commands.cfg ファイルに nrpe 設定を追加します。追加内容は以下となります。

define command{
        command_name    check_nrpe
        command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }

次に、監視対象サーバ用の設定ファイルに、以下の設定を追加します。

define service{
        use                             local-service         ; Name of service template to use
        host_name                       aws-ec2
        service_description             Disk check xvda1
        check_command                   check_nrpe!check_xvda1
        notifications_enabled           0
        }

設定は以上となります。Nagiosの設定ファイルの検証を行います。

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

問題なければ、Nagiosを再起動します。

以上で、Nagios画面でリモートホストのディスク使用率が確認できました。

CPU使用率やメモリ使用率についても、同じ手法で監視できると思います。

Pocket

コメントを残す

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


*

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