クロスサイトレプリケーションの設定


Red Hat Data Grid 8.0

Data Grid のドキュメント

概要

複数の Data Grid クラスター間でデータを複製します。

第1章 Red Hat Data Grid

Data Grid は、高性能の分散型インメモリーデータストアです。

スキーマレスデータ構造
さまざまなオブジェクトをキーと値のペアとして格納する柔軟性があります。
グリッドベースのデータストレージ
クラスター間でデータを分散および複製するように設計されています。
エラスティックスケーリング
サービスを中断することなく、ノードの数を動的に調整して要件を満たします。
データの相互運用性
さまざまなエンドポイントからグリッド内のデータを保存、取得、およびクエリーします。

1.1. Data Grid のドキュメント

Data Grid のドキュメントは、Red Hat カスタマーポータルで入手できます。

1.2. Data Grid のダウンロード

Red Hat カスタマーポータルで Data Grid Software Downloads にアクセスします。

注記

Data Grid ソフトウェアにアクセスしてダウンロードするには、Red Hat アカウントが必要です。

第2章 Data Grid クロスサイトレプリケーション

クロスサイトレプリケーションを使用すると、ある Data Grid クラスターから別の Data Grid クラスターにデータのバックアップを作成できます。

2.1. クロスサイトレプリケーション

異なる場所で実行されている Data Grid クラスターは、相互に検出および通信できます。

サイトは、ローカルで実行中の Data Grid クラスターです。デモンストレーションの目的で、以下の図のように、サイトを地理的に異なる場所にあるデータセンターとして説明します。

LON は、イギリスのロンドンにあるデータセンターです。
NYC は、米国のニューヨーク市にあるデータセンターです。

注記

Data Grid は、2 つ以上のサイトにまたがってグローバルクラスターを形成できます。

たとえば、LON および NYC のバックアップ場所として、サンフランシスコで実行している 3 番目の Data Grid クラスター SFO を設定します。

2.1.1. サイトマスター

サイトマスターは、Data Grid クラスターのノードであり、バックアップの場所から要求を送受信します。

ノードがサイトマスターでない場合は、バックアップ要求をローカルサイトマスターに転送する必要があります。バックアップの場所に要求を送信できるのは、サイトマスターだけです。

最適なパフォーマンスを得るには、すべてのノードをサイトマスターとして設定する必要があります。これにより、クラスター内の各ノードがバックアップ要求をサイトマスターに転送しなくても、リモートサイトに直接バックアップできるため、バックアップ要求の速度が向上します。

2.2. キャッシュへのバックアップの追加

キャッシュ定義でバックアップの場所としてリモートサイトに名前を付けます。

たとえば、以下の図では、3 つのキャッシュ "customers"、"eu-orders"、および "us-orders" を示しています。

  • LON では、"customers" はバックアップの場所として NYC を指定します。
  • NYC では、"customers" はバックアップの場所として LON を指定します。
  • "eu-orders" および "us-orders" にはバックアップはなく、それぞれのクラスターのローカルになります。

2.3. バックアップストラテジー

Data Grid クラスターは、データをリモートサイトにバックアップするためにさまざまな戦略を使用できます。

Data Grid は、ローカルキャッシュへの書き込みが発生するのと同時にサイト間で複製します。たとえば、クライアントが LON に "k1" と書き込む場合、Data Grid は同時に "k1" を NYC バックアップします。

2.3.1. 同期バックアップ

Data Grid がデータをバックアップ場所に複製する場合は、操作が完了するのを待たずにローカルキャッシュに書き込みます。

バックアップ操作が失敗した場合に、Data Grid がローカルキャッシュへの書き込みを処理する方法を制御できます。たとえば、リモートサイトへのバックアップが失敗した場合に、ローカル書き込みを中止して例外を出力するように Data Grid を設定できます。

同期バックアップは、楽観的なトランザクションに参加するキャッシュを持つ 2 フェーズコミットもサポートします。バックアップの最初のフェーズはロックを取得します。2 番目のフェーズは変更をコミットします。

重要

クロスサイトレプリケーションのある 2 フェーズコミットは、ネットワーク全体で 2 つのラウンドトリップが必要なため、パフォーマンスに大きく影響します。

