Sun Java ロゴ     前へ      目次      索引      次へ     

Sun ロゴ
Sun Java™ System Directory Server 5.2 2005Q1 管理ガイド 

第 14 章
SNMP を使用した Directory Server の監視

SNMP (Simple Network Management Protocol) は、リアルタイムでデバイスやアプリケーションを監視および管理するための標準の管理プロトコルです。Directory Server には、SNMP マネージャーアプリケーションを使用して監視するためのサブエージェントインタフェースが用意されています。これを利用することで、ネットワークアプリケーションが Directory Server の状態を判別し、アクティビティに関する情報を取得できます。

Directory Server の SNMP サブエージェントに含まれる値は読み取り専用です。このため、SNMP 管理アプリケーションはサーバーに対して処理を実行できません。

一般に、第 13 章「ログファイルを使用した Directory Server の監視」で説明したアクセスログとエラーログにはサーバーに関するより詳細な情報が含まれており、また、サーバーの設定に安全にアクセスし、それを変更するには LDAP は最適なプロトコルといえます。それでも Directory Server インスタンスは、SNMP サブエージェントを使用して既存のネットワーク管理システムに参加できます。

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


Sun Java System Server の SNMP

SNMP を利用する管理アプリケーションは、エージェントまたはサブエージェントアプリケーションを実行するアプリケーションおよびデバイスに照会を行います。SNMP エージェントまたはサブエージェントは、SNMP マネージャーからの照会への応答として、アプリケーションまたはデバイスからの情報を収集します。この情報は変数のテーブルとして構築され、このテーブルはエージェントの MIB (管理情報ベース) によって定義されます。

通常、ネットワーク管理者はサブエージェント内の SNMP 変数を照会し、サブエージェントは要求された値を返します。また SNMP は、すべてのネットワーク管理者にトラップメッセージを送信してエージェントがイベントをレポートするためのメカニズムを定義します。Directory Server デーモンが起動する前にサブエージェントとマスターエージェントが実行されている場合、Directory Server サブエージェントは Directory Server の起動時または停止時に SMUX トラップをマスターエージェントに送信します。マスターエージェントはこれを SNMP トラップに変換します。

ホストマシンには、複数のサブエージェントをインストールできます。たとえば、Directory Server、Application Server、および Messaging Server をすべて同じホスト上にインストールした場合、これらの各サーバーのサブエージェントは、同一のマスターエージェントと通信します。

UNIX 環境では、管理サーバーがインストールされると、Directory Server とその他の Sun Java System 製品には SNMP マスターエージェント (MAGT) が提供されます。

SNMP を使用してサーバーを監視する方法については、『Administration Server Administration Guide』を参照してください。

SNMP 経由で監視できるようにサーバーを設定する一般的な手順は、次のとおりです。

  1. Directory Server MIB をコンパイルし、SNMP 管理システムに統合します。使用しているシステムのマニュアルを参照してください。
  2. 「SNMP の設定」で説明している方法で、マシン上に SNMP を設定します。
  3. Directory Server コンソールから SNMP サブエージェントを設定します。詳細については、「Directory Server での SNMP の設定」を参照してください。
  4. Directory Server コンソールから SNMP サブエージェントを起動します。詳細については、「SNMP サブエージェントの起動と停止」を参照してください。
  5. MIB によって定義され、エージェントにより公開される SNMP 管理対象オブジェクトにアクセスします。この手順は、全体的に SNMP 管理システムに依存します。

Directory Server の設定に固有の手順については後述します。


Directory Server の MIB の概要

Directory Server の MIB には、次のようなオブジェクト識別子があります。

iso.org.dod.internet.private.enterprises.netscape.nsldap
(nsldapd OBJECT IDENTIFIER ::= { 1.3.6.1.4.1.1450.7 })

これは、次のファイルに定義されています。

ServerRoot/plugins/snmp/netscape-ldap.mib

