Nagiosでシステム監視 その1 インストール

2012年12月17日 | 平井 澄人

インターネットシステムには障害がつきものです。人為的なミスもあれば、ハードウエアが自然に故障することもあります。これらを事前に想定して防止をすることも重要ですが、障害をなくすことはまず不可能です。

起きてしまった障害の被害を最小限に食い止めるため、いかに早くシステム管理者がこれに気づき、正しい対処をすることが重要になります。しかし人力で監視するのは無理があります。

そのため、システムとネットワークを監視するアプリケーションがあります。指定されたホストやサービスを監視し、障害や復旧時に通知します。システムへの負荷は微々たるものですし多少制約があっても使っておいて損はないと考えます。

今回は、システムを監視する、Nagiosサーバをインストールして立ち上げるまでをやってみたいと思います。 

Nagiosでシステム監視 その1 インストール 

オンラインで利用できる監視サービスもありますが、自前でNagiosサーバを立ち上げると、たくさんのホストの設定の管理もやりやすくなりますし、細かく監視設定ができます。

以下のように、サーバの細かい項目を定期的にチェックしてくれるので、障害時にどの部分が具合が悪いのかの手掛かりにもなります。

(loadaverage、ログインしているユーザ数、httpが応答するか、ping、ディスク容量、SSHサーバが立ち上がっているか、Swap領域が圧迫されていないか、プロセス数が異常に多くないか、……さらにシステムに合わせた監視も追加できます。)

インストール

CentOSにインストールすることにします。

yumパッケージなど見当たりませんのでソースからインストールします。
http://nagios.sourceforge.net/docs/3_0/quickstart-fedora.html

が簡潔に書いてくれているのでこの通り進めます

準備

# yum install httpd php
# yum install gcc glibc glibc-common
# yum install gd gd-devel

アカウント

# /usr/sbin/useradd -m nagios
# passwd nagios
# /usr/sbin/groupadd nagcmd
# /usr/sbin/usermod -a -G nagcmd nagios
# /usr/sbin/usermod -a -G nagcmd apache

インストール

  • ソースをダウンロードする適当なディレクトリに移動
  • http://www.nagios.org/download/からNagios最新版のtarファイルをダウンロード

例)

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz
  • 解凍&コンパイル&インストール
# tar xzf nagios-3.4.3.tar.gz 
# cd nagios
# ./configure --with-command-group=nagcmd

>*** Configuration summary for nagios 3.4.3 11-30-2012 ***:
>インストール設定が表示されるので確認する。

# make all
# make install
# make install-init
# make install-config
# make install-commandmode
  • デフォルトの受取先を設定
# vi /usr/local/nagios/etc/objects/contacts.cfg

> email nagios@localhost ; <この行のnagios@localhostを自分のメールアドレスに置き換える。

# make install-webconf
  • ベーシック認証を作る
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
  • httpd/conf.d/nagios.confなどがセットされているので読み込ませる
# service httpd restart

同様にNagios pluginsの最新版のtarファイルをダウンロード

# 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<br /># ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install

Nagiosを起動

# chkconfig --add nagios
# chkconfig nagios on
  • 設定ファイルをチェック
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

上記の文法チェックでエラーなどがなければ起動

# service nagios start
  •  Webブラウザでアクセスして確認する

Nagiosサーバの管理画面が立ち上がっているので、Webブラウザから確認します。

http://「ドメイン名 or IPアドレス」/nagios/

Basic認証は先ほど設定したnagiosadmin/パスワードになります。

  • つながらなければ、FireWallやSELinuxを見直す。

ブラウザで見てみます。

左メニューの「Services」をクリックするとこのような画面になっています。

自分自身を監視し始めた状態です。デフォルトで5分間隔で各項目をチェックしますので、しばらくすると以下のような状態になります。もしならなければ、OKのところが、黄色や赤になり先ほど設定したメールアドレスに通知のメールが来ているはずです。

これらの項目の設定情報は

/usr/local/nagios/etc/nagios.cfg

/usr/local/nagios/etc/objects/localhost.cfg

 に書いてあります。

もし、変更したい場合があったら上記ファイルを編集後、

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

をしてエラーが出ないのを確認してから

# service nagios restart

します。

次回は、このサーバに、他のサーバも監視対象に追加していきたいと思います。

PICK UP

ライター

東京でサイト運用の仕事をしています。旅行好き。

お問い合わせ

サービスに関するご相談は
こちらよりお気軽にお問い合わせください。

e-Agencyの様々な情報をSNSでお届けします!