15.19. レプリケーション更新の強制

通常のメンテナンスでレプリケーションに関連する Directory Server インスタンスを停止する場合は、オンラインに戻ったら直ちにレプリケーションを更新する必要があります。マルチサプライヤー環境でのサプライヤーでは、セットアップ内の他のサプライヤーがディレクトリー情報を更新する必要があります。それ以外の場合は (たとえば、メンテナンスのためにハブや専用コンシューマーを停止し、後でオンラインに復帰する)、サプライヤーサーバーはステータスを更新する必要があります。

前提条件

  • レプリケーションが設定されている。
  • コンシューマーが初期化されている。

手順

  1. レプリカ合意に更新スケジュールが設定されているかどうかを確認します。
    # dsconf -D "cn=Directory Manager" ldap://server.example.com repl-agmt get --suffix="dc=example,dc=com" agreement_name
    コマンドの出力に nsDS5ReplicaUpdateSchedule: * が含まれている、または nsDS5ReplicaUpdateSchedule パラメーターが存在しない場合、更新スケジュールは設定されていません。
    nsDS5ReplicaUpdateSchedule に、以下のようなスケジュールが含まれる場合には、値を書き留めておきます。
    nsDS5ReplicaUpdateSchedule: 0800-2200 0246
  2. 更新スケジュールが設定されている場合は、以下のコマンドを実行して一時的に無効にします。
    # dsconf -D "cn=Directory Manager" ldap://server.example.com repl-agmt set --schedule \* --suffix="dc=example,dc=com" agreement_name
  3. レプリカ合意を一時的に無効にします。
    # dsconf -D "cn=Directory Manager" ldap://server.example.com repl-agmt disable --suffix="dc=example,dc=com" agreement_name
  4. レプリカ合意を再度有効にして、レプリケーションの更新を強制的に実行します。
    # dsconf -D "cn=Directory Manager" ldap://server.example.com repl-agmt enable --suffix="dc=example,dc=com" agreement_name
  5. この手順の最初にレプリケーションスケジュールが設定されていた場合、スケジュールを以前の値に設定します。
    # dsconf -D "cn=Directory Manager" ldap://server.example.com repl-agmt set --schedule "0800-2200 0246" --suffix="dc=example,dc=com" agreement_name