29.2. データセンター間レプリケーションの設定
29.2.1. データセンター間レプリケーションの設定 (リモートクライアントサーバーモード) リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid のリモートクライアントサーバーモードでは、データセンター間のレプリケーションは次のようにセットアップされます。
手順29.1 データセンター間のレプリケーションのセットアップ
RELAY のセットアップ
RELAYをセットアップするには、以下の設定をstandalone.xmlファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow RELAYプロトコルは、リモートサイトと通信するために追加のスタック (既存のTCPスタックと並行して実行される) を作成します。TCPベースのスタックがローカルクラスターに使用される場合、2 つのTCPベースのスタック設定が必要になります。1 つはローカル通信用で、もう 1 つはリモートサイトへの接続用になります。さらに詳しい説明は、「データセンター間レプリケーションの操作」を参照してください。サイトのセットアップ
クラスター内のそれぞれの分散キャッシュに対してサイトをセットアップするには、standalone.xmlファイルで以下の設定を使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ローカルサイトトランスポートの設定
トランスポートを設定するには、transport要素にローカルサイトの名前を追加します。<transport executor="infinispan-transport" lock-timeout="60000" cluster="LON" stack="udp"/><transport executor="infinispan-transport" lock-timeout="60000" cluster="LON" stack="udp"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
29.2.2. データセンター間レプリケーション (ライブラリーモード) の設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
29.2.2.1. データセンター間レプリケーションを宣言的に設定する リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
データセンター間のレプリケーションを設定する際、
relay.RELAY2 プロトコルは、リモートサイトと通信するために追加のスタック (既存の TCP スタックと並行して実行される) を作成します。TCP ベースのスタックがローカルクラスターに使用される場合、2 つの TCP ベースのスタック設定が必要になります。1 つはローカル通信用で、もう 1 つはリモートサイトへの接続用です。
JBoss Data Grid のライブラリーモードでは、データセンター間のレプリケーションは次のようにセットアップされます。
手順29.2 データセンター間のレプリケーションのセットアップ
ローカルサイトを設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow site要素をglobal要素に追加してローカルサイト (この例では、ローカルサイトの名前はLONです) を追加します。- サイト間のレプリケーションには、デフォルト以外の JGroups 設定が必要です。
transport要素を追加し、設定ファイルへのパスをconfigurationFileプロパティーとしてセットアップします。この例では、JGroups 設定ファイルの名前はjgroups-with-relay.xmlです。 NYCおよびSFOサイトにバックアップするには、LONサイトでキャッシュを設定します。- バックアップキャッシュを設定します。
LONからバックアップデータを取得するには、NYCサイトでキャッシュを設定します。LONからバックアップデータを取得するには、SFOサイトでキャッシュを設定します。
設定ファイルの内容を追加します。
デフォルトでは、Red Hat JBoss Data Grid にはinfinispan-embedded-{VERSION}.jarパッケージ内のdefault-configs/default-jgroups-tcp.xmlやdefault-configs/default-jgroups-udp.xmlなどの JGroups 設定ファイルが含まれます。JGroups 設定を新規ファイル (この例では、ファイル名はjgroups-with-relay.xml) にコピーし、指定される設定情報をこのファイルに追加します。relay.RELAY2プロトコル設定は、設定スタックの最新のプロトコルである必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow relay.xml ファイルを設定します。
relay.xmlファイルでrelay.RELAY2設定をセットアップします。このファイルは、グローバルクラスター設定について説明するものです。Copy to Clipboard Copied! Toggle word wrap Toggle overflow グローバルクラスターを設定します。
relay.xmlで参照されるファイルjgroups-global.xmlには、グローバルクラスター、つまりサイト間の通信で使用される別の JGroups 設定が含まれます。グローバルクラスター設定は、通常はTCPベースであり、TCPPINGプロトコル (PINGまたはMPINGではない) を使用してメンバーを検出します。default-configs/default-jgroups-tcp.xmlの内容をjgroups-global.xmlにコピーし、TCPPINGを設定するために以下の設定を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow TCPPING.initial_hostsのホスト名 (または IP アドレス) をサイトマスターに使用されるものに置き換えます。ポート (この場合は7800) はTCP.bind_portに一致している必要があります。TCPPINGプロトコルについてさらに詳しくは、「TCPPing プロトコルの使用」を参照してください。
29.2.2.2. データセンター間レプリケーションをプログラムを用いて設定する リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid でのデータセンター間のレプリケーションを設定するプログラムを用いた方法を以下に示します。
手順29.3 データセンター間レプリケーションをプログラムを用いて設定する
ノードの場所を特定します。
ノードが所属するサイトを宣言します。globalConfiguration.site().localSite("LON");globalConfiguration.site().localSite("LON");Copy to Clipboard Copied! Toggle word wrap Toggle overflow JGroups を設定します。
RELAYプロトコルを使用するように JGroups を設定します。globalConfiguration.transport().addProperty("configurationFile", jgroups-with-relay.xml);globalConfiguration.transport().addProperty("configurationFile", jgroups-with-relay.xml);Copy to Clipboard Copied! Toggle word wrap Toggle overflow リモートサイトをセットアップします。
リモートサイトにレプリケートするために JBoss Data Grid キャッシュをセットアップします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: バックアップクラッシュを設定します。
JBoss Data Grid は、リモートサイトと同じ名前を使って、データをキャッシュに暗黙的にレプリケートします。リモートサイトのバックアップキャッシュが異なる名前を持つ場合、ユーザーは、データが正しいキャッシュにレプリケートされていることを確認するためにbackupForキャッシュを指定する必要があります。注記
この手順は任意であり、リモートサイトのキャッシュの名前が元のキャッシュとは異なるものに設定される場合にのみ必要になります。LONからのバックアップデータを受信できるようにサイトNYCのキャッシュを設定します。ConfigurationBuilder NYCbackupOfLon = new ConfigurationBuilder(); NYCbackupOfLon.sites().backupFor().remoteCache("lon").remoteSite("LON");ConfigurationBuilder NYCbackupOfLon = new ConfigurationBuilder(); NYCbackupOfLon.sites().backupFor().remoteCache("lon").remoteSite("LON");Copy to Clipboard Copied! Toggle word wrap Toggle overflow LONからバックアップデータを受信できるようにサイトSFOのキャッシュを設定します。ConfigurationBuilder SFObackupOfLon = new ConfigurationBuilder(); SFObackupOfLon.sites().backupFor().remoteCache("lon").remoteSite("LON");ConfigurationBuilder SFObackupOfLon = new ConfigurationBuilder(); SFObackupOfLon.sites().backupFor().remoteCache("lon").remoteSite("LON");Copy to Clipboard Copied! Toggle word wrap Toggle overflow
設定ファイルの内容を追加します。
デフォルトで、Red Hat JBoss Data Grid には、infinispan-embedded-{VERSION}.jarパッケージ内のdefault-configs/default-jgroups-tcp.xmlおよびdefault-configs/default-jgroups-udp.xmlなどの JGroups 設定ファイルが含まれます。JGroups 設定を新規ファイル (この例では、ファイル名はjgroups-with-relay.xml) にコピーし、指定される設定情報をこのファイルに追加します。relay.RELAY2プロトコル設定は、設定スタックの最新のプロトコルである必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow relay.xml ファイルを設定します。
relay.xmlファイルでrelay.RELAY2設定をセットアップします。このファイルは、グローバルクラスター設定について説明するものです。Copy to Clipboard Copied! Toggle word wrap Toggle overflow グローバルクラスターを設定します。
relay.xmlで参照されるファイルjgroups-global.xmlには、グローバルクラスター、つまりサイト間の通信で使用される別の JGroups 設定が含まれます。グローバルクラスター設定は、通常はTCPベースであり、TCPPINGプロトコル (PINGまたはMPINGではない) を使用してメンバーを発見します。default-configs/default-jgroups-tcp.xmlの内容をjgroups-global.xmlにコピーし、TCPPINGを設定するために以下の設定を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow TCPPING.initial_hostsのホスト名 (または IP アドレス) をサイトマスターに使用されるものに置き換えます。ポート (この場合は7800) はTCP.bind_portに一致している必要があります。TCPPINGプロトコルについてさらに詳しくは、「TCPPing プロトコルの使用」を参照してください。