JGroupsがアドレスにバインドしようとすると、レスポンスが得られない場合があります。 この場合、以下のような例外が発生します。
05:50:53,559 ERROR [Framework Event Dispatcher: Equinox Container: 70881daa-756e-0016-1bfa-e3d1d4e1b271][com_liferay_portal_cluster_multiple:97] FrameworkEvent ERROR org.osgi.framework.ServiceException: Exception in org.apache.felix.scr.impl.manager.SingleComponentManager.getService() at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:222) at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ... Caused by: java.lang.IllegalStateException: Could not obtain lock at org.apache.felix.scr.impl.manager.AbstractComponentManager.obtainLock(AbstractComponentManager.java:198) ...
決議
この問題を解決するには、以下のオプションのいずれかを実行します。
- 発信トラフィックが許可されるようにネットワークを変更します。
- portal-ext.properties / portal-setup-wizard.propertiesファイルに以下のプロパティを追加し、pingに対して即座に返信するアドレスを指定します(デフォルト値では以下のようになります)。
cluster.link.autodetect.address=www.google.com:80
このプロパティを設定すると、JGroups がバインドできるようにデフォルトの発信 IP アドレスを自動検出します。 プロパティは、ポータルサーバー、www.google.com、またはローカルゲートウェイにアクセス可能なアドレスを指す必要があります。
会員限定記事
Liferay エンタープライズ サブスクリプションをお持ちのお客様は1500件を超えるベストプラクティス、トラブルシューティング、その他のソリューション記事を閲覧できます。ログインすると、記事全体をお読みいただけます。
ログイン