MIB は、SNMP 経由で監視できる変数と、各変数に含まれる値のタイプを定義します。Directory Server の MIB は、次の 4 つの管理対象オブジェクトテーブルに分類されます。

Directory Server MIB を使うときは、事前に次のディレクトリにある MIB とともにコンパイルする必要があります。

ServerRoot/plugins/snmp/mibs

MIB のコンパイル方法については、SNMP 製品のマニュアルを参照してください。


SNMP の設定

Solaris プラットフォーム上の設定

Solaris 上で推奨される設定は、Directory Service マスターエージェント (MPS/MAGT) を Solaris ネイティブエージェントフレームワークにプラグインする方法です。この設定では、MPS エージェントの開始と、MPS エージェントへの Directory Server SNMP 要求の転送を、Solaris エージェント snmpdx が担当します。つまり、要求が Directory Server に関係するかどうかに関わらず、すべての SNMP 管理クライアントは標準ポート 161 上の Solaris エージェントに接続することができます。

したがって、Solaris エージェントとの競合を避けるために、異なるポート (たとえば 1161) 上で実行するように MPS エージェントを設定し直す必要があります。下に示す手順例には、この手順も含まれています。MPS エージェントの詳細な設定手順については、『Administration Server Administration Guide』を参照してください。ただし、ここでの設定では、MPS エージェントを Solaris エージェントによって開始する必要があるため、MPS エージェントの開始または停止に管理サーバーは使用しません。

snmpdx SNMP マスターエージェントへのプラグイン - Solaris の例

Solaris snmpdx エージェント (man snmpdx(1M)) にプラグインするには、次の手順に従います。Solaris snmpdx エージェントは標準ポート 161 上で実行でき、Directory SNMP 要求を Directory Server に転送します。

