7.11. ドメインコントローラーの検出とフェイルオーバーの設定
マネージドドメインの設定時、ドメインコントローラーに接続するために必要な情報を使用して各ホストコントローラーを設定する必要があります。JBoss EAP では、ドメインコントローラーを検索する複数のオプションを使用して各ホストコントローラーを設定できます。ホストコントローラーは、適切なオプションが見つかるまでオプションのリストを繰り返し処理します。
プライマリードメインコントローラーに問題がある場合は、バックアップホストコントローラーをドメインコントローラーに昇格できます。これにより、昇格後にホストコントローラーを新しいドメインコントローラーへ自動的にフェイルオーバーできます。詳細は、ホストコントローラーをドメインコントローラーとして動作するように昇格する を参照してください。
7.11.1. ドメイン検出オプション リンクのコピーリンクがクリップボードにコピーされました!
以下は、ドメインコントローラー検索の複数のオプションを持つホストコントローラーを設定する方法の例になります。
例: 複数のドメインコントローラーオプションを持つホストコントローラー
<domain-controller>
<remote>
<discovery-options>
<static-discovery name="primary" protocol="${jboss.domain.primary.protocol:remote}" host="172.16.81.100" port="${jboss.domain.primary.port:9990}"/>
<static-discovery name="backup" protocol="${jboss.domain.primary.protocol:remote}" host="172.16.81.101" port="${jboss.domain.primary.port:9990}"/>
</discovery-options>
</remote>
</domain-controller>
静的検出オプションには、以下の必須属性が含まれます。
- name
- このドメインコントローラー検出オプションの名前。
- host
- リモートドメインコントローラーのホスト名。
- port
- リモートドメインコントローラーのポート。
上記の例では、最初の検出オプションが指定されることが予想されます。2 つ目のオプションはフフェイルオーバーの状況で使用される可能性があります。
7.11.2. キャッシュされたドメイン設定を使用するホストコントローラー リンクのコピーリンクがクリップボードにコピーされました!
--cached-dc オプションを使用すると、ドメインコントローラーへ接続していなくてもホストコントローラーを起動できますが、ホストコントローラーは前もってドメインコントローラーからドメイン設定をローカルでキャッシュする必要があります。--cached-dc オプションを使用してホストコントローラーを起動すると、ドメインコントローラーからホストコントローラーのドメイン設定がキャッシュされます。
例
$ EAP_HOME/bin/domain.sh --host-config=host-secondary.xml --cached-dc
これにより、このホストコントローラーがドメインコントローラーに接続せずに現在のサーバーを一時的に管理するために必要な情報が含まれる EAP_HOME/domain/configuration/ ディレクトリーに domain.cached-remote.xml ファイルが作成されます。
デフォルトでは、--cached-dc オプションを使用すると、このホストコントローラーによって使用される設定のみがキャッシュされます。ドメイン設定全体をキャッシュして、ホストコントローラーがドメインコントローラーとして動作できるようにする方法は、ホストコントローラーをドメインコントローラーとして動作するように昇格する を参照してください。
--cached-dc を使用してこのホストコントローラーを起動したときにドメインコントローラーを利用できない場合、ホストコントローラーは domain.cached-remote.xml ファイルに保存されたキャッシュされた設定の使用を開始します。このファイルが存在しないとホストコントローラーは起動しないことに注意してください。
この状態の間、ホストコントローラーはドメイン設定を編集できませんが、サーバーを開始したり、デプロイメントを管理することはできます。
ホストコントローラーがキャッシュされた設定を使用して起動されると、ホストコントローラーは継続してドメインコントローラーへの再接続を試みます。ドメインコントローラーが使用できるようになると、ホストコントローラーは自動的にドメインコントローラーに再接続し、ドメイン設定を同期化します。変更された設定によっては、変更の反映にホストコントローラーのリロードが必要になることがあります。この場合、警告がホストコントローラーのログに記録されます。
7.11.3. ホストコントローラーをドメインコントローラーとして動作するように昇格する リンクのコピーリンクがクリップボードにコピーされました!
主要のドメインコントローラーに問題が発生した場合に、ホストコントローラーがドメインコントローラーとして動作するよう昇格できます。ホストコントローラーを昇格する前に、ドメインコントローラーからドメイン設定をローカルでキャッシュする必要があります。
手順
ドメインコントローラーとして使用したいホストコントローラーに
--backupオプションを使用します。$ EAP_HOME/bin/domain.sh --host-config=host-secondary.xml --backupこれにより、ドメイン設定全体のコピーが含まれる
EAP_HOME/domain/configuration/ディレクトリーにdomain.cached-remote.xmlファイルが作成されます。この設定は、ホストコントローラーがドメインコントローラーとして動作するよう再設定された場合に使用されます。注記ignore-unused-configuration属性は、特定のホストがキャッシュする設定の範囲を判断するために使用されます。trueを指定すると、このホストコントローラーに関係する設定のみがキャッシュされ、ドメインコントローラーとして引き継ぐことはできません。falseを指定すると、ドメイン設定全体がキャッシュされます。The
--backup引数はデフォルトでこの属性の値をfalseとし、ドメイン全体をキャッシュします。しかし、この属性をhost.xmlファイルで設定した場合は、その値が使用されます。また、
--cached-dcオプションのみを使用して、ドメイン設定のコピーを作成できますが、host.xmlでignore-unused-configurationの値をfalseと設定し、ドメイン全体をキャッシュする必要があります。以下に例を示します。<domain-controller> <remote username="$local" ignore-unused-configuration="false"> <discovery-options> ... </discovery-options> </remote> </domain-controller>ホストコントローラーをドメインコントローラーに昇格します。
- 元のドメインコントローラーが停止した状態であることを確認します。
- 管理 CLI を使用して、新しいドメインコントローラーとなるホストコントローラーへ接続します。
以下のコマンドを実行してホストコントローラーを設定し、新しいドメインコントローラーとして動作するようにします。
/host=backup:write-attribute(name=domain-controller.local, value={})以下のコマンドを実行し、ホストコントローラーをリロードします。
reload --host=<host_name>
このホストコントローラーがドメインコントローラーとして動作するようになります。