前へ     目次     索引     DocHome     次へ     
iPlanet Web Server, Enterprise Edition 管理者ガイド



第 10 章   サーバの監視


この章では、組み込み型の監視ツール、サービス品質の機能、Simple Network Management Protocol (SNMP) など、サーバの監視手法について説明します。

iPlanet の Management Information Base (MIB) や、HP OpenView のようなネットワーク管理ソフトウェアとともに SNMP を使用して、ネットワーク内の他のデバイスを監視するのと同じように、リアルタイムでサーバを監視できます。Windows NT を使用している場合は、SNMP は組み込み済みで、すでに使用可能になっています。

統計機能または SNMP を使用することによって、サーバの状態をリアルタイムで表示できます。Unix または Linux を使用している場合に、SNMP の使用を計画するときは、iPlanet サーバを SNMP 用に構成する必要があります。この章では、Unix または Linux 上で、iPlanet サーバとともに SNMP を使用する際に必要な情報を提供します。

この章では、次の内容について説明します。



統計情報によるサーバの監視

統計機能を使用して、サーバの現在の稼動状況を監視できます。統計情報は、サーバが処理している要求数と、それらの要求の処理状況を示します。個々の仮想サーバに関する統計情報や、サーバインスタンス全体に関する統計情報を表示できます。対話型サーバモニターを通してサーバが多数の要求を処理していることがわかる場合、要求数に合わせてサーバ構成またはシステムのネットワークカーネルを調整する必要があることもあります。詳細については、http://docs.iplanet.com/docs/manuals/enterprise.html から、オンライン形式の『Performance Tuning, Sizing, and Scaling Guide for iPlanet Web Server』を参照してください。

統計情報を使用可能にすると、次の分野の統計情報を表示できます。

  • 接続

  • DNS

  • KeepAlive

  • キャッシュ

  • 仮想サーバ

対話型サーバモニターで総計をレポートするサーバの各種統計情報については、オンラインヘルプの「「Monitor Current Activity」ページ」を参照してください。



注意

統計情報のプロファイリングを使用可能にすると、そのサーバのすべてのユーザが統計情報を使用できるようになります。詳細については、『NSAPI プログラマーズガイド』の 第 3 章 「定義済み SAF および要求処理プロセス」の説明を参照してください。




統計情報を使用可能にする

統計情報を使用可能にするには、次の手順に従います。

  1. Server Manager から「Monitor」タブをクリックします。

  2. 「Monitor Current Activity」をクリックします。

  3. 「Yes」をクリックして統計情報を使用可能にします。

  4. 「OK」をクリックします。

  5. 「Apply」をクリックして変更を適用します。サーバを再起動する必要はありません。

統計情報を使用可能にする方法の詳細については、オンラインヘルプを参照してください。


統計情報の使用法

統計情報を使用可能にすると、サーバインスタンスや仮想サーバの稼動状況に関するさまざまな情報を得ることができます。統計情報は、機能別に分類されます。

統計情報にアクセスするには、次の手順に従います。

  1. Server Manager から「Monitor」タブをクリックします。

  2. 「Minitor Current Activity」をクリックします。

  3. プルダウンリストからポーリング間隔を選択します。

    ポーリング間隔は、統計情報の表示について更新間隔を示す秒数です。

  4. プルダウンリストから、表示する統計情報の種類を選択します。

  5. 「OK」をクリックします。

    サーバインスタンスが稼動中で、統計情報のプロファイリングを使用可能にしている場合、選択した種類の統計情報を示すページが表示されます。このページは、ポーリング間隔として選択した値に応じて、5 〜 15 秒ごとに更新されます。

統計情報に表示されるデータを使用してサーバを調整できます。詳細については、http://docs.iplanet.com/docs/manuals/enterprise.html で、オンライン形式の『Performance Tuning, Sizing, and Scaling Guide for iPlanet Web Server』を参照してください。



サービス品質の使用法



サービス品質は、サーバインスタンスの仮想サーバクラスまたは仮想サーバに対して設定するパフォーマンス制限です。たとえば、ISP の場合、許可する帯域幅に応じて、各仮想サーバにそれぞれ異なる課金をしたい場合があります。その場合、2 つの領域を制限できます。1 つは帯域幅の量、もう 1 つは接続数です。

Server Manager の「Monitor」タブで、サーバ全体または仮想サーバクラスに関するこれらの設定を有効にできます。ただし、個々の仮想サーバについて、サーバ全体またはクラスレベルの設定を無効にできます。個々のサーバに関するサービス品質の制限設定の詳細については、 「仮想サーバのサービス品質の設定」を参照してください。

再計算間隔と測定時間の2 つの設定値により、帯域幅の再計算頻度とトラフィックの計算方法を制御します。再計算間隔は、帯域幅を計算する頻度 (ミリ秒単位) です。測定時間は、トラフィック計算でデータを使用する時間です。

この節では、次の内容について説明します。


サービス品質の例

次の例は、サービス品質の情報を収集および計算する方法を示しています。

サーバの測定時間は 30 秒です。

このサーバは 0 秒で起動します。

1 秒の時点で、HTTP 接続によって、サーバとの間に 5000 バイトのトラフィックが生成されます。

このあと、それ以上の接続は行われません。30 秒の時点で、最後の 30 秒間の合計トラフィックは 5000 バイトになります。

32 秒の時点で、1 秒からのトラフィックが廃棄されます。これは測定時間の 30 秒よりも古いトラフィックであるためです。その結果、この時点での最後の 30 秒間の合計トラフィックは 0 になります。

再計算間隔も同様に動作します。このサーバの再計算間隔は 100 ミリ秒です。

前述の例を使用し、帯域幅は 100 ミリ秒ごとに再計算されます。この計算は、トラフィック量と測定時間に基づきます。

0 秒の時点で、帯域幅の最初の計算が行われます。この時点での合計トラフィックは 0 で、測定時間の 30 秒で割ると、帯域幅は 0 になります。