slapd-instance を、ユーザーのディレクトリインスタンス名に置き換えます。

  1. root としてログインします。
  2. MPS エージェントの登録ファイル /etc/snmp/conf/mps.reg を作成します。
  3. このファイルに次の内容を追加します。

    #

    # Registration file for MPS Agent.

    #

    ##########

    # agents #

    ##########

    agents = {

            {

                    name = "mps"

                    subtrees = {

                            # Directory Server

                            1.3.6.1.4.1.1450.7,

                            # Web Server

                            1.3.6.1.4.1.1450.1.60

                    }

                    timeout = 2000000

                    watch-dog-time = 86400

                    port = 1161

            }

    }

  4. MPS エージェントのリソースファイル /etc/snmp/conf/mps.rsrc を作成します。
  5. このファイルに次の内容を追加します。

    #

    # Resource file for MPS Agent.

    #

    resource =

    {

            {

                    registration_file = "/etc/snmp/conf/mps.reg"

                    policy = "spawn"

                    type = "legacy"

                    command = "install-dir/plugins/snmp/magt/magt
    install-dir/plugins/snmp/magt/CONFIG
    install-dir/plugins/snmp/magt/INIT"

            }

    }

  6. install-dir/plugins/snmp/magt/CONFIG の最後に、次のコードを追加します。
  7. TRANSPORT extraordinary SNMP

      OVER UDP SOCKET

      AT PORT 1161

  8. 再起動して、magt 処理がポート 1161 上で実行されていることを確認します。たとえば、次のようにします。
  9. $ pgrep magt

    21954

    $ netstat -a | grep 1161

          *.1161                                Idle

          *.1161                                Idle

  10. 「Directory Server での SNMP の設定」で説明している方法で、Directory Server サブエージェントを設定します。デフォルトのポート 199 を使用します。
  11. ブート時にサブエージェントが自動的に起動するようにするため、/etc/init.d 内に次の行を含む起動スクリプトを作成できます。サブエージェントは、MPS エージェントがあらかじめ起動していないと起動しません。

    $ cd install-dir/bin/slapd/server

    [ -x ./64/ns-slapd ] && [ "bin/isainfo -b 2> /dev/null = 64 ] && cd ./64

    ./ns-ldapagt -d install-dir/slapd-instance

  12. サブエージェントが実行していることを確認します。たとえば、次のようにします。
  13. $ pgrep ns-ldapagt

    22411

Linux プラットフォーム上の設定

  1. Red Hat Linux Advanced Server で、ネイティブ snmpd が実行されていないことを確認します。次のコマンドを実行します。
  2. $ pgrep snmpd

    ネイティブ snmpd が実行されている場合は、次のコマンドを実行して停止させます。

    /etc/rc.d/init.d/snmpd stop

  3. ネイティブ snmpd をこれから実行する場合は、ネイティブ snmpd のポート番号を変更します。デフォルトでは、Directory Server MPS (MAGT) マスターエージェントとネイティブ snmpd が両方ともポート 161 を使用するためです。
  4. ポート番号を変更するには、/etc/rc.d/init.d/snmpd 内の OPTIONS 変数を次のように変更します。

    OPTIONS="-s -l /dev/null -P /var/run/snmpd.pid -a -p 1161" adding -p 1161

    これにより、snmpd ポートが 1161 に変更されます。

  5. 次のコマンドを実行して、ネイティブ snmpd を起動します。
  6. /etc/rc.d/init.d/snmpd start

Linux 上での SNMP 設定に関するヒント

Linux 上で SNMP を設定する場合は、次の点を考慮します。


Directory Server での SNMP の設定

プラットフォーム側の SNMP エージェントまたはサービスの設定が完了したら、Directory Server インスタンス側の SNMP パラメータを設定する必要があります。Directory Server コンソールから SNMP 設定を設定するには、次の手順を実行します。

  1. Directory Server コンソールの最上位の「設定」タブで、設定ツリーのルートノードを選択し、右側のパネルで「SNMP」タブを選択します。
  2. 「統計収集を有効に」チェックボックスを選択します。リソースの利用率を改善するために、デフォルトでは SNMP 変数の統計情報は収集されません。SNMP を使用せず、LDAP 経由で cn=snmp,cn=monitor エントリの属性を監視しないときは、このチェックボックスの選択は解除した状態で残します。
  3. マスターエージェントのホスト名とポート番号を対応するテキストフィールドに入力します。
  4. デフォルトの設定は、それぞれ localhost とポート 199 です。

  5. 「説明のプロパティ」ボックスのテキストフィールドに情報を入力します。ここに指定した値は、このサーバーが開示する SNMP Entity テーブルに反映されます。
    • 説明: Directory Server の説明を入力します。Server Consoleのトポロジツリーにある、このインスタンスの説明フィールドに似ています。
    • 組織: Directory Server が所属する会社または部署の名前を入力します。
    • 場所: Directory Server のホストが設置されている場所の住所を入力します。
    • 連絡先: Directory Server 管理者の電子メールアドレスまたは連絡先情報を入力します。
  6. 「保存」をクリックして、変更内容を保存します。
  7. 次の項で説明する方法で、SNMP サブエージェントを起動または再起動します。


SNMP サブエージェントの起動と停止

次に、Directory Server コンソールで SNMP サブエージェントを起動、再起動、停止する方法について説明します。


同じホスト上に別のサーバーインスタンスを追加し、そのインスタンスを SNMP ネットワークの一部にするときは、SNMP サブエージェントを再起動する必要があります。


SNMP サブエージェントを起動、停止、および再起動するには

  1. Directory Server コンソールの最上位の「設定」タブで、設定ツリーのルートノードを選択し、右側のパネルで「SNMP」タブを選択します。
  2. サブエージェントを起動、停止、または再起動するには、「説明のプロパティ」ボックスの下にあるサブエージェント制御ボタンを使用します。
  3. Directory Server を停止しても、Directory Server のサブエージェントは停止しません。サブエージェントを停止するには、「SNMP」タブで停止する必要があります。



前へ      目次      索引      次へ     


Part No: 819-2011.   Copyright 2005 Sun Microsystems, Inc. All rights reserved.