Sun Java™ System Directory Server 5 2004Q2 配備計画ガイド |
第 8 章
Directory Server監視Directory Server の配備を成功させるには、効果的な監視とイベント管理の戦略が必要です。この戦略は、監視対象となるイベント、使用するツール、そのイベントが発生した場合に実行するアクションを定義します。発生しがちなイベントについて対策を用意しておくことで、サービスの停止やレベル低下を防ぎ、可用性とサービスの品質を向上することができます。
監視とイベント管理の戦略には、レプリケーション設定などの具体的なアーキテクチャコンポーネントを含める必要があり、また、システムとネットワークの監視も含める必要があります。この章では、効果的な監視戦略に何を含めるかについて説明し、Directory Server の監視機能について解説します。
この章は、次の節から構成されています。
監視およびイベント管理戦略の定義ここでは、監視とイベント管理の戦略を定義するための手順の概要について説明します。このプロセスは次の段階に分けることができます。
Directory Server の監視ツールここでは、Directory Server で使用できる監視ツールと、Directory Server のアクティビティの監視に利用できるその他のツールについて、概要を説明します。次節で説明する主要パフォーマンス指標は、これらのツールを使用して、またはツールを組み合わせて、すべて監視できます。
Directory Server で使用できるアクセスログ、監査ログ、エラーログには、監視に利用できる情報が豊富に含まれます。これらのログを手動で監視したり、カスタムスクリプトを使用して解析することで、配備に関連する監視情報を抽出できます。Directory Server Resource Kit には、ログ分析ツール、logconv.pl が用意されています。これを使って、Directory Server アクセスログを分析することができます。このログ分析ツールは、利用率統計を抽出し、重要なイベントの発生をカウントします。このツールの詳細については、『Directory Server Resource Kit Tools Reference』の第 24 章「The Log Analyzer Tool」を参照してください。ログファイルの表示と設定については、『Directory Server 管理ガイド』の第 13 章「ログファイルを使用した Directory Server の監視」を参照してください。
Directory Server は、SNMP (Simple Network Management Protocol) による監視をサポートしています。SNMP は、グローバルネットワーク制御と監視のための標準メカニズムで、ネットワーク管理者はネットワーク管理作業を一元的に行えます。
SNMP と Directory Server がサポートする SNMP 管理対象オブジェクトについては、「SNMP による監視」を参照してください。SNMP の設定方法については、『Directory Server 管理ガイド』の第 14 章「SNMP を使用した Directory Server の監視」を参照してください。
Directory Server の監視監視とイベント管理の戦略を定義する上でもっとも重要な手順は、ディレクトリアーキテクチャ上の 1 つまたは複数のコンポーネントで重要な監視対象を決定することです。何を監視対象とし、それをどの程度監視するかは、配備によって大きく異なります。
ここでは、監視対象となるパフォーマンス指標について説明します。説明する内容は次のとおりです。
Directory Server アクティビティの監視
Directory Server では、さまざまな方法でサーバーの状態を監視できます。たとえば、次のような方法があります。
Directory Server コンソールで利用できるパフォーマンスカウンタについては、『Directory Server 管理ガイド』の「コンソールを使用したサーバの監視」を参照してください。
- cn=monitor エントリに対して ldapsearch コマンドを実行すると、Directory Server コンソールの「状態」タブに表示される情報と同じ情報を取得できます。一部の情報は、ldapsearch コマンドを実行するユーザーがディレクトリ管理者としてバインドしている場合にだけ表示されます。このアクセス制限を解除するには、この情報に関連付けられているアクセス制御を設定し直す必要があります。cn=monitor の下に格納されているパフォーマンスカウンタについては、『Directory Server 管理ガイド』の「コマンド行からのサーバーの監視」を参照してください。
- ps コマンドを実行すると、現在稼動しているプロセスが表示されます。これにより、Directory Server slapd デーモンの稼動状態を確認することができます。詳細は、ps(1) マンページを参照してください。
- ldapsearch コマンド行ユーティリティを使用して、Directory Server が要求に応答しているかどうかを確認することができます。時間のかかる、インデックス付けされていない検索を避け、ベースレベルの検索を行います。複数のデータベースがあるときは、各データベースサフィックスへの LDAP クエリを作成し、データベースがオンライン状態にあり、応答しているかどうかを確認することができます。
- Directory Server のアクセスログを使用して、サーバーの動作を監視し、サーバーが稼動しているかどうかを確認することができます。アクセスログと接続コードについては、『Directory Server Administration Reference』の第 3 章にある「Access Logs Content」および「Common Connection Codes」を参照してください。
- Directory Server のエラーログには、サーバーの起動と停止の状態が記録されます。この情報に基づいて、サーバーが稼動しているかどうかを確認することができます。ログファイルの表示と設定については、『Directory Server 管理ガイド』の第 13 章「ログファイルを使用した Directory Server の監視」を参照してください。
データベースアクティビティの監視
データベースのアクティビティを監視することは、データベースがオンラインの状態にあり、必要になったときに確実にアクセスできることを確認する上で有効です。データベースの監視情報にアクセスするには、cn=config 分岐の特定の領域に対して ldapsearch コマンドを実行します。表 8-1 は、提供される監視情報の種類と、cn=config 分岐の対応領域を示しています。
次に、データベース監視情報の領域について、さらに詳しく説明します。
- cn=database,cn=monitor,cn=ldbm database,dn=plugins,cn=config 分岐は、キャッシュへのアクセス、トランザクション、ロック、ログの情報を提供します。Directory Server 設定属性の完全なリストについては、『Directory Server Administration Reference』の第 2 章「Server Configuration Reference」を参照してください。
関連する設定属性の完全なリストについては、『Directory Server Administration Reference』の第 2 章「Server Configuration Reference」を参照してください。
ディスクの状態の監視
ディスク容量を効果的に監視することで、ディスクリソースの不足に関連する問題を防止できます。cn=disk,cn=monitor エントリにより、次の監視情報が提供されます。
cn=disk,cn=monitor 属性、およびディスク容量の 2 つのしきい値については、『Directory Server Administration Reference』の第 2 章「Server Configuration Reference」を参照してください。
レプリケーションアクティビティの監視
レプリケーション状態の監視は、グローバルな監視戦略では重要な要素です。レプリケーションの問題の可能性を早く認識できるほど、問題を迅速に解決し、正しいレプリケーション動作を再開できます。
Directory Server 5.2 には、レプリケーション機能のさまざまな側面を監視する 3 つの監視ツールが用意されています。レプリケーション監視ツールは LDAP クライアントとして機能し、標準接続またはセキュリティ保護された接続 (LDAPS) を介して使用できます。次のレプリケーション監視ツールがあります。
insync
insync ツールは、マスターレプリカと 1 つまたは複数のコンシューマレプリカとの間の同期状態、またはレプリケーションの遅延を示します。このレプリケーションの遅延は、マスター上のデータと比較して、コンシューマ上のデータがどの程度正確かを示します。
entrycmp
entrycmp ツールを使用することで、複数の異なるサーバー上の同一エントリを比較することができます。マスターレプリカからエントリが取得され、エントリの nsuniqueid を使用して指定コンシューマから同じエントリを取得します。エントリの属性と値が比較され、どちらも同じであれば、これらのエントリは同一であると見なされます。
注
insync ツールと entrycmp ツールを実行するマシンは、指定されたすべてのホストにアクセスできる必要があります。ファイアウォール、VPN、またはネットワーク設定上のその他の理由からホストにアクセスできない場合、これらのツールを使用することは困難になります。同じ理由で、レプリケーション監視ツールを実行する前に、すべてのサーバーが起動され、稼動していることを確認してください。
repldisc
repldisc ツールを使用することで、レプリケーショントポロジを推測することができます。トポロジの推測は、1 つのサーバーから始まり、トポロジ内のすべての既知のサーバーをグラフ化することで行われます。次に、repldisc ツールはトポロジを示す隣接マトリクスを出力します。このレプリケーショントポロジ推測ツールは、配備したグローバルトポロジを思い出すことが難しい、大規模で複雑な配備で便利です。
注
- レプリケーション監視ツールを使用するときは、ホストをすべてを記号名で指定するか、またはすべてを IP アドレスで指定します。2 つを組み合わせた場合、問題が生じる可能性が高くなります。
- SSL が有効な状態でレプリケーション監視ツールを実行するときは、ツールの実行対象サーバーには、トポロジ内の他のサーバーが使用するすべての証明書のコピーが保持されている必要があります。
- これらのツールは LDAP クライアントベースであるため、サーバーへの認証と、cn=config に対する読み取りアクセス権を持つバインド DN が必要となります。これらのツールの詳細な設定方法と、SSL が有効な状態での使用については、『Directory Server 管理ガイド』の「レプリケーション状態の監視」を参照してください。
レプリケーション監視ツールについては、『Directory Server Administration Reference』の第 1 章にある「entrycmp」、「insync」および「repldisc」を参照してください。
インデックス付けの効率の監視
インデックス付けは、読み取りのパフォーマンスには肯定的な影響を持ち、書き込みのパフォーマンスには否定的な影響を持ちます。このため、読み取りと書き込みのパフォーマンスのバランスを適切に保つには、インデックス付けの効率を監視することが重要です。効果的なインデックス付け戦略により、不要なインデックスをなくし、クライアントアプリケーションで必要なインデックスだけを維持することができます。
インデックス付けの効率は、次の方法で監視できます。
- アクセスログを調べ、インデックスのない検索が完了するまでの時間を監視することで、不釣合いな時間を消費した、インデックスのない検索を識別することができます。インデックスのない検索はログファイル内では notes=U によって識別され、長時間の検索では etime の値が高くなります。
アクセスログには、検索とそのフィルタに関する情報も記録されています。これに基づいて、インデックスを作成することでパフォーマンスを向上できるかどうかを判断できます。Directory Server Resource Kit には、ログ分析ツール、logconv.pl が用意されています。これを使って、Directory Server アクセスログを分析することができます。このツールの詳細については、『Directory Server Resource Kit Tools Reference』の第 24 章「The Log Analyzer Tool」を参照してください。
- Directory Server コンソールの「状態」タブでは、サフィックスまたは連鎖サフィックスごとにもっとも頻繁に使用されたインデックスを監視できます。これは、インデックスの使用が何回試みられ、何回成功したかを示します。cn=monitor,cn=suffixName,cn=ldbm database,cn=plugins,cn=config 分岐に対して ldapsearch コマンドを実行しても同じ監視情報が得られます。
アクセスログの内容と接続コードについては、『Directory Server Administration Reference』の第 3 章にある「Access Logs Content」および「Common Connection Codes」を参照してください。Directory Server の設定属性の完全なリストについては、『Directory Server Administration Reference』の第 2 章「Server Configuration Reference」を参照してください。
セキュリティの監視
配備のセキュリティの監視は、安全にアクセスできるディレクトリにとって不可欠です。受容可能なセキュリティレベルを維持する上で、Directory Server を次のように監視することをお勧めします。
- バインド試行の失敗数の監視は、ディレクトリへの侵入試行に関する警告となります。SNMP エージェントが稼動している場合は、cn=snmp,cn=config の下にあるSNMP 管理対象オブジェクトカウンタ dsBindSecurityErrors に対して ldapsearch を実行することで、バインド試行の失敗を監視できます。
- アクティビティが行われていない、開いている接続の数の監視は、サービス拒否攻撃の可能性に関する警告となります。現在の接続数と完了した操作の数は、Directory Server コンソールの「状態」タブ、または cn=monitor の下にある属性を検索することで確認できます。
- 実効権限機能を使用することで、クライアントはディレクトリのエントリと属性に対して持つアクセス制御権を照会できます。ユーザーがアクセス権を照会できるようになったことで、ユーザーの管理、アクセス制御ポリシーの検証、設定内容の決定が容易になりました。
実効権限機能は、日々の操作としてではなく、定期的に使用されることが多いと考えられます。実効権限については、「実効権限に関する情報の取得」を参照してください。
SNMP による監視SNMP はグローバルなネットワーク制御と監視のための標準メカニズムです。SNMP を使用することで、ネットワーク管理者はネットワーク管理作業を一元的に行い、さまざまなデバイスをリアルタイムで監視することができます。ここでは、SNMP を使用して Directory Server の操作を監視する方法について説明します。説明する内容は次のとおりです。
SNMP について
SNMP は、ネットワークアクティビティに関するデータを交換するために使用されるプロトコルです。SNMP を使用すると、管理対象デバイスと、ユーザーがネットワークをリモート管理する NMS (ネットワーク管理ステーション) の間で、データが移動します。管理対象デバイスは、ホスト、ルータ、Directory Server など、SNMP が稼動するすべてのデバイスです。NMS とは通常、1 つ以上のネットワーク管理アプリケーションが稼動する強力なワークステーションを指します。ネットワーク管理アプリケーションは、管理対象デバイスに関する情報 (どのデバイスが有効または無効か、どのエラーメッセージをいくつ受け取ったか、など) を、多くの場合はグラフィカルに表示します。
情報は、サブエージェントとマスターエージェントの 2 種類のエージェントを使用して、NMS と管理対象デバイスの間で転送されます。サブエージェントは、管理対象デバイスに関する情報を収集し、その情報をマスターエージェントに渡します。Directory Server にはサブエージェントがあります。マスターエージェントは、各種サブエージェントと NMS の間で情報を交換します。マスターエージェントは、通信先のサブエージェントと同じホストマシン上で動作します。
ホストマシンには、複数のサブエージェントをインストールできます。たとえば、Directory Server、Application Server、および Messaging Server をすべて同じホスト上にインストールした場合、これらの各サーバーのサブエージェントは、同一のマスターエージェントと通信します。マスターエージェントは、管理サーバーと一緒にインストールされます。
照会可能な SNMP 属性の値は、管理対象デバイス上に保持され、必要に応じて NMS に報告されます。各属性は管理対象オブジェクトと呼ばれ、エージェントはこのオブジェクトにアクセスし、これを NMS に送ることができます。管理対象オブジェクトはすべて、ツリーのような階層を持つデータベースである MIB (管理情報ベース) に定義されています。この階層の最上位には、ネットワークに関する一般的な情報が含まれています。下位の各階層には、個々のネットワーク領域に関するより詳細な情報が含まれています。
SNMP は、PDU (プロトコルデータ単位) の形式でネットワーク情報を交換します。PDU には、管理対象デバイス上に格納された変数に関する情報が含まれています。これらの変数は管理対象オブジェクトとも呼ばれ、必要に応じて NMS に報告される値と名前を保持しています。NMS と管理対象デバイスとの間の通信は、次の 2 つのどちらかの方法で行われます。
次に、Directory Server がサポートしている NMS 主導の通信について説明します。
NMS 主導の通信
これは、NMS と管理対象デバイス間の通信で、もっとも一般的なタイプの通信です。このタイプの通信では、NMS は管理対象デバイスから情報を要求するか、または管理対象デバイス上に格納された変数の値を変更します。
NMS によって開始される SNMP セッションは、次のように実行されます。
- NMS が、どの管理対象デバイスおよびオブジェクトに監視が必要であるかを判断します。
- NMS が、マスターエージェントを介して、PDU を管理対象デバイスのサブエージェントに送ります。この PDU は、管理対象デバイスから情報を要求するか、または管理対象デバイス上に格納された変数の値を変更するようサブエージェントに指示します。
- 管理対象デバイスのサブエージェントが、マスターエージェントから PDU を受け取ります。
- NMS から送られた PDU が変数に関する情報を要求するものである場合、サブエージェントはマスターエージェントにその情報を送り、マスターエージェントは別の PDU として NMS に情報を送り返します。次に、NMS が、この情報を文字またはグラフィック形式で表示します。
NMS から送られた PDU が、変数に値を設定するようサブエージェントに要求するものである場合、サブエージェントは変数値を要求のとおりに設定します。
Directory Server での SNMP 監視
Directory Server は、次の 2 つの方法による SNMP 監視をサポートしています。
図 8-1 は、Directory Server から SNMP 監視情報を取得する 2 つの方法を示しています。
図 8-1 Directory Server での SNMP 監視
MIB の定義場所および SNMP の使用方法については、『Directory Server 管理ガイド』の第 14 章「SNMP を使用した Directory Server の監視」を参照してください。
Directory Server がサポートする SNMP 管理対象オブジェクトは、Directory Server Monitoring MIB RFC 2605 の初期草案に基づいています。SNMP エージェントから返される SNMP 操作管理オブジェクトは、ldapsearch コマンドによって返される SNMP 監視属性と同じです。これらの属性については、『Directory Server Administration Reference』の第 2 章にある「Monitoring Attributes」を参照してください。SNMP エージェントから返される属性の名前には、ds という接頭辞が付けられます。
操作管理オブジェクトに加え、Directory Server は、監視対象のサーバーとそのピアサーバーの間の対話に関連する管理対象オブジェクトと、サーバーの現在のインストールに関する情報を含むエンティティ関連の管理対象オブジェクトをサポートしています。これらのオブジェクトについては、『Directory Server Administration Reference』の「Interactions Table of Supported SNMP Managed Objects」および「Entity Table of SNMP Supported Managed Objects」を参照してください。