問題
7.2TCPpingクラスタにfix pack 1をインストールした後、ノードの起動に失敗し、多数のエラーが発生します。 LiferayがJgroupsClusterChannelsを作成できず、 singleton_name が認識されないようです:
ERROR [Start Level: Equinox Container: 90d5c7f8-322e-4ba1-96f6-e4c89fa83ec0][ClusterExecutorImpl:93] bundle com.liferay.portal.cluster.multiple:3.0.10 (644)[com.liferay.portal.cluster.multiple.internal.ClusterExecutorImpl(3382)] : The activate method has thrown an exception
com.liferay.portal.kernel.exception.SystemException: Unable to create JGroupsClusterChannel
Caused by: java.lang.IllegalArgumentException: JGRP000001: configuration error: the following properties in TCP are not recognized: {singleton_name=liferay_tcp_cluster}
環境
- Liferay DXP 7.2 (フィックスパック1+)
解像度
DXP 7.2 GA1 TCPpingクラスタで、tcp.xmlの singleton_name (制御と転送のための共有ポート)を使用して、Liferayノードあたり1 tcp.xml を使用していた場合、DXP 7.2 の修正パック1から、「ノードあたり2 tcp.xml 構成」(このリンク記事)に変更するか、現在の「ノードあたり1 tcp.xml 構成」を以下のように修正する必要があるようです:
使用例1: Javaオプションで初期ホストを指定する。
-Djgroups.tcpping.initial_hosts=hostA[7800],hostB[7800],hostN[7800] ...
の場合は、以下の変更を行います:
1) 更新
-Djgroups.tcpping.initial_hosts=hostA[7800],hostB[7800],hostN[7800] ...
宛先
-Djgroups.tcpping.initial_hosts=hostA[7800],hostA[7801],hostB[7800],hostB[7801],hostN[7800],hostN[7801] ...
をLiferayの各ノードで使用します、
2) 各tcp.xmlから singleton_name のエントリーを削除する。
使用例2: 初期ホストがtcp.xmlにハードコードされている。
initial_hosts="hostA[7800],hostB[7800],hostN[7800] ..."
1) アップデート
initial_hosts="hostA[7800],hostB[7800],hostN[7800] ..."
宛先
initial_hosts="hostA[7800],hostA[7801],hostB[7800],hostB[7801],hostN[7800],hostN[7801] ..."
を、各Liferayノードのtxp.xmlに追加します、
2) 各tcp.xmlから singleton_name のエントリーを削除する。
追加情報
- フィックスパック1は、JGroupsをバージョン4.1.1にアップグレードします。このバージョンでは、 singleton_name は利用できません。 JGroupsバージョン4.0(https://issues.jboss.org/browse/JGRP-1844).で非推奨になりました。
- なお、JGroupsのバージョンアップに伴う影響については、本ナレッジベース記事( )をご参照ください。