レプリカ・セットに集合コントローラーの server.xml 組み込みファイルを 1 つ構成し、
セット内の他のレプリカの構成を自動的に更新することができます。
構成を自動共有すると、他のレプリカの構成を手動で更新する必要がありません。
構成の自動共有は、自動スケーリングを使用する集合の場合に特に便利です。
このタスクについて
コントローラー構成の組み込みファイルをそのコントローラーの
configDropins/defaults ディレクトリーにドロップインして、レプリカの構成を自動的に更新することができます。
あるいは、ControllerConfigMBean 操作を使用して、集合コントローラーの共有構成ファイルをリスト、追加、または削除できます。
手順
- レプリカ間で共有する構成でコントローラーの configDropins ディレクトリーを作成します。
レプリカ・セットのコントローラーに configDropins/defaults ディレクトリーがない場合は、そのコントローラーに対して
$WLP_USER_DIR/servers/server_name/configDropins/defaults
ディレクトリーを作成します。
注: configDropins サブディレクトリー内のファイル間の優先順位については、
構成ドロップイン (dropins) フォルダーを使用したサーバー構成の指定を参照してください。
このトピックでは、
configDropins/defaults ディレクトリーと
configDropins/overrides ディレクトリーの両方に言及しています。
configDropins/overrides ディレクトリーにドロップインしたコントローラー構成は、レプリカ間で共有されません。
レプリカ間で構成を共有する場合は、
configDropins/defaults ディレクトリーを使用する必要があります。
- レプリカ・セット内の他のレプリカとコントローラー構成を共有します。
- configDropins/defaults ディレクトリーにレプリカ・セット・コントローラーの構成をドロップインします。
例えば、コントローラーの server.xml 組み込みファイルをその
configDropins/defaults ディレクトリーにコピーします。
- ControllerConfigMBean 操作を使用して、集合コントローラーの共有構成ファイルをリスト、追加、または削除します。
構成ファイルは、
コントローラーの $WLP_USER_DIR/servers/server_name/configDropins/defaults ディレクトリーに保管され、
レプリカの configDropins/defaults ディレクトリーと共有されます。
Jython スクリプト、または JConsole などの Java クライアントを使用して、
集合コントローラーの以下の ControllerConfigMBean 操作を実行します。
- listSharedConfig
- listSharedConfig 操作では、レプリカの共有構成ディレクトリー内のファイルをリストします。
- addSharedConfig
- addSharedConfig 操作では、構成をファイルに追加し、
各レプリカの configDropins/defaults ディレクトリーにファイルを保管します。
この操作には、パラメーターを 2 つ指定する必要があります。
- fileName
- 共有するコントローラー構成のファイル名。
共有構成ディレクトリーに存在するファイル名を指定すると、
既存のファイルが上書きされます。
(ストリング)
- config
- 有効な server.xml 組み込みファイルの内容。
(ストリング)
以下に例を示します。
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- removeSharedConfig
- removeSharedConfig 操作では、各レプリカの configDropins/defaults ディレクトリーからファイルを削除します。
この操作には、パラメーターを 1 つ指定する必要があります。
- fileName
- 各レプリカの共有構成ディレクトリーから削除するコントローラー構成のファイル名。
(ストリング)
コントローラー構成は、レプリカ・セット内の他のすべてのレプリカの構成ドロップイン・ディレクトリーと自動的に同期します。
構成を自動共有するコントローラーにレプリカを追加すると、
コントローラーの configDropins/defaults ディレクトリーの内容が、新しいレプリカに複製されます。
1 つのコントローラーのスケーリング・ポリシー定義に何らかの変更を行うと、
他のレプリカの構成ドロップイン・ディレクトリー内の構成と自動的に同期します。
コントローラー構成が他のレプリカの構成と自動的に同期しない場合は、
コントローラーとレプリカのログを確認してください。
また、configDropins/defaults ディレクトリーを使用してコントローラー構成を共有した場合は、構成モニターが使用不可になっていないことを確認してください。
デフォルトでは、構成モニターは使用可能になっています。
構成モニターが使用不可の場合は、FileNotificationMBean を使用して構成変更をコントローラーに通知することができ、これにより、変更がレプリカと共有されます。
ControllerConfigMBean 操作によって保管された構成は、構成モニターが使用可能であるかどうかに関係なく、
レプリカ間で自動共有されます。
動的更新の制御を参照してください。
例: JConsole を使用して、レプリカ間でコントローラー構成を共有する
この例では、JConsole を使用して、コントローラーの configDropins/defaults ディレクトリー内の
server.xml 組み込みファイルをすべてのレプリカと共有する方法について説明します。
- JConsole を集合コントローラー・プロセスに接続します。
- 集合コントローラーが稼働していることを確認します。
wlp/bin/server status collective_controller_name
レプリカは稼働中である必要はありません。
稼働中でないレプリカは、開始時に共有構成が同期されます。
- JConsole が稼働していなければ開始します。
Windows では、Java_installation¥bin¥jconsole.exe ファイルを実行します。
- 集合コントローラーのプロセスを選択します。
JConsole で REST Connector を使用して、基本の HTTPS 接続を通して MBean にリモート・アクセスするには、
『Creating remote JMX connections in Liberty』を参照してください。
- ControllerConfigMBean の addSharedConfig 操作を JConsole で実行して、コントローラーの server.xml
組み込みファイルを各レプリカの configDropins/defaults ディレクトリーに追加します。
- JConsole の 「MBeans」タブで、
ControllerConfigMBean の addSharedConfig 操作を選択します。
- 「fileName」 に server.xml 組み込みファイルのパスを指定します。
例えば、以下のようにします。
$WLP_USER_DIR/servers/collective_controller_name/trace.xml
- 「config」 に追加する構成を指定します。例えば、以下のようにします。
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- 「addSharedConfig」 をクリックして操作を実行します。
- 操作により、レプリカ間でコントローラー構成が正常に共有されたことを確認します。