サーバ、ネットワークの監視


2年ほど前から、クラスタ構成のサーバを中心とした WAN でアクセスするシステムを構築しました。その時にサーバ、ネットワークの監視ツールを導入すればよかったのですが、システム立ち上げまでの時間が短く、監視ツールに対する知識もなく、とりあえず、後回しにしてしまいました。(導入メーカも教えてくれなかった。。。)
後からサーバ、ネットワーク監視ツールを導入しようとしましたが、予算上の問題で導入できなかったため、「簡易的に監視する事ができないか」、「安く構築できないか」と言うことで、今の監視体制を構築しました。


監視の内容

  1. サーバが稼働しているか。( OS が稼働しているか)
  2. クラスタのフェィル・オーバを感知できないか。
  3. クライアント(ルータ)までのネットワークが正常に動いているか。
  4. 障害が発生したときに、メールで通知することができないか。

上記の内容から、ある、PC から連続的に Ping を飛ばし、何度かエラーになった時に、1〜3間での状態が感知できたとして、そのエラー時に携帯電話に E-mail を飛ばす様にしようと考えました。

ソフトを作ることも考えたが、私にはプログラムを作成する能力がないので(これが一番大きな理由ですが(+_+) )、フリーウェア、シェアウェアで構築できないか探した結果、 MASAHIRO's HOMEPAGE と言うページを見つけた。この中にあった、複数のアドレスに対してPING出来るソフト 「 ExPing 」と、SMTPメール送信専用ソフト「 ExSMTP 」を使用することにした。(「 ExPing 」は1999年頃から使用していました。)

(2002年3月18日に管理人様(鈴木 理弘)のご都合により閉鎖されました。ソフトのダウンロードについては VECTOR からできます。)
(2002年8月10日から、「ExPing」については WoodyBells にてサポートが再開されました。)


設定方法

ここでは、2つのソフトをどの様な具合に設定したかを説明します。サーバ監視用とネットワーク監視用とでは若干設定が異なるので、ここではサーバ監視用を基に説明します。

このソフトは複数のアドレスに対して Ping を送出するソフトです。定期実行が可能なうえ、ログが残せるので通常時のネットワーク状況を調査するのにも使用しています。また、レジストリ等を使用していないので、お手軽に使用できます。

  1. MASAHIRO's HOMEPAGEからソフトをダウンロードし、適当なフォルダに解凍します。
  2. フォルダ内の ExPing.exe をダブルクリックして起動します。
  3. 監視対象となるサーバを設定します。

  4. Ping を飛ばす環境を設定します。

    ●「ブロックサイズ」を1バイトにしたのは、ネットワークに極力、負荷をかけないようにするためです。
    ●「定期的に実行する」を1分間隔にしたのは、フェィル・オーバが発生したときに、感知できるようにするためです。
    ●ネットワーク監視用にするには、ネットワーク遅延を考慮して、「タイムアウト」を「3000ms」にし、また、ネットワーク付加を考慮して「定期的に実行する」を「15分間隔」にしました。
  5. エラーを感知したときに、E-mail を飛ばすように「 ExSMTP 」との連携を設定します。

    ここで、「外部プログラムを起動」にチェックを立てて、オプションの箇所に「 ExSMTP 」のパラメータを入れます。
  6. スタートアップにショートカットを登録します。その際、「-R」のオプションを指定しておくと、パソコン起動時に自動で ExPing が起動されます。

以上で設定は終了です。


SMTPメール送信専用アプリです。 コマンドラインオプションにより「起動」- 「送信」-「終了」まで実行できるので定型メールの自動送信用等に活用できます。また、レジストリ等を使用していないので、お手軽に使用できます。

  1. MASAHIRO's HOMEPAGEからソフトをダウンロードし、適当なフォルダ(ここでは、C:\TOOL\ExSMTP)に解凍します。
  2. フォルダ内の ExSMTP.exe をダブルクリックして起動します。
  3. メールサーバの環境を設定します。

  4. 送信先、送信文を設定します。

    この設定ファイルを「Server-Report.ini」と言う名前(ExPing で設定した名前)で保存しました。
以上で設定は終了です。

これで、サーバ、ネットワークに障害が起きた時に E-mail が飛ぶようになりました。
私なりに設定を考えたのは、Ping は2回連続で送出させていますが、連続で3回、エラーにならないと E-mail を飛ばさないようにした点です。回線の一時的な不具合等で Ping が遅延してしまいエラーになることがあったので、このような設定にしました。
設定の内容については、個々の環境の問題があるので、参考程度にして下さい。


私の使用している環境では、メール・サーバが夜間、2時間ほどバックアップと言う名目で停止したり、サーバ容量がパンクして、頻繁に停止しています。その為、その時間帯に発生した障害をメールで通知できません。これでは、監視が中途半端になってしまうので、システム内に SMTP サーバを建てることにしました。

サーバが Windows2000 の為、IIS を立ち上げて SMTP サーバを起動してもよかったのですが、セキュリティホール等が増えるのではと感じたので、できるだけ単機能で軽い SMTP サーバを探した結果、 SapporoWorks(札幌ソフト開発工場)「Radish」 を使用することにしました。

この SMTP サーバは複雑な設定も必要なく、また、IANA で規定されているプライベート・アドレス・空間からの要求からしか、要求を受けないので不正な中継等を防ぐことができます。(もっとも、ローカル側で不正な中継要求を出されると。そんなことやる人がいないと信じて。。。)

  1. SapporoWorks からソフトをダウンロードし、適当なフォルダに解凍します。
  2. フォルダ内の Radish.exe をダブルクリックして起動します。
  3. 起動されると、タスクバーに格納されているので、ダブルクリックして下さい。
  4. DNS サーバ、メールボックスを設定します。

    私の使用した感覚では、NTT Docomo の携帯にメールを送ろうとすると、時間帯によってエラーが頻発するので、再送回数を増やした方がよいと思います。au、J-Phone は問題ないようです。
以上で設定は終了です。

 < お願い >


私は、「 ExPing 」、「 ExSMTP 」の設定を、監視対象の重要度に応じて複数作成し、「Rsdish」を経由させるようにしました。フリーのツールでここまでできれば、言うことはないと思います。私のように一人でサーバ、ネットワーク、システムを監視(お守り)し、他の業務も兼任しているような管理者のような、にわか管理者にとっては非常に便利だと思います。

この 「 ExPing 」、「 ExSMTP 」、「 Radish 」 のお陰で、障害を365日、24時間、特に休みの日など、素早く感知することができるようになりました。作者様、ありがとうございました。



注意 : これは、私個人の覚え書きであり、何も保証するもではありません。自己責任でお読み下さい。  
Create:2002/01/19   Last modified:2009/10/02
Copyright (c) 2002-2013 Yoshi All Rights Reserved