1 秒の時点では、帯域幅の 10 回目 (1000 ミリ秒/100 ミリ秒) の計算が行われます。この時点での合計トラフィックは 5000 バイトで、これを 30 秒で割ります。したがって、帯域幅は 5000/30 = 166 バイト/秒になります。

30 秒の時点では、帯域幅の 300 回目の計算が行われます。この時点での合計トラフィックは 5000 バイトで、これを 30 秒で割ります。したがって、帯域幅は 5000/30 = 166 バイト/秒になります。

32 秒の時点では、帯域幅の 320 回目の計算が行われます。この時点でのトラフィックは 0 バイトになり (トラフィックを生成する 1 つの接続が古くなってカウントされなくなるため)、これを 30 秒で割ると、0 バイト/秒になります。


サービス品質の設定

サーバインスタンスまたは仮想サーバクラスのサービスの品質を設定するには、ユーザインタフェースを使用して構成する必要があります。サービス品質の設定を実際に有効にするためには、obj.conf ファイルの Server Application Function (SAF) も設定する必要があります。

サービス品質を設定するには、次の手順に従います。

  1. Server Manager から「Monitor」タブをクリックします。

  2. 「Quality of Service」をクリックします。

    サービス品質の一般的な設定値を示すページが表示されます。続いて、サーバインスタンス全体および仮想サーバの各クラスのリストも表示されます。

  3. サーバインスタンス全体でサービス品質を使用可能にするには、「Enable」をクリックします。

    デフォルトでは、サービス品質は無効になっています。サービス品質を有効にすると、サーバのオーバーヘッドがわずかに増えます。

  4. 「Recompute Interval」を選択します。

    再計算間隔は、すべてのサーバ、クラス、および仮想サーバに関する帯域幅の計算間隔を示すミリ秒数です。デフォルトは 100 ミリ秒です。

  5. 「Metric Interval」を選択します。

    測定時間は、トラフィックを測定する時間を示す秒数です。デフォルトは 30 秒です。この時間に測定されたすべての帯域幅を平均して、秒当たりのバイト数が得られます。

    大規模なファイルの転送を多数扱うサイトの場合、このフィールドには、大きい値 (数分またはそれ以上) を使用します。大規模なファイルの転送では、測定時間が短いと、許容帯域幅のすべてが占有されることがあり、最大帯域幅の設定を有効にしている場合には接続が拒否されることがあります。帯域幅は測定時間で平均されるため、この間隔を長くすると、大規模ファイルによる帯域幅の急上昇が均等化されます。

    帯域幅制限値が使用可能帯域幅よりもはるかに小さい場合 (たとえば、帯域幅の制限値が 1M バイト/秒で、バックボーンとの接続が 1G バイト/秒の場合など) は、測定時間を短くする必要があります。

    大規模な静的ファイルの転送を扱う場合で、帯域幅制限値が使用可能帯域幅よりもはるかに小さいときは、それぞれの問題が相反する解決法を必要とするので、どちらの状況を調整するかを決める必要があります。

  6. サーバインスタンスまたは仮想サーバクラス、あるいはその両方のサービス品質を使用可能にします。

    画面の下の部分に、サーバインスタンスとサーバクラスが一覧表示されています。サービス品質を使用可能にする項目の隣にある「Enable」を選択します。

  7. 最大帯域幅をバイト/秒単位で設定します。

  8. 最大帯域幅の設定を強制するかどうかを選択します。

    最大帯域幅を強制する場合、サーバがその帯域幅の制限値に達すると、それ以上の接続は拒否されます。

    最大帯域幅を強制しない場合は、最大帯域幅を超えると、サーバのエラーログにメッセージが記録されます。

  9. 最大接続許可数を選択します。

    この数は、同時に処理する要求の数です。

  10. 最大接続数の設定を強制するかどうかを選択します。

    最大接続数を強制する場合、サーバがその最大接続数に達すると、それ以上の接続は拒否されます。

  11. 最大接続数を強制しない場合は、最大接続数を超えると、サーバのエラーログにメッセージが記録されます。

  12. 「OK」をクリックします。


obj.conf で必要な変更

サービス品質を使用可能にするには、AuthTrans qos-handler およびErrorqos-error という 2 つの Server Application Function (SAF) を呼び出す指令を obj.conf に追加する必要があります。

qos-handler AuthTrans 指令を正しく動作させるためには、この指令が、デフォルトのオブジェクトに設定された最初の AuthTrans である必要があります。サービス品質ハンドラの役割は、仮想サーバ、仮想サーバクラス、およびグローバルサーバの現在の統計情報を調べ、エラーを返して制限値を強制することです。

iPlanet Web Server には、qos-handler という組み込みのサービス品質ハンドラ SAF サンプルが含まれています。この SAF は、制限値に達した時にログを記録し、サーバに 503 「Server busy」を返して、NSAPI で処理されるようにします。

iPlanet Web Server には、qos-error という組み込みのエラー SAF サンプルも含まれており、これは、503 エラーの原因となった制限値およびその制限の原因となった統計値を示すエラーページを返します。サンプルコードを修正して、別のエラー情報を提供することもできます。

これらのサンプルは、server_root/plugins/nsapi/examples/qos.c (server_root はサーバルートを示す) にあります。これらのサンプルを使用できますが、独自の SAF を記述することもできます。

これらの SAF およびその使用方法については、『NSAPI プログラマーズガイド』を参照してください。


サービス品質に関する既知の制限事項

