legacy-knowledge-base
公開されました Sep. 10, 2025

TCP Unicastによるクラスタリング

written-by

Liferay Support

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

Liferayプラットフォームでのクラスタリングは、UDP Multicast、UDP Unicast、TCP Unicastを使用することで実現可能です。 マルチキャストはデフォルトで使用されていますが、インフラストラクチャーレベルでUDPマルチキャストが使用できない、または無効になっているケースがあります。 そのような場合、LiferayプラットフォームとのクラスタリングにTCP Unicastを使用することができます。

本記事では、Liferay 6.2 Portal EEを2ノード使用し、TCP UnicastによるLiferayプラットフォームのクラスタリングを設定するために必要な手順を紹介します。 対応する企業インフラやAmazon AWSについても、同様の説明があります。

解像度

Liferay環境でTCP Unicastクラスタリングを実現するには、クラスタ化されたLiferayインスタンスのそれぞれで、以下の手順を実行する必要があります。

  1. 関連するポートが開いていることを確認する

    Liferayのクラスタリングを成功させるためには、ホスト同士が通信してネットワーク上にクラスタリングパケットを送信する必要があります。 以下のセクションで紹介する TCP Ping と S3 Ping 以外にも、Liferay のクラスタリングを設定するためのオプションはこちらにあります: Liferay Portal の分散キャッシュを管理するをご覧ください。

  2. TCP Unicastを設定する

    以下の手順で、TCP Unicast の設定を含む XML ファイルを構成します。 このXMLファイルの設定方法としては、まず [Liferay_Home]㊦[Tomcat_Home]㊦\ROOTWEB-INF↩lib㊦jgroups.jar\tcp.xml からオリジナルコピーを入手し、そこで提供されているデフォルト値をもとに自分で調整することをお勧めします。 Liferay DXP 7.1以上では、tcp.xmlは[Liferay_Home]/osgi/marketplace/Liferay Foundation - Liferay Portal - Impl.lpkg --> com.liferay.portal.cluster.multiple-[version].jar --> lib/jgroups-[version].Final.jar --> tcp.xmlに配置されています。

    独自のXMLファイルの設定が終わったら、最も簡単な方法は、アプリケーションサーバーのグローバルライブラリにXMLファイルを置き、Liferayインスタンスが起動時にXMLファイルを読むことができるようにすることです。 それ以外の場合は、 cluster.link.channel.properties.control および cluster.link.channel.properties.transport.0 のプロパティで、XMLファイル名だけでなく詳細パスを指定する必要があります。

    *注:AWS環境の場合:
    1. XMLファイルに関連するバケット情報を含める前に、クラスタ化されたすべてのLiferayインスタンスからアクセス可能なAmazon S3バケットを作成する必要があります。 XML ファイルの設定の詳細については、こちらをご覧ください: Liferay PortalのDistributed Cacheの管理をご覧ください。

    2. JGroupsのトラフィックを許可するために、EC2 Security Groupsを設定する必要があります。 Linux および/または Windowsについては、AWS Security Groups のドキュメントを参照してください。

  3. portal-ext.propertiesにプロパティを追加する

    Liferay クラスタリングに必要なポータルプロパティの他に、Liferay インスタンスが設定された XML ファイルから設定をピックアップするために、いくつかの追加プロパティを portal-ext.properties で指定する必要があります。 必要なポータルプロパティの一式を以下に示します。

    cluster.link.enabled=true
    cluster.link.autodetect.address= www.google.com:80
    ehcache.cluster.link.replication.enabled=true
    cluster.link.channel.properties.control=Path_to_the_XML
    cluster.link.channel.properties.transport.0=Path_to_the_XML
    
    # Only needed when Lucene is being used
    lucene.replicate.write=true
  4. Ehcache Cluster EEアプリケーションをデプロイします。

    Ehcache Cluster EEプラグインは、Liferayクラスタ環境の稼働前に、クラスタ化されたすべてのLiferayインスタンスにデプロイされることが必要です。

  5. Liferay Clusterの起動とベリファイ

    クラスタリングが期待通りに動作していることを確認するために、ここに記載されているテストを参照してください: クラスタ化された環境での Liferay Portal のインストールクラスタリンクが機能しているかどうかのテスト.

追加情報

デバッグのヒント

  1. どのノードがリクエストを処理したかをページセットごとに表示するよう、Liferayプラットフォームに指示する:
    web.server.display.node=true
    

    注:CSSで非表示にすることができます。

  2. クラスタリングデバッグトレースセットを有効にするには:
    cluster.executor.debug.enabled=true

    JGroupsを使用する場合、すべての構成情報が同期されていることを確認してください。 例えば、最新のフィックスパックには、Liferayに同梱されているものとは異なるJGroupsの最新バージョンが含まれている場合があります。

関連リンク

did-this-article-resolve-your-issue

legacy-knowledge-base