30.2. JGroups の設定 (ライブラリーモード)


Red Hat JBoss Data Grid がクラスターモードで動作するには、適切な JGroups 設定が必要になります。

例30.5 JGroups XML 設定

<infinispan xmlns="urn:infinispan:config:8.3">
    <jgroups>
        <stack-file name="jgroupsStack" path="/path/to/jgroups/xml/jgroups.xml}"/>
    </jgroups>
    <cache-container name="default" default-cache="default">
        <transport stack="jgroupsStack" lock-timeout="600000" cluster="default" />
    </cache-container>
</infinispan>
Copy to Clipboard Toggle word wrap
まず JBoss Data Grid はクラスパスで jgroups.xml を検索します。インスタンスがクラスパスに見つからない場合、絶対パス名を探します。

30.2.1. JGroups トランスポートプロトコル

トランスポートプロトコルは、プロトコルスタックの底辺にあるプロトコルです。トランスポートプロトコルは、ネットワークとのメッセージの送受信を行います。
Red Hat JBoss Data Grid には、UDP と TCP トランスポートプロトコルの両方が同梱されています。

30.2.1.1. UDP トランスポートプロトコル

UDP は、以下を使用するトランスポートプロトコルです。
  • クラスターのすべてのメンバーにメッセージを送信する IP マルチキャスト。
  • 単一メンバーに送信されるユニキャストメッセージの UDP データグラム。
UDP トランスポートが開始されると、ユニキャストソケットとマルチキャストソケットが開きます。ユニキャストソケットは、ユニキャストメッセージの送受信に使用され、マルチキャストソケットは、マルチキャストソケットの送受信を行います。チャネルの物理アドレスは、ユニキャストソケットのアドレスおよびポート番号と同じです。

30.2.1.2. TCP トランスポートプロトコル

TCP/IP は、IP マルチキャストが使用できなくなる状況で使用できる UDP の代替トランスポートです。このような状況には、ルーターが IP マルチキャストパケットを破棄する可能性のある WAN 上の操作が実行される場合などが含まれます。
TCP は、ユニキャストおよびマルチキャストメッセージを送信するために使用されるトランスポートプロトコルです。
  • マルチキャストメッセージを送信する場合に、TCP は複数のユニキャストメッセージを送信します。
IP マルチキャストは初期メンバーを検出するために使用することができないため、初期メンバーを見つけるには別のメカニズムを使用する必要があります。

30.2.1.3. TCPPing プロトコルの使用

一部のネットワークでは、TCP のみを使用できます。事前に設定された default-configs/default-jgroups-tcp.xml には MPING プロトコルが含まれ、検出に UDP マルチキャストが使用されます。UDP マルチキャストが利用できない場合は、MPING プロトコルを別のメカニズムで置き換える必要があります。推奨される別の方法は、TCPPING プロトコルを使用することです。TCPPING 設定には、ノード検出のために接続される IP アドレスの静的なリストが含まれます。

例30.6 JGroups サブシステムでの TCPPING の使用の設定

<TCP bind_port="7800" />
<TCPPING initial_hosts="${jgroups.tcpping.initial_hosts:HostA[7800],HostB[7801]}"
         port_range="1" />
Copy to Clipboard Toggle word wrap

30.2.2. 事前設定された JGroups ファイル

Red Hat JBoss Data Grid では、事前設定された複数の JGroups ファイルが infinispan-embedded.jar にパッケージ化され、デフォルトでクラスパス上にて使用可能です。これらのファイルの 1 つを使用するには、jgroups.xml を使用する代わりにこれらのいずれかのファイルの名前を指定します。
JBoss Data Grid に含まれる JGroups 設定ファイルは、プロジェクトの基礎として使用することを目的としています。通常 JGroups では、ネットワークのパフォーマンスを最適化するのに細かな調整が必要となります。
利用可能な設定は以下のとおりです。
  • default-configs/default-jgroups-udp.xml
  • default-configs/default-jgroups-tcp.xml
  • default-configs/default-jgroups-ec2.xml

30.2.2.1. default-jgroups-udp.xml

default-configs/default-jgroups-udp.xml ファイルは、Red Hat JBoss Data Grid の事前設定済み JGroups 設定です。default-jgroups-udp.xml 設定には、以下のことが該当します。
  • UDP をトランスポートとして使用し、UDP マルチキャストをディスカバリーに使用します。
  • 大型のクラスター (9 以上のノード) に適しています。
  • インバリデーションまたはレプリケーションモードを使用する場合に適しています。
起動時に特定のシステムプロパティーを JVM に追加すると、一部の設定の挙動を変更することが可能です。変更可能な設定は以下の表のとおりです。
Expand
表30.1 default-jgroups-udp.xml システムプロパティー
システムプロパティー 説明 デフォルト 必要性
jgroups.udp.mcast_addr マルチキャスト (通信とディスカバリーの両方) に使用する IP アドレス。IP マルチキャストに適した有効なクラス D IPアドレスでなければなりません。 228.6.7.8 いいえ
jgroups.udp.mcast_port マルチキャストに使用するポート。 46655 いいえ
jgroups.udp.ip_ttl IP マルチキャストパケットの TTL (有効期間) を指定します。この値は、パケットがドロップされる前に許可されるネットワークホップの数になります。 2 いいえ

