6 Oracle Unified Directoryへの移行のトラブルシューティング
移行に失敗した場合は、ログ・ファイルおよびこの章のガイドラインを使用して原因をトラブルシューティングします。
6.1 Oracle Unified Directoryへの移行のトラブルシューティングのためのチェックリスト
Oracle Unified Directoryの移行の問題をトラブルシューティングする際は、次のチェックリストを使用します。
- Oracle Unified Directoryディレクトリ・サーバーおよびレプリケーション・ゲートウェイ・インスタンスが実行されていることを確認します。詳細は、『Oracle Unified Directoryの管理』のサーバーの起動に関する項を参照してください。
- レプリケーション・ゲートウェイが設定済で正しく機能していることを確認し、Oracle Unified Directoryサーバーにエントリを追加します。新しく追加したエントリがOracle Directory Server Enterprise Editionサーバーに正常にレプリケートされたことを確認します。詳細は、『Oracle Unified Directoryのインストール』のレプリケーション・ゲートウェイ設定の確認に関する項を参照してください。
- Oracle Directory Integration Platformの同期が構成されている場合は、サーバーが実行されていることを確認します。『Oracle Directory Integration Platformの管理』のスタックの起動に関する項を参照してください。
- 監査、エラーおよびデバッグのログが構成されていることを確認します。詳細は、『Oracle Unified Directoryの管理』のログの構成に関する項を参照してください。
- OUDの
dsreplication
コマンドまたはODSEEコンソールを使用して、レプリケーション・ステータス情報をモニターします。詳細は、『Oracle Unified Directoryの管理』のレプリケートされたトポロジのモニターに関する項を参照してください。 dirtracer
ツールを使用して、実行中、ハングまたは停止中のOracle Directory Server Enterprise Editionプロセスに関するデバッグ情報を収集します。dirtracer
スクリプトの詳細は、Oracle Directory Server Enterprise Editionのトラブルシューティング・ガイドのトラブルシューティング・ツールの使用に関する項を参照してください。- Remote Diagnostic Agent (RDA)を使用して、Oracle Unified Directory (OUD)のログ、構成ファイル、スクリプトおよび環境情報を収集します。
ノート:
RDAのダウンロードおよびインストールの詳細は、My Oracle Supportにログインしてください。「ナレッジ・ベースの検索」フィールドに314422.1を入力します。これは、RDAインストールについて説明しているドキュメントのIDです。-
OUD情報の収集用にRDAを構成します。
UNIX
rda.sh -S -p OudStd -e OFM.OUD.N_TAIL=0
Windows
rda.cmd -S -p OudStd -e OFM.OUD.N_TAIL=0
-
- デフォルトの構成ファイル(output.cfg)を使用する、同じコマンドを使用してRDAを実行します
UNIX
rda.sh
Windows
rda.cmd
6.2 レプリケーションのトラブルシューティング
この項では、Oracle Directory Server Enterprise EditionからOracle Unified Directoryへの移行後の、レプリケーション・ゲートウェイに関連する問題について説明します。
6.2.1 データでレプリケート対象サーバーを初期化した後にresult=32エラーが発生する可能性がある
ODSEEおよびOUDデータを使用してレプリケート対象サーバーを初期化すると、次のエラーがアクセス・ログに表示されます(instance_dir/OUD/logs
にあります):
ADD RES conn=-1 op=16462142 msgID=16462143 result=32 etime=1
この問題は、ODSEEのnsuniqueid
属性値が、OUDのentryUUID
属性値と一致しない場合に発生します。
問題を解決するには、ODSEE環境とOUD環境の両方で属性値が同じであることを確認します。
例:
$ ldapsearch -p 11389 -D cn="Directory Manager" -j pwd-file -b dc=example,dc=com uid=employeeName nsuniqueid
dn: uid=uid=employeeName,ou=People,dc=example,dc=com
nsuniqueid: b725320e-455e11e7-80b1e853-9d225af6
$ ldapsearch -p 1389 -D cn="Directory Manager" -j pwd-file -b dc=example,dc=com employeeName entryUUID
dn: employeeName,ou=People,dc=example,dc=com
entryUUID: b725320e-455e-11e7-80b1-e8539d225af6
6.2.2 グラフィカル・ユーザー・インタフェース(GUI)を使用したレプリケーション・ゲートウェイの設定後にエラーが発生する
インストーラを実行してレプリケーション・ゲートウェイ・サーバー・インスタンスを設定し、設定が完了すると、次のエラーが表示される場合があります:
ReplicationGatewaySetupException: Error initializing. Could not find a peer to start the initialization after several tries. Details: Error during the initialization with contents from server <HOSTNAME>.<DOMAIN>:<ADMIN_PORT>. Last log details: [10/Jan/2018:10:18:45 -0700] severity="NOTICE" msgCount=0 msgID=9896349 message="Initialize From Replica task replication-gateway-setup-initialize5 started execution". Task state: STOPPED_BY_ERROR. Check the error logs of <HOSTNAME>.<DOMAIN>:<ADMIN_PORT> for more information.
この問題は、Oracle Unified Directoryレプリケーション・ゲートウェイとOracle Unified Directoryディレクトリ・サーバー・インスタンス間でファイアウォールが有効になっていて、すべてのtransmission control protocol (TCP)ネットワーク・ポートが受信接続に対してブロックされている場合に発生することがあります。
この問題を解決するには、ファイアウォール設定を確認し、すべてのOracle Unified Directoryネットワーク・ポートが受信接続に対して開いていることを確認します。
6.2.3 コマンドライン・インタフェース(CLI)を使用したレプリケーション・ゲートウェイの設定時にエラーが発生する
oud-replication-gateway-setup --cli
を実行してレプリケーション・ゲートウェイを設定し、必要な構成の詳細を入力すると、次のエラーが表示される場合があります:
Initializing basic replication gateway configuration ..... Done.
Starting Replication Gateway .......... Done.
Updating Registration Information ..... Done.
Configuring Oracle Unified Directory server <OUD_HOST_1> .....Done.
Initializing Registration Information .....
Error initializing. Could not find replication ID in the server <OUD_HOST_1> for base DN cn=admin data.
If you want to report this error, provide the contents of file $MW_HOME/$OUD_GW_INST/OUD/logs/oud-setup
Error initializing. Could not find replication ID in the server <OUD_HOST_1> for base DN cn=admin data.
この問題は、Oracle Enterprise User Security (EUS)のサーバー・インスタンス(レプリケーション・ゲートウェイ)を有効にし、cn=oraclecontext
およびcn=oracleschemaversion
命名コンテキストがインスタンスに作成されている場合に発生します。
この問題を解決するには、EUSオプションを指定せずにディレクトリ・サーバー・インスタンスを作成し、このインスタンスをレプリケーション・ゲートウェイとして設定します。
関連項目:
- 『Oracle Unified Directoryのインストール』のディレクトリ・サーバーとしてのOracle Unified Directoryの設定に関する項。
- 『Oracle Unified Directoryのインストール』のレプリケーション・ゲートウェイとしてのOracle Unified Directoryの設定に関する項。
6.2.4 moddnプロパティを有効にするとレプリケーション・サーバーが起動に失敗する
ODSEEからOUDへのレプリケーションが失敗し、ODSEEに次のエラーが表示されます:
ERROR - Replication - conn=-1 op=-1 msgId=-1 - [S] Unable to start a replication session with MODDN enabled. The consumer <HOSTNAME>:<PORT>/ou=people,<SUFFIX_DN> does not support MODDN operations.
このエラーは、moddnenabledsuffixes
属性がOUDで使用できない場合に発生します。
この問題を解決するには、次の手順に従います。
-
stop-ds
コマンドを実行して、レプリケーション・サーバーを停止します。 -
OUD
config.ldif
ファイルのバックアップを作成します(instance-path/config/ config.ldif
にあります)。 -
テキスト・エディタで
config.ldif
ファイルを開き、ODSEEパラメータを使用してds-cfg-base-dn
パラメータを更新します。例:
dn: cn=Replication Gateway Domain 1,cn=domains,cn=Gateway Plugin,cn=Plugins,cn=config ds-cfg-base-dn: ou=people,<SUFFIX_DN>
-
start-ds
コマンドを実行して、レプリケーション・サーバーを再起動します。
6.2.5 レプリケーション・ゲートウェイがリソース制限属性のレプリケートに失敗する
OUDおよびODSEEレプリケーション・ゲートウェイ・サーバー・インスタンスは、次のリソース制限属性をレプリケートしません:
-
nsSizeLimit
-
nsTimeLimit
-
nsLookThroughLimit
-
nsIdleTimeout
構文
この問題を解決するには、リソース制限属性を有効にします:
-
レプリケーション・ゲートウェイを使用する場合、リソース制限に関連する各(O)DSEE属性名(
nsSizeLimit
、nsTimeLimit
、nsLookThroughLimit
およびnsIdleTimeout
)が、対応する各OUD属性の別名として宣言されるように、OUDスキーマ(02-config.ldif
)を変更する必要があります。ノート:
OUDの対応する属性は、ds-rlim-size-limit
、ds-rlim-time-limit
、ds-rlim-lookthrough-limit
およびds-rlim-idle-time-limit
です。OUDスキーマ(
02-config.ldif
)を更新します:-
次の例に示すように、テキスト・エディタで
02-config.ldif
ファイル(OUD_ORACLE_HOME/config/schema/02-config.ldif
にあります)を開き、nsSizeLimit
リソース制限属性を追加します。attributeTypes: ( 1.3.6.1.4.1.26027.1.1.394 NAME ( 'ds-rlim-size-limit' 'nsSizeLimit' ) SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE
-
start-ds
コマンドを実行して、OUDインスタンスを再起動します。 -
前述のステップを繰り返し、
nsTimeLimit
、nsLookThroughLimit
およびnsIdleTimeout
のために02-config.ldif
を更新する必要があります。
-
-
(O)DSEEでは、
-1
を使用してリソース制限を無効にします。OUDでは0
を使用します。この違いに対処するには、OUDで仮想属性を作成して、(O)DSEE属性の値が-1
に等しくなったときにOUD属性の内容を上書きするという方法があります。create-virtual-attribute
サブコマンドを実行して、新しい仮想属性を作成します:dsconfig create-virtual-attribute --name "mapping nsSizeLimit " --type user-defined --set attribute-type:ds-rlim-size-limit \ --set filter:”(nsSizeLimit=-1)” \ --set conflict-behavior:virtual-overrides-real \ --set value:"0" --set enabled:true
前述のステップを繰り返して、
nsTimeLimit
、nsLookThroughLimit
およびnsIdleTimeout
属性の仮想属性を作成する必要があります。 -
dsconfig
コマンドを実行して、OUDレプリケーション・ゲートウェイ・サーバーからnsSizeLimit
属性を削除します:dsconfig set-plugin-prop --plugin-name "Gateway Plugin" --remove dsee-specific-attribute-types:nsSizeLimit --hostname myhost.example.com --port 29444 --trustStorePath /<path to root>/<Middleware_Home>/OUD target instance/OUD/config/admin-truststore --bindDN cn=Directory Manager --bindPasswordFile pwdFile --no-prompt
前述のステップを繰り返して、OUDレプリケーション・ゲートウェイ・サーバーから
nsTimeLimit
、nsLookThroughLimit
およびnsIdleTimeout
属性を削除する必要があります。 -
次の例に示すように、ODSEE
00core.ldif
ファイル(instance-path/config/schema/
にあります)をテキスト・エディタで開き、ds-rlim-size-limit
OUD属性を追加します:attributeTypes: ( 2.16.840.1.113730.3.1.571 NAME ( 'nsSizeLimit' 'ds-rlim-size-limit' ) DESC 'Binder-based search operation size limit (entries)' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE USAGE directoryOperation X-DS-USE 'internal' X-ORIGIN 'Sun ONE Directory Server' )
前述のステップを実行して、対応するOUD属性をODSEEリソース制限属性に追加します。
6.2.6 非互換の(O)DSEEパスワード・ポリシー
ds2oud --diagnose
コマンドの実行後、次の警告メッセージが表示されます:
Warning : Incompatible password policy, the replication gateway only supports DS6-mode : You are currently using DS5-mode
この警告は、DS5-compatibility-mode
パスワード・ポリシーを使用している場合に発生します。
この問題を解決するには、(O)DSEEからデータをエクスポートする前にDS6-mode
に切り替える必要があります。
-
dsconf pwd-compat
コマンドを実行して、DS5-compatible-mode
からDS6-migration-mode
に変更します。例:
dsconf pwd-compat -p 12000 -h <hostname> to-DS6-migration-mode Enter "cn=Directory Manager" password: ## Beginning password policy compatibility changes. ## Password policy compatibility changes finished.
-
DS6-ModeでのDS5-Modeパスワード・ポリシー操作属性のプログラムによる実行に関する項(Oracle Directory Server Enterprise Edition管理者ガイド)の説明に従って、
DS5-mode
パスワード・ポリシー操作属性を削除します -
dsconf pwd-compat
コマンドを実行して、DS6-migration-mode
からDS6-mode
に変更します。例:
dsconf pwd-compat -p 12000 -h <hostname> to-DS6-mode Enter "cn=Directory Manager" password: ## Beginning password policy compatibility changes. ## Password policy compatibility changes finished.
パスワード・ポリシーの詳細は、Oracle Directory Server Enterprise Edition管理者ガイドのディレクトリ・サーバーのパスワード・ポリシーに関する項を参照してください。
6.2.7 (O)DSEE pwdLastAuthTime操作属性への複数変更後の違反エラー
レプリケーション・ゲートウェイの作成後に(O)DSEE pwdLastAuthTime
操作属性を複数変更すると、次のエラー・メッセージが表示される場合があります:
category=SYNC severity=MILD_ERROR msgID=14876739 msg=Could not replay operation ModifyOperation
operation ModifyOperation(connID=-1, opID=362, dn=cn=<ADMIN>,ou=<OU>,dc=<SUFFIX_DN>) with
ChangeNumber 000001610af1f2e0000500000005
error Constraint Violation Entry cn=<ADMIN>,ou=<OU>,dc=<SUFFIX_DN> cannot
be updated because the request did not contain any modifications
この問題を解決するには:
-
dsconfig
コマンドを実行して、OUDレプリケーション・ゲートウェイ・サーバーからpwdLastAuthTime
操作属性を削除します:$./dsconfig set-plugin-prop --plugin-name Gateway\ Plugin --remove dsee-specific-attribute-types:pwdlastauthtime
-
start-ds
コマンドを使用して、OUDサーバーを再起動します。 -
OUDエラー・ログ(
INSTANCE_DIR/OUD/logs
にあります)を確認します。
6.3 移行プロセスで問題が発生した場合のトラブルシューティング
移行プロセスでいずれかのステップが失敗した場合は、移行プロセスを終了し、「完全なバックアップの作成」で作成したバックアップ・ファイルを使用して、環境を元の状態にリストアします。
関連項目:
- Oracle Directory Server Enterprise Editionの管理者ガイドのバイナリ・リストアに関する項。
- Oracle Directory Server Enterprise Editionの管理者ガイドのレプリケートされたサフィックスのリストアに関する項。
『Oracle Unified Directoryのインストール』のOracle Unified Directoryインスタンスのアンインストールに関する項の説明に従って、Oracle Unified Directoryサーバー・インスタンスをアンインストールします。