サービス品質の機能を使用する時は、以下の制限事項に留意してください。

  • パフォーマンスを低下させないために、接続または帯域幅の統計情報は、サーバプロセス間で共有されません。つまり、MaxProc の設定は統計情報に反映されません。そのため、すべての制限値はサーバプロセスに個別に適用され、全プロセスの総計に対しては適用されません。MaxProcs および複数プロセスの詳細については、http://docs.iplanet.com/docs/manuals/enterprise.html から、オンライン形式の『Performance Tuning, Sizing, and Scaling Guide for iPlanet Web Server』を参照してください。

  • サービス品質の機能では、アプリケーションレベルの HTTP 帯域幅のみを測定します。HTTP 帯域幅は、次のようなさまざまな理由により、実際の TCP ネットワーク帯域幅とは異なる場合があります。

    • SSL が有効になっている場合、ハンドシェークおよびクライアント証明書交換がトラフィックに追加されますが、量は測定されません。

    • チャンクエンコーディングがどちらか一方の方向または両方向で有効になっている場合、チャンク層によってチャンクヘッダーが削除されて、トラフィックに算入されません。その他のヘッダーまたはプロトコル項目は算入されます。

  • サービス品質の機能では、PR_TransmitFile コールからのトラフィックを正確に測定できません。PR_Send()/net_writePR_Recv()/net_read などの基本 I/O オペレーションでは、1 回のシステムコールで転送されるバイト数は通常はバッファのサイズであり、I/O コールから即時に返されるため、転送されたデータは帯域幅マネージャによって即時に計算されます。このため、動的なコンテンツアプリケーションの瞬間的な帯域幅を正確に測定できます。ただし、PR_TransmitFile から転送されるデータの量は、転送の終了時点までわからないため、転送が完了するまでは測定できません。

    PR_TransmitFile が短時間の場合は、サービス品質機能は適切に動作します。ただし、ダイアルアップユーザが大きいファイルをダウンロードする場合など、PR_TransmitFile が長時間に及ぶ場合は、転送の完了時に、転送された全体のデータ量が算入されます。次の再計算間隔が始まってから帯域幅マネージャが帯域幅を再計算すると、その大規模な PR_TransmitFile が原因で、帯域幅が非常に大きくなります。この場合、サーバは、次の測定時間まですべての要求を拒否することがあります。そして、帯域幅マネージャがファイル転送オペレーションを「除外」したときには、ファイル転送オペレーションが終了し、帯域幅の値はふたたび小さくなります。かなり長時間に及ぶ静的ファイルのダウンロードを扱うサイトでは、測定時間をデフォルトの 30 秒よりも長くする必要があります。

  • 計算される帯域幅は、瞬時に測定されるのではなく、一定の間隔で一定期間にわたって再計算されるので、常に近似値となります。たとえば、測定時間がデフォルトの 30 秒で、サーバが 29 秒間アイドル状態の場合、次の 1 秒間で、クライアントがその帯域幅制限値の 30 倍を使用することもあります。

  • サービス品質の帯域幅統計情報は、サーバが動的に再構成されると失われます。さらに、サービス品質の制限事項は、古い、アクティブでない構成上で接続したスレッドには適用されません。これは、帯域幅マネージャのスレッドでは、アクティブな構成の帯域幅統計値のみを計算するためです。長時間ソケットを閉じずにアクティブになっているためにサーバがタイムアウトにしないクライアントでは、サーバの動的再構成後、サービス品質の制限事項の影響を受けない場合もあります。

  • 同時に複数の接続が発生する場合には、仮想サーバの統計情報は仮想サーバクラスおよびグローバルサーバインスタンスとは異なる細分度で計算されます。個々の仮想サーバの接続カウンタは、要求が解析されて仮想サーバに配信された直後に、ひとつひとつ増分されます。また、その要求に対する応答処理が終了した時点で、カウンタはひとつひとつ減らされます。このため、仮想サーバの接続統計情報は、どの時点でも常に正確なものになります。

    ただし、仮想サーバクラスおよびグローバルサーバインスタンスの接続統計情報は、瞬時には更新されません。これらの統計情報は、再計算間隔ごとに帯域幅マネージャのスレッドによって更新されます。仮想サーバクラスの接続数は、そのクラスのすべての仮想サーバ上の接続の合計数であり、グローバルサーバインスタンスの接続数は、すべての仮想サーバクラス上の接続の合計数です。

    それぞれの値の計算方法により、仮想サーバの接続数は常に正確 (接続数の制限値を設定している場合は、その制限値を超えることができない) ですが、仮想サーバクラスおよびサーバインスタンスの接続数は、一定の間隔ごとに計算されるので、十分に正確なものではありません。



SNMP の基本

SNMP は、ネットワークアクティビティに関するデータをやり取りするために使用されるプロトコルです。SNMP では、管理対象デバイスとネットワークマネージメントステーション (NMS) の間をデータが移動します。管理対象デバイスは、SNMP を使用するすべてのデバイス、つまり、ネットワーク上のホスト、ルーター、Web サーバ、その他のサーバなどです。NMS は、そのネットワークをリモートで管理するためのマシンです。一般に、NMS ソフトウェアでは、収集されたデータをグラフに表示したり、そのデータを使用してサーバが特定の許容範囲内で動作していることを確認します。

NMS は通常、1 つ以上のネットワーク管理アプリケーションがインストールされた強力なワークステーションです。HP OpenView のようなネットワーク管理アプリケーションでは、Web サーバなどの管理対象デバイスに関する情報がグラフィカルに表示されます。たとえば、社内のどのサーバが稼動またはダウンしているかを表示したり、受け取ったエラーメッセージの数と種類を表示したりできます。iPlanet サーバで SNMP を使用する場合、この情報は、サブエージェントとマスターエージェントという 2 種類のエージェントを使用して、NMS とサーバの間で転送されます。

サブエージェントは、サーバに関する情報を収集し、その情報をサーバのマスターエージェントに渡します。Administration Server 以外のすべての iPlanet サーバには、サブエージェントがあります。



SNMP の設定を変更したあとは、「Apply」ボタンをクリックし、SNMP サブエージェントを再起動する必要があります。



マスターエージェントは、各種サブエージェントと NMS の間で情報をやり取りします。マスターエージェントは、Administration Server とともにインストールされます。

