
【ネットワーク教習所】
サービスを守るネットワーク監視
第2回:構成を把握し、障害に対応する!
著者:トゥワイズ・ラボ 山居 正幸
公開日:2008/03/13(木)
障害検出/解析の技術
今日のネットワークシステムのほとんどは、TCP/IPを基盤技術としている。従って、そのシステムの障害検出/解析には、TCP/IPの管理技術であるping、ポート監視、SNMP(Simple Network Management Protocol)を利用する。
pingは、ICMP(Internet Control Message Protocol)を利用したものである。ICMPのエコーリクエストを受信したノード(TCP/IPで通信するもの)は、ICMPのエコー応答を返信しなければならないという規則を利用した非常に単純な仕組みである。
応答を受信した場合、少なくともサービスの利用者は通信相手のサーバ、経路上の回線やネットワーク機器が正常に動作していてTCP/IPレベルでの通信が可能であることを確認できる。また、経路上のルータやLANスイッチに対して順番にpingで応答確認を行えば、通信障害の発生場所の特定に役立つ。pingは、仕組みが単純であるが、強力な障害検知機能があり、TCP/IPネットワークの歴史上、不動の標準管理コマンドの地位を維持している。
ポート監視は、サーバが提供するサービスと同じプロトコルでの接続可否を確認するものである。Webサービスならば、サーバのTCPの80番ポートに接続を試みて判断を行う。pingによる判断は、TCP/IPレベルの通信可否であるのに対して、ポート監視では、アプリケーションの動作まで判断できる。接続後に、特定のプロトコルによる通信を試みることもある。Webサービスならば、接続後に特定のページデータの取得リクエストを送信して、正常に取得できるか判断する。これによりサービスの正常動作の判断も可能である。
pingとポート監視は、死活監視と呼ばれ、通信やサービスの生き死にを監視できるものである。監視サービス会社が提供する基本的な監視項目となっている。しかし、この2つの技術だけでは、障害の発生は検知可能でも、詳細原因を解析したり、障害の発生を予見したりすることは難しい。そこで、SNMPが必要になる。

(画像をクリックすると別ウィンドウに拡大図を表示します)
より詳しく調査するためのSNMPの活用
SNMPは、元々TCP/IPネットワークのルータを管理する目的で開発されたものである。しかし、その有用性が高く評価され、ネットワークに接続可能な機器の管理技術として普及した。ルータ、LANスイッチ、サーバ、クライアントPCは当然であるが、UPS(無停電電源装置)、ネットワークプリンタ、サーバラック、CATV機器などにも広まっている。
SNMPの仕組みは、監視対象内にSNMPエージェントと呼ばれるソフトウェアがあり、これが監視対象内から監視に有効な情報を集めている。これをMIB(Management Infomation Base)と呼ばれる一種のデータベースとして整理する。
管理者は、SNMPマネージャにより監視対象のMIBの情報を読み出したり、設定することにより、監視対象の状態を把握したり、制御することが可能である。先に説明したpingなどの死活監視は、表玄関からノックして状態を確認するのに対して、SNMPは内部に潜入したスパイを使って、より詳しい状況を確認するものである。このため、pingではサーバとの通信可否しか判断できないものが、SNMPによりルータのあるポートが停止しているため、サーバと通信不能になっているというような詳細な原因が解明できる。
MIBには、TCP/IPで通信するノード共通の情報を示す標準MIBと、機器の種類ごとに特別に定義された拡張MIBがある。その種類は、膨大なものであり、メーカ独自の拡張MIBを定義するために企業番号を取得した数だけでも、3万以上である(2008年3月現在、企業番号リスト:http://www.iana.org/assignments/enterprise-numbersを参照)。
また、SNMPには、監視対象機器が自ら状態の変化を通知するTRAPという機能がある。例えば、ネットワークインターフェースがダウンした場合などの通知である。このTRAPを利用することにより、障害の検出を早めることができる。しかし、注意が必要なのは、TRAPは、UDPで送信されるため、受信できない可能性があることである、あくまでTRAPは監視において補助的なものであることを覚えておいて欲しい。
次のページ