公開日: 2012年8月29日 00:46:13
最終更新: 2012年9月22日 19:21:22

Nagiosによるサーバ監視

Nagios によるサーバ監視

Nagios は perl ベースのサーバ監視ツールです。デフォルトでは SNMP を使用しないため、サーバやデーモンの死活確認が主な利用目的となります。

Nagios 本体のインストール・日本語化

Nagios は SourceForge より tar ボールをダウンロードします。

Nagios – SourceForge

※ rpmforge から YUM でインストールすることもできますが、その場合 コンフィグパスは /etc/nagios になります。

また、Nagios-JPよりバージョンの一致する日本語化パッチをダウンロードします。このパッチを適用することにより、web インターフェースが日本語(utf-8)で表示されます

参考: @it Webインターフェイスから手軽に監視

Nagios のコンパイルとインストール

先に Nagios の起動ユーザを追加しておきます。

コンパイル&インストールします。configure オプションは不要だと思いますが、ここではソースインストールした Apache2 のコンフィグファイルパスのみ指定しています。(nagios.conf が作成されます。)

nagios プラグイン インストール

やはり SourceForge より nagios プラグイン をダウンロードします。

Nagios 設定

Nagios の全体的な設定を行うには /usr/local/nagios/etc/nagios.cfg を編集します。

監視するホストごとの設定ファイルを格納する etc/servers ディレクトリを作成しておきます。ディレクトリの所有者は nagios ユーザに変更します。

デフォルトでは基本認証を使用するようになっていますが、閲覧するたびに ID/パスワードを入力するのは結構煩わしいものです。今回はローカル側のみの利用で外部から参照は許可しないため、nagios の認証機能は解除します。

 

サーバ設定ファイルの作成

監視ホストの定義

監視対象とするサーバ/サービスの設定を行います。etc/servers/ 以下に「*.cfg」という名前で作成します。

ex.)nodes.cfg

「host_name」で紐付けられ、「address」で指定されたアドレスに対して監視を行います。実際には以下のように表示されます。

nagios-sample

ホストグループの定義

複数の監視ホストがある場合、例えば東京のホスト群、大阪のホスト群というようにグルーピングして管理することができます。ホストグループの設定も、etc/servers/ 以下に任意の *.cfg ファイルを作成します。

ex.)nodes.cfg

設定ファイルについて

nagios の設定ファイルは nagios.cfg にすべてまとめることも、ホストの設定ごとに host-01.cfg、host-02.cfg・・・というようにバラバラに作成することもできます。上記のホスト設定とグループ設定も一つのファイルにまとめてしまうことも可能です。

Nagios の起動

すべての設定が完了したら、Nagios を起動します。nagios の起動は rc スクリプトで行います。

もしここでエラーが表示されるようであれば、サーバ設定などに間違いがあるかもしれません。-v オプションを使用してコンフィグファイルのチェックをすることができます。例えば以下はホスト設定ファイルに記述のないホストを、グループに登録してしまった時のエラーです。

 

nagios モジュール の利用

/usr/local/nagios/libexec 以下に格納されているモジュールは、コマンドラインから直接実行することができます。

例えば 監視対象が ssh ログイン可能かどうか確認するには、check_ssh を使用します。

また、TCP/IP の任意のポートについて死活確認を行うには、check_tcp/check_udp を利用すると良いでしょう。