2.3.2. 非同期バックアップ

Data Grid がデータをバックアップ場所に複製する場合、操作が完了するのを待たずにローカルキャッシュに書き込みます。

非同期バックアップ操作およびローカルキャッシュへの書き込みは、互いに独立しています。バックアップ操作が失敗した場合は、ローカルキャッシュへの書き込み操作は続行され、例外は発生しません。

2.3.3. 同期バックアップと非同期バックアップの比較

同期バックアップは、サイト全体でのデータの一貫性を最も強力に保証します。strategy=sync の場合、cache.put() 呼び出しが返されると、ローカルキャッシュとバックアップの場所で値が最新の状態であることがわかります。

この一貫性のために犠牲となるのがパフォーマンスです。同期バックアップは、非同期バックアップと比較すると、レイテンシーが大幅に高くなります。

一方、非同期バックアップは、クライアントリクエストにレイテンシーを追加しないので、パフォーマンスに影響を及ぼすことはありません。ただし、strategy=async の場合、cache.put() 呼び出しが返されると、バックアップの場所の値がローカルキャッシュの値と同じであるかどうかを確認できません。

2.4. サイトをオフラインで自動的に実行

バックアップ設定には、データをリモートサイトに複製する操作のタイムアウト値が含まれます。バックアップ操作がタイムアウトに達すると、Data Grid は操作を失敗として記録します。

サイトを自動的にオフラインにするには、発生する可能性のある 連続 する失敗の数を設定できます。

たとえば、NYC バックアップ設定は、NYC がオフラインになる失敗の数として 5 を指定します。LON が 5 回連続してバックアップ操作を試みて失敗すると、Data Grid は自動的に NYC をオフラインにします。その後、LON はサイトをオンラインに戻すまで NYC へのバックアップを停止します。

<backup site="NYC" strategy="ASYNC">
	<take-offline after-failures="5"/>
</backup>
Copy to Clipboard Toggle word wrap

サイトをオフラインにするまでの待機時間を指定することもできます。バックアップ操作が失敗すると、Data Grid はサイトをオフラインにするまで待機します。待機時間がなくなる前にバックアップ要求が成功した場合、Data Grid はサイトをオフラインにしません。

<backup site="NYC" strategy="ASYNC">
	<take-offline after-failures="5"
                min-wait="10000"/>
</backup>
Copy to Clipboard Toggle word wrap

上記の例では、5 つの連続操作で障害が発生すると、Data Grid は 10 秒待機し、10 秒の待機時間内に要求が成功しなかった場合、Data Grid は NYC をオフラインにします。

ロケーションを自動的にオフラインにする最小待機時間のみを使用するには、after-failures 属性に負の値またはゼロの値を設定します。以下に例を示します。

<backup site="NYC" strategy="ASYNC">
	<take-offline after-failures="-1"
                min-wait="10000"/>
</backup>
Copy to Clipboard Toggle word wrap
ヒント

サイトは、Data Grid コマンドラインインターフェイスまたは REST API を使用して手動でオフラインにできます。

2.5. 状態遷移

状態遷移は、サイト間でデータを同期する管理操作です。

たとえば、LON がオフラインになると、NYC がクライアント要求の処理を開始します。LON をオンラインに戻すと、LON の Data Grid クラスターには NYC のクラスターと同じデータはありません。

LONNYC の間でデータの一貫性を保つには、NYC から LON に状態をプッシュできます。

  • 状態遷移は双方向です。たとえば、NYC から LON へ、または LON から NYC へ状態のプッシュを実行できます。
  • 状態をオフラインサイトにプッシュすると、オンラインに戻ります。
  • 状態転送は、発信元サイトと受信サイトの両方のサイトに存在するデータのみを上書きします。Data Grid はデータを削除しません。

    たとえば、"k2" は LON および NYC に存在します。"k2" は、LON がオフライン時に NYC から削除されます。LON をオンラインに戻すと、"k2" は引き続きその場所に存在します。NYC から LON に状態をプッシュすると、転送は LON の "k2" には影響しません。

    ヒント

    状態遷移後にキャッシュの内容が同じになるようにするには、状態をプッシュする前に受信サイトのキャッシュからすべてのデータを削除します。clear() メソッドを使用します。

  • 状態遷移は、プッシュの開始後に発生するデータへの更新を上書きしません。

    たとえば、"k1,v1" は LON および NYC に存在します。LON がオフラインになったため、NYC からLON に状態転送をプッシュします。これにより、LON が再びオンラインになります。状態遷移が完了する前に、クライアントは LON に "k1,v2" を配置します。

    この場合、プッシュを開始した後に変更が発生したため、NYC からの状態遷移は "k1,v2" を上書きしません。

参照資料

2.6. サイト全体でのクライアント接続

クライアントは、Active/Passive または Active/Active 設定のいずれかで Data Grid クラスターに書き込みできます。

Active/Passive

以下の図は、Data Grid が 1 つのサイトのみからのクライアント要求を処理する Active/Passive を示しています。

上記のイメージでは、以下のようになります。

  1. クライアントは LON で Data Grid クラスターに接続します。
  2. クライアントは "k1" をキャッシュに書き込みます。
  3. LON のサイトマスター n1 は、k1 をレプリケートする要求を NYC のサイトマスター nA に送信します。

Active/Passive では、NYC はデータの冗長性を提供します。LON の Data Grid クラスターが何らかの理由でオフラインになると、クライアントは NYC への要求の送信を開始できます。LON をオンラインに戻すと、NYC とデータを同期し、クライアントを LON に戻すことができます。

Active/Active

以下の図は、Data Grid が 2 つのサイトでクライアント要求を処理する Active/Active を示しています。

上記のイメージでは、以下のようになります。

  1. クライアント A は、LON で Data Grid クラスターに接続します。
  2. クライアント A は "k1" をキャッシュに書き込みます。
  3. クライアント B は、NYC の Data Grid クラスターに接続します。
  4. クライアント B は "k2" をキャッシュに書き込みます。
  5. LON および NYC のサイトマスターは、"k1" が NYC に複製され、"k2" が LON に複製されるように要求を送信します。

Active/Active では、NYCLON の両方は、クライアント要求の処理中にデータをリモートキャッシュに複製します。NYC または LON のいずれかがオフラインになると、クライアントはオンラインサイトへの要求の送信を開始できます。その後、オフラインサイトをオンラインに戻し、状態をプッシュしてデータを同期し、必要に応じてクライアントを切り替えることができます。

2.6.1. クロスサイトレプリケーションのあるエントリーの競合

クライアントが同時に同じエントリーに書き込むが、サイトが異なる場合は、Active/Active サイト設定でエントリーの競合が発生する可能性があります。

たとえば、クライアント B が NYC の k1 に書き込むのと同時に、クライアント A は LON の "k1" に書き込みます。この場合、"k1" の値は LONNYC とで異なります。

同期のレプリケーションでは、両方のサイトが同じキーを順番にロックするため、同時書き込みはデッドロックになります。デッドロックを解決するには、クライアントアプリケーションはロックがタイムアウトするまで待機する必要があります。

非同期レプリケーションでは、エントリーがローカルで変更されてからサイトが複製されるため、同時書き込みにより値が競合します。レプリケーションの発生後、"k1" のどの値がどのサイトに存在するかは保証されません。

  • キーには競合する値があります。
  • サイトが同時に値を複製しない場合は、競合する値の 1 つが上書きされます。この場合、値の 1 つが失われ、どの値が保存されるかは保証されません。

いずれの場合も、次の競合しない put() 操作で値を更新すると、キー値の不整合が解決されます。

注記

現在、クライアントアプリケーションが非同期モードで競合を処理するために使用できる競合解決ポリシーはありません。ただし、競合に関する解決策は、今後の Data Grid バージョンで計画されています。

2.7. 有効期限とクロスサイトレプリケーション

Data Grid の有効期限は、エントリーがキャッシュに保持される期間を制御します。

  • lifespan の有効期限は、クロスサイトレプリケーションに適しています。エントリーが最大有効期間に達すると、Data Grid はリモートサイトとは独立して期限切れになります。
  • max-idle の有効期限は、クロスサイトレプリケーションでは機能しません。Data Grid は、キャッシュエントリーがリモートサイトでアイドルタイムアウトに到達するかどうかを決定できません。

第3章 クロスサイトレプリケーションのための Data Grid の設定

サイト間でデータをレプリケートするように Data Grid を設定するには、最初にクラスタートランスポートをセットアップして、Data Grid クラスターが相互に検出し、サイトマスターが通信できるようにします。次に、バックアップの場所を Data Grid 設定のキャッシュ定義に追加します。

3.1. クロスサイトレプリケーションのためのクラスタートランスポートの設定

Data Grid クラスターがバックアップの場所と通信できるように、JGroups RELAY2 をトランスポート層に追加します。

手順

  1. infinispan.xml を開いて編集します。
  2. 以下のとおり、JGroups スタックに RELAY2 プロトコルを追加します。

    <jgroups>
       <stack name="xsite" extends="udp">
          <relay.RELAY2 site="LON" xmlns="urn:org:jgroups" max_site_masters="1000"/>
          <remote-sites default-stack="tcp">
             <remote-site name="LON"/>
             <remote-site name="NYC"/>
          </remote-sites>
       </stack>
    </jgroups>
    Copy to Clipboard Toggle word wrap
  3. 以下のとおり、スタックを使用するように Data Grid クラスタートランスポートを設定します。

    <cache-container name="default" statistics="true">
      <transport cluster="${cluster.name}" stack="xsite"/>
    </cache-container>
    Copy to Clipboard Toggle word wrap
  4. infinispan.xml を保存して閉じます。

3.1.1. JGroups RELAY2 スタック

Data Grid クラスターは、クラスター間の検出および通信に JGroups RELAY2 を使用します。

<jgroups>
   <stack name="xsite" 
1

          extends="udp"> 
2

      <relay.RELAY2 xmlns="urn:org:jgroups" 
3

                    site="LON" 
4

                    max_site_masters="1000"/> 
5

      <remote-sites default-stack="tcp"> 
6

         <remote-site name="LON"/> 
7

         <remote-site name="NYC"/>
      </remote-sites>
   </stack>
</jgroups>
Copy to Clipboard Toggle word wrap
1
Data Grid クラスタートランスポートに使用するプロトコルを宣言する xsite という名前のスタックを定義します。
2
クラスター内トラフィックにデフォルトの JGroups UDP スタックを使用します。
3
クラスター間トランスポートのスタックに RELAY2 を追加します。
4
ローカルサイトに名前を付けます。Data Grid は、このサイトからのキャッシュ内のデータをバックアップの場所に複製します。
5
ローカルクラスターに最大 1000 のサイトマスターを設定します。バックアップ要求で最適なパフォーマンスを得るには、max_site_masters に Data Grid クラスター内のノード数以上の値を設定する必要があります。
6
すべてのサイト名を指定し、クラスター間トランスポートにデフォルトの JGroups TCP スタックを使用します。
7
バックアップの場所として各リモートサイトに名前を付けます。

3.1.2. カスタム JGroups RELAY2 スタック

<jgroups>
   <stack-file name="relay-global" path="jgroups-relay.xml"/> 
1

   <stack name="xsite" extends="udp">
      <relay.RELAY2 site="LON" xmlns="urn:org:jgroups"
                    max_site_masters="10" 
2

                    can_become_site_master="true"/>
      <remote-sites default-stack="relay-global">
         <remote-site name="LON"/>
         <remote-site name="NYC"/>
      </remote-sites>
   </stack>
</jgroups>
Copy to Clipboard Toggle word wrap
1
jgroups-relay.xml で定義されたカスタムの RELAY2 スタックを追加します。
2
サイトマスターの最大数を設定し、オプションで追加の RELAY2 プロパティーを指定します。JGroups RELAY2 ドキュメントを参照してください。

jgroups-relay.xmlの例

<config xmlns="urn:org:jgroups"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/jgroups-4.1.xsd">

    <!-- Use TCP for inter-cluster transport. -->
    <TCP bind_addr="127.0.0.1"
         bind_port="7200"
         port_range="30"

         thread_pool.min_threads="0"
         thread_pool.max_threads="8"
         thread_pool.keep_alive_time="5000"
    />

    <!-- Use TCPPING for inter-cluster discovery. -->
    <TCPPING timeout="3000"
             initial_hosts="127.0.0.1[7200]"
             port_range="3"
             ergonomics="false"/>

    <!-- Provide other configuration as required. -->