30.2.2.2. default-jgroups-tcp.xml

default-configs/default-jgroups-tcp.xml ファイルは、Red Hat JBoss Data Grid の事前設定済み JGroups 設定です。default-jgroups-tcp.xml 設定には、以下のことが該当します。
  • TCP をトランスポートとして使用し、UDP マルチキャストをディスカバリーに使用します。
  • 通常は、マルチキャスト UDP がオプションではない場合にのみ使用されます。
  • 8 つ以上のノードから構成されるクラスターの場合、TCP は UDP ほどパフォーマンスがよくありません。4 つ以下のノードで構成されるクラスターの場合、UDP と TCP のパフォーマンスはほとんど同じレベルになります。
他の事前設定された JGroups ファイルと同様に、起動時に特定のシステムプロパティーを JVM に追加すると一部の設定の挙動を変更することが可能です。変更可能な設定は以下の表のとおりです。
Expand
表30.2 default-jgroups-tcp.xml システムプロパティー
システムプロパティー 説明 デフォルト 必要性
jgroups.tcp.address TCP トランスポートに使用する IP アドレス 127.0.0.1 いいえ
jgroups.tcp.port TCP ソケットに使用するポート。 7800 いいえ
jgroups.mping.mcast_addr マルチキャスト (ディスカバリー) に使用する IP アドレス。IP マルチキャストに適した有効なクラス D IP アドレスでなければなりません。 228.6.7.8 いいえ
jgroups.mping.mcast_port マルチキャストに使用するポート。 46655 いいえ
jgroups.udp.ip_ttl IP マルチキャストパケットの TTL (有効期間) を指定します。この値は、パケットがドロップされる前に許可されるネットワークホップの数になります。 2 いいえ

30.2.2.3. default-jgroups-ec2.xml

default-configs/default-jgroups-ec2.xml ファイルは、Red Hat JBoss Data Grid の事前設定済み JGroups 設定です。default-jgroups-ec2.xml 設定には、以下のことが該当します。
  • TCP をトランスポートとして使用し、ディスカバリーに S3_PING を使用します。
  • UDP マルチキャストが使用できない Amazon EC2 ノードに適しています。
他の事前設定された JGroups ファイルと同様に、起動時に特定のシステムプロパティーを JVM に追加すると一部の設定の挙動を変更することが可能です。変更可能な設定は以下の表のとおりです。
Expand
表30.3 default-jgroups-ec2.xml システムプロパティー
システムプロパティー 説明 デフォルト 必要性
jgroups.tcp.address TCP トランスポートに使用する IP アドレス。 127.0.0.1 いいえ
jgroups.tcp.port TCP ソケットに使用するポート。 7800 いいえ
jgroups.s3.access_key S3 バケットのアクセスに使用される Amazon S3 アクセスキー。 はい
jgroups.s3.secret_access_key S3 バケットのアクセスに使用される Amazon S3 の秘密キー。 はい
jgroups.s3.bucket 使用する Amazon S3 バケットの名前。一意の名前で、すでに存在している必要があります。 はい
jgroups.s3.pre_signed_delete_url DELETE 操作に使用する事前署名付き URL。 はい
jgroups.s3.pre_signed_put_url PUT 操作に使用する事前署名付き URL。 はい
jgroups.s3.prefix 設定された場合、S3_PING はそのプレフィックス値で始まる名前のバケットを検索します。 いいえ

30.2.2.4. default-jgroups-google.xml

default-configs/default-jgroups-google.xml ファイルは Red Hat JBoss Data Grid の事前に定義された JGroups 設定です。default-jgroups-google.xml 設定には以下のことが該当します。
  • TCP をトランスポートとして使用し、GOOGLE_PING をディスカバリーに使用します。
  • UDP マルチキャストが使用できない Google Compute Engine ノードに適しています。
他の事前に設定された JGroups ファイルと同様に、起動時に特定のシステムプロパティーを JVM に追加すると一部の設定の動作を変更することが可能です。変更可能な設定は以下の表のとおりです。
Expand
表30.4 default-jgroups-google.xml System Properties
システムプロパティー 説明 デフォルト 必要性
jgroups.tcp.address TCP トランスポートに使用する IP アドレス 127.0.0.1 いいえ
jgroups.tcp.port TCP ソケットに使用するポート。 7800 いいえ
jgroups.google.access_key バケットのアクセスに使用される Google Compute Engine ユーザーのアクセスキー。 はい
jgroups.google.secret_access_key バケットのアクセスに使用される Google Compute Engine ユーザーのシークレットアクセスキー。 はい
jgroups.google.bucket 使用する Google Compute Engine バケットの名前。一意の名前で、すでに存在している必要があります。 はい
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat