すべてのプロダクト
Search
ドキュメントセンター

Tair (Redis® OSS-Compatible):ディザスタリカバリソリューション

最終更新日:Aug 05, 2026

パフォーマンス専有型のキーバリューデータベースとして、Tair (Redis OSS-compatible) は、ビジネスの重要なデータを大量に保存することがよくあります。データのセキュリティを確保するため、Tair (Redis OSS-compatible) はさまざまなディザスタリカバリソリューションを提供しています。

ディザスタリカバリアーキテクチャの変遷

ディザスタリカバリメカニズムは、ハードウェアの故障やデータセンターの停電などの予期せぬイベントによりインスタンスに障害が発生した場合でも、データ整合性とサービス可用性を確保します。

図 1. ディザスタリカバリアーキテクチャの変遷

ディザスタリカバリソリューション

保護レベル

説明

シングルゾーン HA ソリューション

★★★☆☆

マスターノードとレプリカノードは、同一ゾーン内の異なるマシンにデプロイされます。ノードに障害が発生した場合、高可用性 (HA) システムが自動的にフェールオーバーを実行し、単一障害点 (SPOF) によるサービス中断を防ぎます。

ゾーンディザスタリカバリ (マルチゾーン) ソリューション

★★★★☆

マスターノードとレプリカノードは、同一リージョン内の 2 つの異なるゾーンにデプロイされます。停電やネットワーク障害などの要因でゾーンが利用できなくなった場合、HA システムがフェールオーバーを実行し、インスタンスの可用性を確保します。

クロスリージョンディザスタリカバリソリューション

★★★★★

Redis グローバル分散キャッシュインスタンスは、複数のサブインスタンスで構成され、専用回線を通じてリアルタイムでデータを同期します。チャネルマネージャーはサブインスタンスの状態を監視し、フェールオーバーなどの例外を処理します。このソリューションは、ジオディザスタリカバリ、アクティブ地理的冗長性、ユーザーを最寄りのアプリケーションアクセスポイントにルーティングする、負荷分散などのシナリオに最適です。

シングルゾーン HA ソリューション

すべてのインスタンスアーキテクチャ は、シングルゾーン HA アーキテクチャをサポートしています。HA システムはマスターノードとレプリカノードの状態を監視し、自動的にフェールオーバーを実行して SPOF によるサービス中断を防ぎます。

デプロイメントアーキテクチャ

説明

標準アーキテクチャ (デュアルレプリカ)

図 2. 標準デュアルレプリカインスタンスの HA アーキテクチャ

標準アーキテクチャのインスタンスは、2 ノードのマスター・レプリカ構成を使用します。HA システムがマスターノードの障害を検出すると、自動的にフェールオーバーを開始し、レプリカノードを新しいマスターノードに昇格させます。元のマスターノードが回復すると、新しいレプリカノードとして再接続されます。

クラスタアーキテクチャ (マルチレプリカ)

図 3. マルチレプリカクラスターインスタンスの HA アーキテクチャ

マルチレプリカクラスターアーキテクチャでは、データはデータシャードに保存されます。各データシャードは、高可用性を確保するために、異なるマシンにノードがデプロイされたマルチレプリカ構成になっています。マスターノードに障害が発生した場合、システムは自動的にフェールオーバーを実行してサービスの可用性を維持します。

読み書き分離アーキテクチャ

図 4. 読み書き分離インスタンスの HA アーキテクチャ

  • システムは各ノードの状態を自動的に監視します。異常が検出されると、フェールオーバーを開始するか、読み取り専用レプリカを再構築し、対応するルーティングと重み情報を更新します。

  • プロキシは読み取り専用レプリカのステータスを継続的にプローブします。プロキシは、以下の条件でトラフィック制御アクションを実行します:

    • 読み取り専用レプリカが異常な状態にある場合:プロキシはノードのサービスウェイトを減らします。複数の接続試行が失敗した場合、プロキシは問題が解決されてノードが再度有効になるまで、そのノードへのトラフィックのルーティングを停止します。

    • 読み取り専用レプリカが完全なデータ同期を実行中の場合:プロキシは、完全なデータ同期が完了するまで、一時的にそのノードへのトラフィックのルーティングを停止します。

説明

シングルゾーン HA ソリューションは、マシンレベルの障害回復のみを提供し、ゾーンレベルの障害には耐えられません。インスタンスが存在するゾーンで全体的な障害 (停電やネットワーク障害など) が発生した場合、インスタンスは利用できなくなります。ゾーンが回復するのを待つか、履歴バックアップから別のゾーンに新しいインスタンスを作成する必要があります。ビジネスで高いデータ信頼性や継続的な可用性が求められる場合は、マルチゾーンディザスタリカバリソリューションまたはクロスリージョンディザスタリカバリソリューションを選択することを推奨します。

マルチゾーンディザスタリカバリ

Tair (Redis OSS-compatible) は、複数のゾーンにまたがるゾーンディザスタリカバリアーキテクチャを提供します。サービスが単一リージョンにデプロイされており、高レベルのディザスタリカバリが必要な場合は、インスタンス作成時にマルチゾーンオプションを選択できます。手順については、「インスタンスの作成」をご参照ください。

図 5. ゾーンディザスタリカバリインスタンスの作成创建同城容灾实例

インスタンスが作成されると、プライマリインスタンスと同じ仕様のレプリカインスタンスがセカンダリゾーンに作成されます。データは、専用のレプリケーションチャネルを介してプライマリゾーンとセカンダリゾーン間で同期されます。