1 つのホストコンピュータに複数のサブエージェントをインストールできますが、マスターエージェントは 1 つしかインストールできません。たとえば、Directory Server、iPlanet Web Server、および Messaging Server を同じホストにインストールしている場合、各サーバのサブエージェントは、同じマスターエージェントと通信します。



iPlanet Web Server の MIB



iPlanet Web Server には、ネットワーク管理に関する変数が保存されます。マスターエージェントがアクセスできる変数は、管理対象オブジェクトと呼ばれます。これらのオブジェクトは、MIB (Management Information Base) と呼ばれるツリー構造で定義されます。MIB は、Web サーバのネットワーク構成、状態、および統計情報へのアクセスを提供します。SNMP を使用すると、この情報をネットワークマネージメントステーション (NMS) から見ることができます。

MIB ツリーのトップレベルを見ると、インターネットオブジェクト識別子には directory (1)、mgmt (2)、experimental (3)、および private (4) という 4 つのサブツリーがあることがわかります。private (4) サブツリーには、enterprises (1) ノードが含まれています。enterprises (1) ノードの各サブツリーは、個別の企業に割り当てられます。この企業は、独自の MIB 拡張機能を登録している組織です。企業は、自社のサブツリーの下に製品別のサブツリーを作成できます。企業が作成した MIB は、enterprises (1) ノードの下に置かれます。iPlanet の MIB は、enterprises (1) ノードの下に置かれます。

各 iPlanet サーバのサブエージェントには、SNMP 通信で使用する MIB が用意されています。iPlanet サーバは、これらの変数が含まれたメッセージまたはトラップを送信することによって、重大なイベントをネットワークマネージメントステーション (NMS) に報告します。NMS では、サーバの MIB にデータを照会したり、MIB の変数をリモートで変更することもできます。

各 iPlanet サーバには、専用の MIB があります。iPlanet の MIB はすべて、次の場所にあります (server_root はサーバルートを示す)。

server_root/plugins/snmp

iPlanet Web Server の MIB は、iws.mib という名前のファイルです。この MIB には、iPlanet Web Server のネットワーク管理に関する各種変数の定義が格納されています。

iPlanet Web Server 6.0 の MIB は、http 60 (iws60 OBJECT IDENTIFIER ::= {http 60 }) というオブジェクト識別子を持ち、server_root/plugins/snmp ディレクトリにあります (server_root はサーバルートを示す)。

iPlanet Web Server の MIB を使用すると、リアルタイムで Web サーバに関する管理情報を確認し、そのサーバを監視できます。表 10-1 は、iws.mib. に格納されている管理対象オブジェクトとその説明を示します。


表 10-1    iws.mib の管理対象オブジェクトと説明 

管理対象オブジェクト

説明

iwsInstanceTable  

iPlanet Web Server インスタンスのテーブル  

iwsInstanceEntry  

iPlanet Web Server インスタンスのエントリ  

iwsInstanceIndex  

サーバインスタンスのインデックス  

iwsInstanceId  

サーバインスタンスの識別子  

iwsInstanceVersion  

バージョンを示す文字列。例 : iPlanet-WebServer-Enterprise/6.0 BB1-01/24/2001 17:15 (SunOS DOMESTIC)  

iwsInstanceDescription  

サーバインスタンスの説明  

iwsInstanceOrganization  

サーバインスタンスを担当する組織  

iwsInstanceContact  

サーバインスタンス担当者の連絡先情報  

iwsInstanceLocation  

サーバがある場所  

iwsInstanceStatus  

サーバインスタンスの状態  

iwsInstanceUptime  

サーバが稼動している時間  

iwsInstanceDeathCount  

サーバインスタンスのプロセスが機能停止した回数  

iwsInstanceRequests  

サーバインスタンスが処理した要求数  

iwsInstanceInOctets  

サーバインスタンスが受信したオクテット数。情報を利用できない場合は 0 を示す  

iwsInstanceOutOctets  

サーバインスタンスが送信したオクテット数。情報を利用できない場合は 0 を示す  

iwsInstanceCount2xx  

サーバインスタンスが発行した 200 番レベル (Successful) の応答数  

iwsInstanceCount3xx  

サーバインスタンスが発行した 300 番レベル (Redirection) の応答数  

iwsInstanceCount4xx  

サーバインスタンスが発行した 400 番レベル (Client Error) の応答数  

iwsInstanceCount5xx  

サーバインスタンスが発行した 500 番レベル (Server Error) の応答数  

iwsInstanceCountOther  

サーバインスタンスが発行したその他の (2xx、3xx、4xx、5xx のいずれでもない) 応答数  

iwsInstanceCount302  

サーバインスタンスが発行した 302 (Moved Temporarily) の応答数  

iwsInstanceCount304  

サーバインスタンスが発行した 304 (Not Modified) の応答数  

iwsInstanceCount400  

サーバインスタンスが発行した 400 (Bad Request) の応答数  

iwsInstanceCount401  

サーバインスタンスが発行した 401 (Unauthorized) の応答数  

iwsInstanceCount403  

サーバインスタンスが発行した 403 (Forbidden) の応答数  

iwsInstanceCount404  

サーバインスタンスが発行した 404 (Not Found) の応答数  

iwsVsTable  

iPlanet Web Server 仮想サーバのテーブル  

iwsVsEntry  

iPlanet Web Server 仮想サーバのエントリ  

iwsVsIndex  

仮想サーバのインデックス  

iwsVsId  

仮想サーバの識別子  

iwsVsRequests  

仮想サーバが処理した要求数  

iwsVsInOctets  

仮想サーバが受信したオクテット数  

iwsVsOutOctets  

仮想サーバが送信したオクテット数  

iwsVsCount2xx  

仮想サーバが発行した 200 番レベル (Successful) の応答数  

iwsVsCount3xx  

