序論
テクニカルサポートで働いた経験があるなら、間違いなくあなたはユーザから”インターネットが停止したと”言われた経験があるでしょう。 コンピュータ技術者として、だれもインターネットから電源コードを引かなかったとほぼ確信しています。 ユーザの机とインターネットの間の何かが悪いのです。
それが技術問題であると仮定して、問題を捜し始めます。 おそらく、ユーザのコンピュータが電源を切られたか、ネットワーク・ケーブルのプラグを抜かれたか、また、組織のコア・ルータはただ動かなくなったかです。 問題が何であっても、1つ事は最も確実です - インターネットは停止していません。 ただ、そのユーザからアクセスできない状態となっています。
Nagiosは、監視しているホストがDOWNかUNREACHABLE状態にあるかを決定できます。 これらは、非常に違った(関係しますが)状態であり、すぐにネットワーク障害の元の原因を決めるを助けます。ここに、到達性ロジックが2つの状態を区別する方法があります。…
ネットワーク例
以下の簡単なネットワーク図を見てください。 この例では、絵にある全てのホスト(サーバ、ルータ、スイッチなど)を監視していると仮定します。 Nagiosはインストールされて、Nagiosホストで実行中です。
親/子関係定義
NagiosがモニタされているホストDOWNとUNREACHABLEの状態を区別するため、Nagiosにホストがお互いどのように繋がっているかを指示する必要があります。 Nagios デーモンの立場で行います。 これをするために、Nagiosデーモンからそれぞれのホストまでパケットが通る経路をたどります。 各スイッチ、ルータ、およびサーバを到達したり、通過したりするパケットは"ホップ”と考えられます。そしてNagiosに親/子のホスト関係を定義する必要があります。 ここは、Nagiosの観点からホストの親子関係に似ています:
監視されているホストがどんな親子関係かを知って、どのようにNagiosを設定しますか? ホスト定義における親(parents)を指定することで、これが出来ます。 ここに、この例の親子関係を定義し例があります。(簡略化しています)
define host{
host_name Nagios ; The local host has no parent, it is the topmost host
}
define host{
host_name Switch1
parents Nagios
}
define host{
host_name Web
parents Switch1
}
define host{
host_name FTP
parents Switch1
}
define host{
host_name Router1
parents Switch1
}
define host{
host_name Switch2
parents Router1
}
define host{
host_name Wkstn1
parents Switch2
}
define host{
host_name HPLJ2605
parents Switch2
}
define host{
host_name Router2
parents Router1
}
define host{
host_name somewebsite.com
parents Router2
}
動作中の到達性ロジック
ホストに適切な親/子関係を設定したNagiosで、障害が起こると何が起こるかを見ましょう。 2つのホスト(ウェブとRouter1)がオフラインになったと仮定します…
ホストが状態(すなわち、UPからDOWNに)を変えるとき、Nagiosのホスト到達ロジックが始まります。 到達性ロジックはどんなにホストが状態を変えても親と子の並行チェックをスタートします 変化が起こるとき、これで、Nagiosはネットワークインフラの現在の状態をすぐに決定できます。
この例では、NagiosはWebとルータ1を両方停止状態と決定します。それは、それらのホストへの「経路」が妨げられていないからです。
Nagiosは、それらのホストにアクセスできないので、Router1以下の全てのホストをUNREACHABLE状態に決めます。 Router1がDOWNし、他のホストに経路を妨げています。 それらのホストはうまく実行中か、オフラインかもしれません。- 到達することができないので、Nagiosは、何だか知りません。 したがって、Nagiosは、それらがDOWNの代わりにUNREACHABLEであると考えています。
到達できない状態と通知
デフォルトで、NagiosはDOWNとUNREACHABLEホスト状態の両方を連絡先に通知します。 管理者/技術者として、到達できないあるホストに関する通知が欲しくないかもしれません。 あなたのネットワーク構造を知って、Nagiosが、あなたのルータ/ファイアウォールがDOWNと通知するなら、それから先へは全てアクセスできない事になります。
ネットワーク故障の間、UNREACHABLE通知の洪水からのんきに構えたいなら、ホスト定義における notification_option 指示、そ して/または、 通知定義でhost_notification_optionにunreachable(u)オプションを入れないようにすることです。
参照: ホスト・チェック, パッシブ・ホスト状態の解釈