プライマリゾーンで停電やネットワーク障害が発生した場合、システムはレプリカインスタンスをマスターインスタンスに昇格させ、Config Server API を呼び出してプロキシのルーティング情報を更新します。さらに、Tair (Redis OSS-compatible) は Redis の同期メカニズムを最適化します。MySQL の GTID 機能と同様に、Tair はグローバル Opid を使用して同期ポイントを管理します。ロックフリーのバックグラウンドスレッドが Opid のルックアップを実行し、AOF binlog はレート制限付きで非同期に送信されるため、Redis サービスのパフォーマンスが保証されます。

図 6. ゾーンディザスタリカバリインスタンスのデータ同期プロセス

クロスリージョンディザスタリカバリ

ビジネスがグローバルに拡大すると、クロスリージョンアクセスアーキテクチャは高レイテンシやユーザーエクスペリエンスの低下を招く可能性があります。 Tair のグローバル分散キャッシュ機能は、このようなクロスリージョンでのレイテンシを低減します。この機能には、以下の利点があります。

  • 同期用のサブインスタンスを直接作成または指定できます。これにより、複雑なアプリケーションレベルの冗長設計が不要になり、開発が大幅に簡素化され、コアビジネスロジックに集中できます。

  • ジオディザスタリカバリとアクティブ地理的冗長性を迅速に実装できます。

この機能は、マルチメディア、ゲーム、 E コマースなどの業界におけるクロスリージョンデータ同期およびグローバルデプロイメントに適しています。詳細については、「グローバル分散キャッシュ」をご参照ください。

図 7. Tair グローバル分散キャッシュのアーキテクチャ全球多活架构

障害への対応

ハードウェアの故障、データセンターの停電、自然災害などの障害は、マスターノードの障害またはゾーンレベルの障害に分類されます。まれではありますが、障害によって一時的にデータの書き込みができなくなったり、一時的な接続の問題が発生したり、ダウンタイムやデータ損失につながる可能性もあります。インスタンスの信頼性は、そのアーキテクチャと密接に関連しています。一般的に、クラスターアーキテクチャはより高い信頼性を提供します。障害の影響を最小限に抑えるため、マルチレプリカおよびマルチゾーンでデプロイされたインスタンスは自動的にフェールオーバーを実行します。これにより、ダウンタイムが大幅に削減されます。次のセクションでは、異なるディザスタリカバリソリューションを持つインスタンスが障害にどのように対応するかを説明します。

ノード障害への対応

マスターノードに障害が発生した場合:

  • インスタンスが単一ゾーンに複数のレプリカ (例:マスターノードとレプリカノード) を持つ場合:システムは、レプリケーション遅延が最も少ないレプリカノードを新しいマスターノードに昇格させ、ルーティング情報を更新します。

  • インスタンスが複数のゾーンにまたがってデプロイされている場合:システムは別のゾーンのレプリカノードを新しいマスターノードに昇格させ、ルーティング情報を更新します。ただし、これにより、ご利用のインスタンスと他のサービスとの間でクロスゾーンアクセスが発生する可能性があります。

    説明

    マルチゾーンクラスターアーキテクチャでは、プライマリゾーンとセカンダリゾーンの両方にレプリカノードが存在する場合、フェールオーバーは優先的にプライマリゾーンのレプリカノードを昇格させます。これにより、アプリケーションのクロスゾーンアクセスを回避します。

説明

フェールオーバーはサービスの復旧を優先します。マスターノードに障害が発生すると、システムはレプリケーション遅延が最も小さいレプリカノードを新しいマスターノードに昇格させます。フェールオーバー中にレプリカノードに同期されなかった書き込みは失われる可能性があり、失われるデータ量はフェールオーバー時のマスター・レプリカ間のレプリケーション遅延に依存します。レプリカノードが利用できない間にマスターノードが再び障害を起こした場合、そのシナリオは自動ディザスタリカバリ能力を超え、エンジニアによる手動での回復が必要になります。

ゾーンレベルの障害への対応

停電や火災など、データセンター全体が利用できなくなるゾーンレベルの障害が発生した場合:

  • インスタンスが単一ゾーンにデプロイされている場合:インスタンスは利用できなくなります。ゾーンが回復するのを待つ必要があります。この間、履歴バックアップデータを使用して別のゾーンに新しいインスタンスを作成できます。

  • インスタンスが複数のゾーンにまたがってデプロイされている場合:システムは自動フェールオーバーをトリガーします。

重要
  • 最大限の信頼性を得るには、複数のゾーンにデプロイし、各ゾーンに複数のレプリカを作成することで、ダウンタイムを大幅に最小化できます。ただし、障害の確率、データの重要性、および関連コストのバランスを取る必要があります。

  • 上記の原則は、Redis グローバル分散キャッシュのサブインスタンスにも適用されます。単一のサブインスタンスの障害は、他のサブインスタンスの可用性には影響しません。単一のサブインスタンスの障害によるデータ書き込みの失敗を防ぐため、サブインスタンスを複数のゾーンにまたがってデプロイすることを推奨します。

リージョンレベルの障害への対応

自動バックアップデータは、インスタンスと同じリージョンに保存されます。リージョンレベルの災害が発生した場合、バックアップデータも利用できなくなります。クロスリージョンディザスタリカバリを実装するには、Tair (Redis OSS-compatible) Redis グローバル分散キャッシュインスタンスを設定するか、Data Transmission Service (DTS) を使用してリージョン間でデータを同期します。Redis グローバル分散キャッシュの詳細については、「Redis グローバル分散キャッシュ」をご参照ください。

関連ドキュメント

ノード数をカスタマイズしてクロスゾーンフェールオーバーを回避する