Sun ONE Calendar Server 6.0 管理者ガイド |
付録 D
LDAP データキャッシュの使用この付録では、Sun ONE Calendar Server の LDAP データキャッシュについて説明します。LDAP データキャッシュは、コミットしたデータが使用可能になるまで遅延が生じるように LDAP ディレクトリサーバーが設定されている場合でも、LDAP データをコミット後すぐに使用できるようにします。この付録で説明する内容は次のとおりです。
LDAP データキャッシュの使用に関する注意サイトで LDAP データキャッシュを利用するべきかどうか、次のガイドラインに基づいて検討してください。
- サイトの Calendar Server がマスター (ルート) LDAP ディレクトリサーバーに直接アクセスし、コミットされた LDAP データを遅延なしで利用できる場合は、LDAP データキャッシュを設定する必要はありません。local.ldap.cache.enable が no (デフォルト値) に設定されていることを確認してください。
- サイトに「マスター / スレーブの LDAP 構成」が導入され、Calendar Server がスレーブ LDAP ディレクトリサーバー経由でマスター LDAP ディレクトリにアクセスすることで、コミットされた LDAP データの可用性に遅延が生じている場合は、LDAP データキャッシュを設定し、エンドユーザーが最新のデータにアクセスできるようにします。
マスター / スレーブの LDAP 構成マスター / スレーブの LDAP 構成には、マスター (ルート) ディレクトリサーバーと、1 つまたは複数のスレーブ (コンシューマまたはレプリカ) ディレクトリサーバーが含まれます。Calendar Server は直接、またはスレーブディレクトリサーバー経由でマスター LDAP ディレクトリサーバーにアクセスできます。
2 番目の構成では、コミットされた LDAP データをスレーブディレクトリサーバーで利用できるまでに遅延が発生するため、不正確な LDAP データが存在する問題があります。
たとえば、Calendar Server が LDAP データの変更をコミットしても、マスターディレクトリサーバーが各スレーブディレクトリサーバーを更新するまでの遅延により、ある程度の時間が経過するまで新しいデータは利用できません。それに続く Calendar Server の操作では、古い LDAP データが使用されるため、表示内容も古いままとなります。
スレーブディレクトリサーバーの更新遅延が短ければ (数秒程度)、クライアントは問題に気づかないかもしれません。しかし、遅延が数分から数時間におよぶ場合、遅延時間中はクライアントは不正確な LDAP データを表示することになります。
表 D-1 は、Calendar Server が スレーブ LDAP ディレクトリサーバー経由でマスター LDAP ディレクトリサーバーにアクセスする、マスター / スレーブの LDAP サーバー構成で遅延の影響を受ける LDAP 属性を示しています。
エンドユーザーが確実に最新の LDAP データにアクセスできるようにするには、次のLDAP データキャッシュおよびLDAP データキャッシュの設定パラメータに従って LDAP データキャッシュを設定します。
LDAP データキャッシュLDAP データキャッシュは、マスターディレクトリサーバーがスレーブディレクトリサーバーを更新していない場合でも、最新の LDAP データを Calendar Server のクライアントに提供することで、マスター / スレーブの LDAP 構成の問題を解決します。
LDAP データキャッシュを有効にすると、Calendar Server はコミットされた LDAP データをキャッシュデータベース (ldapcache.db ファイル) に書き込みます。デフォルトでは、LDAP キャッシュデータベースは cal_svr_base/var/opt/SUNWics5/csdb/ldap_cache ディレクトリに格納されますが、別の場所を指定することもできます。
クライアントが 1 人のユーザーの LDAP データを変更すると、Calendar Server は変更されたデータを LDAP キャッシュデータベースに書き込みます (スレーブディレクトリサーバーにも書き込まれます)。それに続くクライアント操作では、LDAP データはキャッシュデータベースから取得されます。このデータ取得は、1 人のユーザーに関する次の操作に適用されます。
つまり、LDAP データキャッシュデータベースには次の機能があります。
- 1 つのシステムでプロセス間のデータ整合性を維持する。データベースは、マルチプロセッサシステムのすべての Calendar Server プロセスで利用可能である
- ユーザーセッション間のデータ継続性を維持する。データベースは永続的で、再読み込みの必要がない。LDAP データキャッシュエントリの存続時間 (TTL) とデータベースクリーンアップの間隔は独自に設定できる。詳細については、「LDAP データキャッシュの設定パラメータ」を参照
制約
LDAP データキャッシュは次のような操作では機能しません。
- エントリのリストが事前にわかっている検索でのキャッシュの読み取り。たとえば、ミーティング参加者の検索などです。このような検索は、LDAP 遅延の対象となります。たとえば、新規作成したカレンダーは、LDAP 検索オプションが有効で、検索がカレンダー作成後の遅延期間内に実行された場合はカレンダー検索に表示されません。
- 複数のフロントエンドサーバー間でのキャッシュの読み取りと書き込み。それぞれのフロントエンドサーバーに専用のキャッシュがあり、別のキャッシュに含まれるデータの変更は認識されません。
- 常に同じサーバーにログインしないユーザーの取り扱い。このようなユーザーは、各サーバーのキャッシュに異なる LDAP データを生成することになります。
LDAP データキャッシュの設定パラメータ表 D-2 は、ics.conf ファイル内の LDAP データキャッシュに関するパラメータを示しています。
警告
Calendar Server、または Calendar Server が稼動するサーバーを適切な方法で停止しなかった場合、データベースの破損によって以後の再起動時に問題が生じないように、ldap_cache ディレクトリ内のすべてのファイルを手動で削除することをお勧めします。