</config>
Copy to Clipboard Toggle word wrap

3.2. キャッシュへのバックアップの場所の追加

Data Grid がデータをそれらの場所にバックアップできるように、リモートサイトの名前を指定します。

手順

  1. backups 要素をキャッシュ定義に追加します。
  2. 各リモートサイトの名前を backup 要素で指定します。

    たとえば、LON 設定で、NYC をリモートサイトとして指定します。

  3. 各サイトが他のすべてのサイトのバックアップとなるように、前述の手順を繰り返します。たとえば、NYCLON のバックアップとして追加せずに、LONNYC のバックアップとして追加することはできません。
注記

キャッシュ設定はサイト間で異なり、異なるバックアップストラテジーを使用する場合があります。Data Grid は、キャッシュ名に基づいてデータを複製します。

LONでの "customers" の設定例

<replicated-cache name="customers">
  <backups>
    <backup site="NYC" strategy="ASYNC" />
  </backups>
</replicated-cache>
Copy to Clipboard Toggle word wrap

NYCでの "customers" の設定例

<distributed-cache name="customers">
  <backups>
    <backup site="LON" strategy="SYNC" />
  </backups>
</replicated-cache>
Copy to Clipboard Toggle word wrap

3.3. 異なる名前でのキャッシュへのバックアップ

デフォルトでは、Data Grid は同じ名前のキャッシュ間でデータを複製します。

手順

  • backup-for を使用して、リモートサイトからのデータをローカルサイトの別の名前でキャッシュに複製します。

たとえば、以下の設定は、LON の "customers" キャッシュを NYC の "eu-customers" キャッシュにバックアップします。

<distributed-cache name="eu-customers">
  <backups>
    <backup site="LON" strategy="SYNC" />
  </backups>
  <backup-for remote-cache="customers" remote-site="LON" />
</replicated-cache>
Copy to Clipboard Toggle word wrap

3.4. クロスサイトビューの確認

クロスサイトレプリケーション用に Data Grid を設定した後、Data Grid クラスターがクロスサイトビューを正常に形成することを確認する必要があります。

手順

  • ログメッセージ ISPN000439: Received new x-site view を確認してください。

たとえば、LON の Data Grid クラスターが、NYC の Data Grid クラスターを使用してクロスサイトビューを形成した場合、以下のメッセージが提供されます。

INFO  [org.infinispan.XSITE] (jgroups-5,${server.hostname}) ISPN000439: Received new x-site view: [NYC]
INFO  [org.infinispan.XSITE] (jgroups-7,${server.hostname}) ISPN000439: Received new x-site view: [NYC, LON]
Copy to Clipboard Toggle word wrap

3.5. クロスサイトレプリケーション用の Hot Rod クライアントの設定

異なるサイトで Data Grid クラスターを使用するように Hot Rod クライアントを設定します。

hotrod-client.properties

# Servers at the active site
infinispan.client.hotrod.server_list = LON_host1:11222,LON_host2:11222,LON_host3:11222

# Servers at the backup site
infinispan.client.hotrod.cluster.NYC = NYC_hostA:11222,NYC_hostB:11222,NYC_hostC:11222,NYC_hostD:11222
Copy to Clipboard Toggle word wrap

ConfigurationBuilder

ConfigurationBuilder builder = new ConfigurationBuilder();
builder.addServers("LON_host1:11222;LON_host2:11222;LON_host3:11222")
       .addCluster("NYC")
       .addClusterNodes("NYC_hostA:11222;NYC_hostB:11222;NYC_hostC:11222;NYC_hostD:11222")
Copy to Clipboard Toggle word wrap

ヒント

以下の方法を使用して、Hot Rod クライアントをデフォルトのクラスターまたは別のサイトのクラスターに切り替えます。

  • RemoteCacheManager.switchToDefaultCluster()
  • RemoteCacheManager.switchToCluster(${site.name})