仮想サーバが発行した 300 番レベル (Redirection) の応答数  

iwsVsCount4xx  

仮想サーバが発行した 400 番レベル (Client Error) の応答数  

iwsVsCount5xx  

仮想サーバが発行した 500 番レベル (Server Error) の応答数  

iwsVsCountOther  

仮想サーバが発行したその他の (2xx、3xx、4xx、5xx のいずれでもない) 応答数  

iwsVsCount302  

仮想サーバが発行した 302 (Moved Temporarily) の応答数  

iwsVsCount304  

仮想サーバが発行した 304 (Not Modified) の応答数  

iwsVsCount400  

仮想サーバが発行した 400 (Bad Request) の応答数  

iwsVsCount401  

仮想サーバが発行した 401 (Unauthorized) の応答数  

iwsVsCount403  

仮想サーバが発行した 403 (Forbidden) の応答数  

iwsVsCount404  

仮想サーバが発行した 404 (Not Found) の応答数  

iwsProcessTable  

iPlanet Web Server プロセスのテーブル  

iwsProcessEntry  

iPlanet Web Server プロセスのエントリ  

iwsProcessIndex  

プロセスのインデックス  

iwsProcessId  

起動中のシステムプロセスの識別子  

iwsProcessThreadCount  

要求処理スレッド数  

iwsProcessThreadIdle  

現在アイドル状態の要求処理スレッド数  

iwsProcessConnectionQueueCount  

接続キューに入っている現在の接続数  

iwsProcessConnectionQueuePeak  

これまでに同時にキューに入れた接続の最大数  

iwsProcessConnectionQueueMax  

接続キューに入れることができる最大接続数  

iwsProcessConnectionQueueTotal  

これまでに受け入れた接続数  

iwsProcessConnectionQueueOverflows  

接続キューのオーバーフローにより拒否した接続数  

iwsProcessKeepaliveCount  

キープアライブキューに入っている現在の接続数  

iwsProcessKeepaliveMax  

キープアライブキューに入れることができる最大接続数  

iwsListenTable  

iPlanet Web Server 待機ソケットのテーブル  

iwsListenEntry  

iPlanet Web Server 待機ソケットのエントリ  

iwsListenIndex  

待機ソケットのインデックス  

iwsListenId  

待機ソケットの識別子  

iwsListenAddress  

ソケットが待機するアドレス  

iwsListenPort  

ソケットが待機するポート  

iwsListenSecurity  

暗号化のサポート  

iwsThreadPoolTable  

iPlanet Web Server スレッドプールのテーブル  

iwsThreadPoolEntry  

iPlanet Web Server スレッドプールのエントリ  

iwsThreadPoolIndex  

スレッドプールのインデックス  

iwsThreadPoolEntry  

スレッドプールの識別子  

iwsThreadPoolEntry  

キューに入っている要求数  

iwsThreadPoolEntry  

これまでに同時にキューに入れた要求の最大数  

iwsThreadPoolEntry  

キューに入れることができる最大要求数  

iwsInstanceStatusChange  

iwsInstanceStatus が変更されたことを示すiwsInstanceStatusChange トラップ  

iwsVsCount503  

発行された 503 (Unavailable) の応答数  

iwsInstanceCount503  

発行された 503 (Unavailable) の応答数  



SNMP の設定



通常、SNMP を使用する場合は、システムにマスターエージェントと 1 つ以上のサブエージェントがインストールされ、実行されている必要があります。サブエージェントを使用可能にするためには、マスターエージェントをインストールする必要があります。

SNMP の設定手順は、システムによって異なります。表 10-2 は、さまざまな条件下での設定手順の概要を示します。実際の手順は、この章の後半で詳細に説明します。

設定を開始する前に、次の 2 つの点を確認する必要があります。

  • SNMP エージェント (使用するオペレーティングシステムのネイティブエージェント) がシステムですでに稼動していること

  • すでに稼動している場合、その SNMP エージェントは SMUX 通信をサポートしていること(AIX プラットフォームを使用している場合、そのシステムは SMUX をサポートしています)

この情報を確認する方法については、使用しているシステムのマニュアルを参照してください。



Administration Server の SNMP の設定を変更したあと、新しいサーバをインストールしたあと、または既存のサーバを削除したあとは、次の手順を実行する必要があります。

  • Windows NT の場合は、Windows SNMP サービスを再起動するか、マシンを再起動します。

  • UNIX の場合は、Administration Server を使用して SNMP マスターエージェントを再起動します。




表 10-2    SNMP のマスターエージェントおよびサブエージェントを使用可能にする手順の概要 

サーバの条件

実行手順 (次の節で詳細に説明)

ネイティブエージェントが現在実行されていない  

  1. マスターエージェントを起動します。

  2. システムにインストールされている各サーバのサブエージェントを使用可能にします。

 
  • ネイティブエージェントが現在実行されている

  • SMUX をサポートしていない

  • ネイティブエージェントの使用を継続する必要がない

 
  1. Administration Server のマスターエージェントをインストールする場合はネイティブエージェントを停止します。

  2. マスターエージェントを起動します。

  3. システムにインストールされている各サーバのサブエージェントを使用可能にします。

 
  • ネイティブエージェントが現在実行されている

  • SMUX をサポートしていない

  • ネイティブエージェントの使用を継続する必要がある

 
  1. プロキシ SNMP エージェントをインストールします。

  2. プロキシ SNMP エージェントを起動します。

  3. マスターエージェントのポート番号以外のポート番号を使用してネイティブエージェントを再起動します。

  4. マスターエージェントを起動します。

  5. システムにインストールされている各サーバのサブエージェントを使用可能にします。

 
  • ネイティブエージェントが現在実行されている

  • SMUX をサポートしている

 

  1. SNMP ネイティブエージェントを再構成します。

  2. システムにインストールされている各サーバのサブエージェントを使用可能にします。

 