第4章 クロスサイトレプリケーション操作の実行

サイトをオンラインとオフラインにします。キャッシュ状態をリモートサイトに転送します。

4.1. CLI を使用したクロスサイト操作

Data Grid コマンドラインインターフェイスを使用すると、Data Grid サーバーにリモートで接続したり、サイトを管理したり、状態遷移をバックアップの場所にプッシュしたりできます。

前提条件

  • Data Grid CLI を起動している。
  • 実行中の Data Grid クラスターに接続している。

4.1.1. バックアップ場所のオフラインおよびオンライン化

バックアップ場所を手動でオフラインにし、オンラインに戻します。

手順

  • site status コマンドを使用して、バックアップの場所がオンラインかオフラインかを確認します。

    //containers/default]> site status --cache=cacheName --site=NYC
    Copy to Clipboard Toggle word wrap
    注記

    --site はオプションの引数です。設定されていない場合、CLI はすべてのバックアップ場所を返します。

  • bring-online コマンドを使用して、バックアップの場所をオンラインにします。

    //containers/default]> site bring-online --cache=customers --site=NYC
    Copy to Clipboard Toggle word wrap
  • take-offline コマンドを使用して、バックアップの場所をオフラインにします。

    //containers/default]> site take-offline --cache=customers --site=NYC
    Copy to Clipboard Toggle word wrap

詳細と例については、help site コマンドを実行してください。

4.1.2. バックアップ場所への状態のプッシュ

キャッシュの状態をリモートのバックアップ場所に転送します。

手順

  • 次の例のように、site コマンドを使用して状態の転送をプッシュします。

    //containers/default]> site push-site-state --cache=cacheName --site=NYC
    Copy to Clipboard Toggle word wrap

詳細と例については、help site コマンドを実行してください。

4.2. REST API を使用したクロスサイト操作

Data Grid サーバーは、クロスサイト操作を実行できるようにする REST API を提供します。

4.2.1. すべてのバックアップロケーションのステータス取得

GET リクエストですべてのバックアップロケーションのステータスを取得します。

GET /v2/caches/{cacheName}/x-site/backups/
Copy to Clipboard Toggle word wrap

Data Grid は、以下の例のように、各バックアップロケーションのステータスを JSON 形式で応答します。

{
  "NYC": "online",
  "LON": "offline"
}
Copy to Clipboard Toggle word wrap
Expand
表4.1 リターンステータス
説明

online

ローカルクラスター内のすべてのノードには、バックアップの場所を含むクロスサイトビューがあります。

offline

ローカルクラスター内のノードには、バックアップの場所とのクロスサイトビューがありません。

mixed

ローカルクラスター内の一部のノードにはバックアップの場所を含むクロスサイトビューがあり、ローカルクラスター内の他のノードにはクロスサイトビューがありません。応答は、各ノードのステータスを示します。

4.2.2. 特定のバックアップ場所のステータスの取得

GET リクエストでバックアップロケーションのステータスを取得する。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}
Copy to Clipboard Toggle word wrap

Data Grid は、以下の例のように、サイト内の各ノードのステータスを JSON 形式で応答します。

{
  "NodeA":"offline",
  "NodeB":"online"
}
Copy to Clipboard Toggle word wrap
Expand
表4.2 リターンステータス
説明

online

ノードはオンラインです。

offline

ノードはオフラインです。

failed

ステータスを取得できません。リモートキャッシュがシャットダウンしているか、リクエスト中にネットワークエラーが発生した可能性があります。

4.2.3. バックアップ先をオフラインにする

GET リクエストと ?action=take-offline パラメーターを使用して、バックアップの場所をオフラインにします。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}?action=take-offline
Copy to Clipboard Toggle word wrap

4.2.4. バックアップ場所をオンラインにする

?action=bring-online パラメーターを使用してバックアップ場所をオンラインにします。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}?action=bring-online
Copy to Clipboard Toggle word wrap

4.2.5. バックアップ場所への状態のプッシュ

?action=start-push-state パラメーターを使用して、キャッシュ状態をバックアップ場所にプッシュします。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}?action=start-push-state
Copy to Clipboard Toggle word wrap

4.2.6. 状態転送のキャンセル

?action=cancel-push-state パラメーターを使用して状態転送操作をキャンセルします。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-push-state
Copy to Clipboard Toggle word wrap

4.2.7. 状態転送ステータスの取得

?action=push-state-status パラメーターを使用して状態転送操作のステータスを取得します。

GET /v2/caches/{cacheName}/x-site/backups?action=push-state-status
Copy to Clipboard Toggle word wrap

Data Grid は、以下の例のように、各バックアップ拠点の状態移行の状況を JSON 形式で応答します。

{
   "NYC":"CANCELED",
   "LON":"OK"
}
Copy to Clipboard Toggle word wrap
Expand
表4.3 リターンステータス
説明

SENDING

バックアップ場所への状態転送が進行中です。

OK

状態の転送が正常に完了しました。

ERROR

状態転送でエラーが発生しました。ログファイルを確認してください。

CANCELLING

状態移行のキャンセルが進行中です。

4.2.8. 状態転送ステータスのクリア

?action=clear-push-state-status パラメーターを使用して送信サイトの状態転送ステータスをクリアします。

GET /v2/caches/{cacheName}/x-site/local?action=clear-push-state-status
Copy to Clipboard Toggle word wrap

4.2.9. オフラインテイク条件の変更

特定の条件が満たされると、サイトはオフラインになります。オフラインにするパラメーターを変更して、バックアップロケーションが自動的にオフラインになるタイミングを制御します。

手順

  1. GET リクエストと take-offline-config パラメーターで設定されたテイクオフラインパラメーターを確認します。

    GET /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-config
    Copy to Clipboard Toggle word wrap

    Data Grid のレスポンスには、以下のように after_failuresmin_wait フィールドがあります。

    {
      "after_failures": 2,
      "min_wait": 1000
    }
    Copy to Clipboard Toggle word wrap
  2. PUT リクエストの本文のオフライン取得パラメーターを変更します。

    PUT /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-config
    Copy to Clipboard Toggle word wrap

4.2.10. 受信サイトからの状態転送のキャンセル

2 つのバックアップ場所間の接続が切断された場合、プッシュを受信しているサイトでの状態転送をキャンセルできます。

?action=cancel-receive-state パラメーターで、リモートサイトからの状態転送をキャンセルし、ローカルキャッシュの現在の状態を維持する。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-receive-state
Copy to Clipboard Toggle word wrap

4.2.11. バックアップ場所のステータスの取得

GET 要求により、キャッシュ・マネージャーからすべてのバックアップ・ロケーションのステータスを取得します。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/
Copy to Clipboard Toggle word wrap

Data Grid は、以下の例のように JSON 形式でステータスを応答します。

{
   "SFO-3":{
      "status":"online"
   },
   "NYC-2":{
      "status":"mixed",
      "online":[
         "CACHE_1"
      ],
      "offline":[
         "CACHE_2"
      ]
   }
}
Copy to Clipboard Toggle word wrap
Expand
表4.4 リターンステータス
説明

online

ローカルクラスター内のすべてのノードには、バックアップの場所を含むクロスサイトビューがあります。

offline

ローカルクラスター内のノードには、バックアップの場所とのクロスサイトビューがありません。

mixed

ローカルクラスター内の一部のノードにはバックアップの場所を含むクロスサイトビューがあり、ローカルクラスター内の他のノードにはクロスサイトビューがありません。応答は、各ノードのステータスを示します。

4.2.12. バックアップ先をオフラインにする

?action=take-offline パラメーターで、バックアップロケーションをオフラインにします。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=take-offline
Copy to Clipboard Toggle word wrap

4.2.13. バックアップ場所をオンラインにする

?action=bring-online パラメーターを使用してバックアップ場所をオンラインにします。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=bring-online
Copy to Clipboard Toggle word wrap

4.2.14. 状態転送の開始

?action=start-push-state パラメーターを使用して、すべてのキャッシュの状態をリモートサイトにプッシュします。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=start-push-state
Copy to Clipboard Toggle word wrap

4.2.15. 状態転送のキャンセル

?action=cancel-push-state パラメーターを使用して、進行中の状態転送操作をキャンセルします。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=cancel-push-state
Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る