プロキシ SNMP エージェントの使用法 (UNIX または Linux)



ネイティブエージェントがすでに実行されていて、今後も iPlanet Web Server マスターエージェントと同時に使用し続けたい場合には、プロキシ SNMP エージェントを使用する必要があります。ここでの手順を始める前に、ネイティブのマスターエージェントを停止してください。詳細については、使用しているシステムのマニュアルを参照してください。



プロキシエージェントを使用するには、このエージェントをインストールして起動する必要があります。さらに、iPlanet Web Server のマスターエージェントが実行されているポート番号以外のポート番号を使用してネイティブ SNMP エージェントを再起動する必要があります。



この節では、次の内容について説明します。


プロキシ SNMP エージェントのインストール

SNMP がシステムで稼動中で、ネイティブ SNMP デーモンの使用を継続する必要がある場合は、次の手順に従います。

  1. SNMP マスターエージェントをインストールします。「SNMP マスターエージェントのインストール」を参照。

  2. プロキシ SNMP エージェントをインストールして起動し、ネイティブ SNMP デーモンを再起動します。「プロキシ SNMP エージェントの起動」および 「ネイティブ SNMP デーモンの再起動」を参照してください。

  3. SNMP マスターエージェントを起動します。「SNMP マスターエージェントを使用可能にして起動する」を参照してください。

  4. サブエージェントを使用可能にします。「サブエージェントを使用可能にする」を参照してください。

SNMP プロキシエージェントをインストールするには、 CONFIG ファイル (このファイルに別の名前を付けることも可能) を編集して、SNMP デーモンが待機するポートを指定します。このファイルは、サーバのルートディレクトリの plugins/snmp/sagt にあります。また、プロキシ SNMP エージェントが転送する MIB ツリーおよびトラップも指定する必要があります。

CONFIG ファイルの例を次に示します。


    AGENT AT PORT 1161 WITH COMMUNITY public
    SUBTREES 1.3.6.1.2.1.1,
           1.3.6.1.2.1.2,
           1.3.6.1.2.1.3,
           1.3.6.1.2.1.4,
           1.3.6.1.2.1.5,
           1.3.6.1.2.1.6,
           1.3.6.1.2.1.7,
           1.3.6.1.2.1.8
    FORWARD ALL TRAPS;



プロキシ SNMP エージェントの起動

プロキシ SNMP エージェントを起動するには、コマンドプロンプトで次のように入力します。

# sagt -c CONFIG&


ネイティブ SNMP デーモンの再起動

プロキシ SNMP エージェントを起動したあと、CONFIG ファイルで指定したポートでネイティブ SNMP デーモンを再起動する必要があります。ネイティブ SNMP デーモンを再起動するには、コマンドプロンプトで次のように入力します。

# snmpd -P port_number

port_number は、CONFIG ファイルで指定したポート番号を示します。たとえば、Solaris プラットフォームで、前に示した CONFIG ファイル例のポート番号を使用する場合は、次のように入力します。

# snmpd -P 1161



SNMP ネイティブエージェントの再構成

SNMP デーモンが AIX で稼動している場合は、SMUX がサポートされています。このため、マスターエージェントをインストールする必要はありません。ただし、AIX の SNMP デーモンの構成を変更する必要があります。

AIX では、いくつかの構成ファイルを使用して通信内容を制限しています。構成ファイルの 1 つである snmpd.conf を変更して、SNMP デーモンが SMUX サブエージェントからの着信メッセージを受け入れるようにする必要があります。詳細については、オンラインマニュアルの snmpd.conf のページを参照してください。各サブエージェントを定義する行を追加する必要があります。

たとえば、snmpd.conf に次の行を追加します。

smux 1.3.6.1.4.1.1.1450.1 "" IP_address net_mask

IP_address は、そのサブエージェントを実行するホストの IP アドレス、net_mask は、そのホストのネットワークマスクを示します。



ループバックアドレスの 127.0.0.1 は使用できません。実 IP アドレスを使用してください。





SNMP マスターエージェントのインストール



Server Manager を使用してマスター SNMP エージェントをインストールし、起動するには、サーバが root として実行されている必要があります。

Server Manager を使用してマスター SNMP エージェントをインストールするには

  1. スーパーユーザ (root) としてログインします。

  2. SNMP デーモン (snmpd) がポート 161 で実行されているかどうか確認します。

    SNMP デーモンが実行されていない場合は、手順 4 に進みます。

    SNMP デーモンが実行されている場合は、その再起動方法と、デーモンがどの MIB ツリーをサポートしているかを確認します。

  3. SNMP デーモンが実行されている場合は、そのプロセスを終了します。

  4. Server Manager で、「Global Settings」タブから「SNMP Master Agent Trap」ページを選択します。「Manager Entries」ページが表示されます。

  5. ネットワーク管理ソフトウェアを実行するシステムの名前を入力します。

  6. ネットワーク管理システムがトラップを待機するポート番号を入力します。一般的なポートは 162 です。トラップの詳細については、「トラップ送信先の設定」を参照してください。

  7. トラップで使用するコミュニティー文字列を入力します。コミュニティー文字列の詳細については、「コミュニティー文字列の設定」を参照してください。

  8. 「OK」をクリックします。

  9. Server Manager で、「Global Settings」タブから「SNMP Master Agent Community」ページを選択します。「Community Strings」ページが表示されます。

  10. マスターエージェントのコミュニティー文字列を入力します。

  11. コミュニティーの動作を選択します。

  12. 「OK」をクリックします。



SNMP マスターエージェントを使用可能にして起動する

マスターエージェントの動作は、CONFIG という名前のエージェント構成ファイルに定義されています。Server Manager を使用して CONFIGファイルを編集できます。また、手動でこのファイルを編集することもできます。SNMP サブエージェントを使用可能にするためには、マスター SNMP エージェントをインストールする必要があります。

マスターエージェントを再起動した時に、「System Error: Could not bind to port」のようなバインドエラーが発生する場合は、ps -ef | grep snmp を使用して、magt が実行されているかどうかを確認します。実行されている場合は、kill -9 pid コマンドを使用して、そのプロセスを終了します。SNMP 用の CGI がふたたび機能し始めます。

この節では、次の内容について説明します。

  • マスターエージェントを別のポートで起動する

  • SNMP マスターエージェントを手動で構成する

  • マスターエージェントの CONFIG ファイルの編集

  • sysContact 変数と sysLocation 変数の定義

  • SNMP サブエージェントの構成

  • SNMP マスターエージェントの起動


マスターエージェントを別のポートで起動する

管理インタフェースでは、161 以外の ポートで SNMP マスターエージェントを起動できません。ただし、手動操作により、他のポートで SNMP マスターエージェントを起動できます。その手順を次に示します。

  1. /server_root/plugins/snmp/magt/CONFIG を編集して、目的のポートを指定します (server_root はサーバルートを示す)。

  2. 次の起動スクリプトを実行します。

    cd /server_root/https-admserv

    ./start -shell /server_root/plugins/snmp/magt/magt

    /server_root/plugins/snmp/magt/CONFIG

    /server_root/plugins/snmp/magt/INIT

これで、マスターエージェントが目的のポートで起動します。手動で起動した場合でも、そのマスターエージェントが実行されていることはユーザインタフェースで検知できます。


SNMP マスターエージェントを手動で構成する

マスター SNMP エージェントを手動で構成するには

  1. スーパーユーザとしてログインします。

  2. SNMP デーモン (snmpd) がポート 161 で実行されているかどうか確認します。

    SNMP デーモンが実行されている場合は、その再起動方法と、どの MIB ツリーをサポートしているかを確認します。次に、そのプロセスを終了します。

  3. サーバのルートディレクトリの plugins/snmp/magt にある CONFIG ファイルを編集します。

  4. (省略可能) CONFIG ファイルに sysContact 変数と sysLocation 変数を定義します。


マスターエージェントの CONFIG ファイルの編集

CONFIG ファイルには、マスターエージェントが処理するコミュニティーおよびマネージャが定義されています。マネージャの値は、有効なシステム名または IP アドレスである必要があります。

基本的な CONFIG ファイルの例を次に示します。


COMMUNITY          public
                   ALLOW ALL OPERATIONS

MANAGER            manager_station_name
                   SEND ALL TRAPS TO PORT 162
                    WITH COMMUNITY public



sysContact 変数と sysLocation 変数の定義

CONFIG ファイルを編集して、MIB-II 変数の sysContactsysLocation を指定する sysContactsysLocation の初期値を追加できます。この例では、sysContact および sysLocation に指定する文字列が引用符で囲まれています。空白文字、改行、タブなどを含む文字列は、引用符で囲む必要があります。また、16 進法表記で値を指定することもできます。

sysContact 変数および sysLocation 変数が定義された CONFIG ファイルの例を次に示します。


COMMUNITY          public
                   ALLOW ALL OPERATIONS

MANAGER            nms2
                   SEND ALL TRAPS TO PORT 162
                   WITH COMMUNITY public

INITIAL            sysLocation "Server room
501 East Middlefield Road
Mountain View, CA 94043
USA"

INITIAL            sysContact "John Doe
email:jdoe@netscape.com"



SNMP サブエージェントの構成

Server Manager を使用して SNMP サブエージェントを構成するには、次の手順を実行します。

  1. Administration Server から、サーバインスタンスを選択し、「Manage」をクリックします。

  2. 「Monitor」タブを選択します。

  3. 「SNMP Subagent Configuration」を選択します。

  4. (UNIX のみ) 「Master Host」フィールドに、サーバの名前とドメインを入力します。

  5. 「Description」フィールドに、オペレーティングシステム情報など、サーバの説明を入力します。

  6. 「Organization」フィールドに、そのサーバを担当する組織を入力します。

  7. 「Location」フィールドに、サーバの絶対パスを入力します。

  8. 「Contact」フィールドに、サーバの担当者の名前と連絡先情報を入力します。

  9. 「Enable SNMP Statistics Collection」で「On」を選択します。

  10. 「OK」をクリックします。

  11. 「Apply」をクリックします。

  12. 「Apply Changes」を選択し、変更を有効にするためにサーバを再起動します。


SNMP マスターエージェントの起動

SNMP マスターエージェントはインストールしたあと、手動で、または Administration Server を使用して起動できます。


手動による SNMP マスターエージェントの起動

マスターエージェントを手動で起動するには、コマンドプロンプトで次のように入力します。

# magt CONFIG INIT&

INIT ファイルは、システムの場所や連絡先情報など、MIB-II システムグループからの情報が格納された不揮発性ファイルです。INIT ファイルが既存しない場合は、マスターエージェントを最初に起動した時に作成されます。無効なマネージャ名が CONFIG ファイルに指定されていると、マスターエージェントの起動が失敗する原因になります。

マスターエージェントを標準以外のポートで起動するには、次の 2 つの方法のどちらかを使用します。

方法 1 : CONFIG ファイルに、マスターエージェントがマネージャからの SNMP 要求を待機する各インタフェースのトランスポートマッピングを指定します。トランスポートマッピングを指定することで、マスターエージェントは標準ポートと標準以外のポートで接続を受け入れることができます。また、マスターエージェントは、標準以外のポートで SNMP トラフィックを受け入れることもできます。同時 SNMP の最大数は、プロセス当たりのオープンソケット数またはファイル記述子数に関するシステムの制限値によって制限されます。トランスポートマッピングのエントリ例を次に示します。

TRANSPORT          extraordinary   SNMP
                   OVER UDP SOCKET
                    AT PORT 11161

CONFIG ファイルを手動で編集したあと、コマンドプロンプトで次のように入力して、手動でマスターエージェントを起動する必要があります。

# magt CONFIG INIT&

方法 2 : /etc/services ファイルを編集して、マスターエージェントが標準ポートと標準以外のポートで接続を受け入れられるようにします。


Administration Server を使用して SNMP マスターエージェントを起動する

Administration Server を使用して SNMP マスターエージェントを起動するには、次の手順を実行します。

  1. Administration Server にログインします。

  2. Server Manager で、「Global Settings」タブから「SNMP Master Agent Control」ページを選択します。「SNMP Master Agent Control」ページが表示されます。

  3. 「Start」をクリックします。

    「SNMP Master Agent Control」ページから、SNMP エージェントの停止および再起動も実行できます。



SNMP マスターエージェントの構成

マスターエージェントを使用可能にし、ホストコンピュータのサブエージェントを使用可能にしたあと、ホストの Administration Server を構成する必要があります。そのためには、コミュニティー文字列とトラップ送信先を指定する必要があります。


コミュニティー文字列の設定

コミュニティー文字列は、SNMP エージェントが認証に使用するテキスト文字列です。ネットワークマネージメントステーションは、エージェントに送信する各メッセージと一緒にコミュニティー文字列を送信します。この結果、エージェントは、そのネットワークマネージメントステーションが情報の取得を承認されているかどうかを確認できます。コミュニティー文字列は、SNMP パケットでの送信時に秘匿されることはなく、ASCII テキストで送信されます。

SNMP マスターエージェントのコミュニティー文字列は、 Server Manager から設定できます。また、特定のコミュニティーで実行できる SNMP 関連オペレーションを定義することもできます。Server Manager から、設定済みのコミュニティーの表示、編集、および削除を行うこともできます。


トラップ送信先の設定

SNMP トラップは、SNMP エージェントがネットワークマネージメントステーションに送信するメッセージです。たとえば、SNMP エージェントは、インタフェースの状態が稼動から停止に変わった時にトラップを送信します。SNMP エージェントにトラップの送信先がわかるように、ネットワークマネージメントステーションのアドレスを設定する必要があります。SNMP マスターエージェントのトラップ送信先は、iPlanet Web Server から設定できます。また、設定済みのトラップ送信先の表示、編集、および削除を行うこともできます。iPlanet Web Server を使用してトラップ送信先を設定する場合、実際には、CONFIG ファイルを編集することになります。



サブエージェントを使用可能にする



Administration Server に付属するマスターエージェントをインストールしたあと、そのマスターエージェントを起動する前に、サーバインスタンスのサブエージェントを使用可能にする必要があります。マスターエージェントのインストールについては、「SNMP マスターエージェントのインストール」を参照してください。Server Manager を使用してサブエージェントを使用可能にできます。

UNIX プラットフォームまたは Linux プラットフォームで SNMP 機能を停止する場合は、サブエージェントを先に停止し、その後でマスターエージェントを停止する必要があります。マスターエージェントを先に停止すると、サブエージェントを停止できなくなることがあります。そうなった場合は、マスターエージェントを再起動し、サブエージェントを停止し、次にマスターエージェントを停止します。

SNMP サブエージェントを使用可能にするには、Server manager の「「SNMP Configuration」ページ」を使用します。次に、「SNMP Subagent Control」ページ (UNIX/Linux)からサブエージェントを起動します。詳細については、オンラインヘルプの該当箇所を参照してください。

サブエージェントを使用可能にすると、「SNMP Subagent Control」ページ (UNIX/Linux)または Windows NT のコントロールパネルの「サービス」からそのサブエージェントを起動、停止、または再起動できます。



SNMP の構成を変更したあとは、「Apply」ボタンをクリックし、SNMP サブエージェントを再起動する必要があります。





SNMP メッセージについて



GET および SET は、SNMP で定義されている 2 種類のメッセージです。GET メッセージと SET メッセージは、ネットワークマネージメントステーション (NMS) によってマスターエージェントに送信されます。Administration Server で、これらのメッセージのどちらか一方または両方を使用できます。

SNMP は、プロトコルデータユニット (PDU) の形式でネットワーク情報をやり取りします。このユニットには、Web サーバなどの管理対象デバイスに保存された変数に関する情報が格納されます。これらの変数は、管理対象オブジェクトとも呼ばれ、必要に応じて NMS に報告される値とタイトルを含んでいます。サーバから NMS に送信されるプロトコルデータユニットは「トラップ」と呼ばれます。次の例では、GET、SET、およびトラップの各メッセージの使用法を示します。

NMS 主導の通信 : NMS は、サーバからの情報を要求するか、サーバの MIB 内に格納されている変数の値を変更します。次に例を示します。

  1. NMS は、Administration Server のマスターエージェントにメッセージを送信します。このメッセージは、データの要求 (GET メッセージ) の場合と、MIB の変数を設定する命令 (SET メッセージ) の場合があります。

  2. マスターエージェントは、そのメッセージを適切なサブエージェントに転送します。

  3. サブエージェントは、データを取り出すか、または MIB 内の変数を変更します。

  4. サブエージェントは、マスターエージェントにデータまたは状態を報告します。次に、マスターエージェントはそのメッセージ (GET メッセージ) を NMS に返送します。

  5. NMS は、ネットワーク管理アプリケーションを通して、そのデータを文字またはグラフィックで表示します。

サーバ主導の通信 : サーバのサブエージェントは、重大なイベントが発生した時に、メッセージまたはトラップを NMS を送信します。次に例を示します。

  1. サブエージェントは、サーバが停止したことをマスターエージェントに通知します。

  2. マスターエージェントは、イベントを報告するメッセージまたはトラップを NMS に送信します。

  3. NMS は、ネットワーク管理アプリケーションを通して、その情報を文字またはグラフィックで表示します。


前へ     目次     索引     DocHome     次へ     
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions Copyright © 2001 Netscape Communications Corp. All rights reserved.

Last Updated October 17, 2001