eviden-logo

Evidian > 製品 > SafeKit:オールインワンの SANレス高可用性(HA)& アプリケーション・クラスタリング・ソフトウェア > 同期レプリケーション vs 非同期レプリケーション:データ損失とフェイルオーバーに関するガイド

同期レプリケーション vs 非同期レプリケーション:データ損失とフェイルオーバーに関するガイド

Evidian SafeKit

同期・非同期レプリケーション:アプリケーションのフェイルオーバー時にデータ損失は発生するか?

同期レプリケーションと非同期レプリケーションには大きな違いがあります。選択する方法によっては、アプリケーションのフェイルオーバー中にデータ損失が発生する可能性があります。

  • SafeKitソフトウェアで実装されている同期レプリケーションは、トランザクションアプリケーションのフェイルオーバーに不可欠です。同期レプリケーションでは、プライマリサーバーのディスクにコミットされたすべてのデータが、セカンダリサーバーのディスクにも存在することが保証されます。
  • 非同期レプリケーションには、プライマリサーバーのディスクにコミットされたデータがセカンダリサーバーにコピーされる前に障害が発生した場合、そのデータが失われるリスクがあります。
  • 準同期レプリケーションは代替ソリューションであり、コミットされたデータはセカンダリサーバーに到達しますが、必ずしもそのディスクに書き込まれているとは限りません。

同期レプリケーションと非同期レプリケーションのどちらを選択すべきか、正しい判断を支援するために、以下で技術的な仕組みとアプリケーションのフェイルオーバーへの影響を説明します。

フェイルオーバー時のデータ損失リスクを示す同期 vs 非同期レプリケーションの比較図

非同期レプリケーションの仕組み

非同期レプリケーションでは、プライマリサーバーは書き込み操作を即座に承認し、その後、遅延を伴うスケジュールされたバッチ処理によってレプリカを更新します。この切り離し(デカップリング)により、長距離レプリケーションにおけるレイテンシ(遅延)の問題を克服できるため、遠隔拠点間でのバックアップや災害復旧(DR)に適した戦略となります。

しかし、この効率性の反面、整合性という課題が生じます。セカンダリサーバーが保持する情報が最新でない可能性があるためです。プライマリ側での書き込みが確定した後にセカンダリ側の更新が行われるため、プライマリサーバーで障害が発生した場合、転送中であった未反映データ(in-flight data)は消失することになります。

同期レプリケーションの仕組み

SafeKitが実装している同期レプリケーションでは、プライマリサーバー上のアプリケーションまたはファイルシステムキャッシュによってディスクI/O操作が行われる際、二重の確認応答(ダブルアクノリッジメント)プロセスを通じてデータの整合性を保証します。

SafeKitは、ローカルディスクとセカンダリサーバーの両方からのI/O確認応答を待機してから、アプリケーションまたはファイルシステムキャッシュに最終的な確認応答を返します。この同期メカニズムは、トランザクションアプリケーションのフェイルオーバーにおいて不可欠であり、トランザクションがコミットされたと見なされる前に、両方のノードでデータが完全に保護されていることを保証します。

準同期レプリケーションの仕組み

準同期レプリケーションは、データの完全性に対するハイブリッドなアプローチとして機能します。同期レプリケーションと同様に、SafeKitはアプリケーションやファイルシステムキャッシュに対してI/O操作を確定させる前に、プライマリサーバーとセカンダリサーバーの両方からの確認応答を待機します。

決定的な違いは、セカンダリサーバーの応答タイミングにあります。準同期の場合、セカンダリサーバーはメモリ上でデータを受信した直後にプライマリサーバーへ確認応答を送信し、ディスクへの書き込みはその直後に行われます。対照的に、同期レプリケーションでは、セカンダリサーバーが物理ディスクにI/Oを書き込んでからでないと確認応答を送信しません。

最終判断:高可用性のための最適なレプリケーション選択

同期レプリケーションと非同期レプリケーションの選択は、完全なデータの整合性とネットワークパフォーマンスの間のトレードオフです。ミッションクリティカルなインフラにおいて、この決定は**目標復旧時点(RPO)**を直接左右します。

レプリケーション比較のまとめ

  • 非同期レプリケーションバックアップの標準ですが、高可用性(HA)には適していません。長距離接続をサポートしていますが、セカンダリノードのデータがプライマリノードのデータより遅れるため、本質的にデータ損失のリスクがあります。
  • 同期レプリケーション高可用性(HA)の標準ですが、バックアップ用ではありません。セカンダリノードのファイルをプライマリのリアルタイムクローンに保ち、データ損失ゼロのフェイルオーバーを保証します。
  • 準同期レプリケーション高可用性(HA)において高いパフォーマンスを実現する中間的な手法です。ディスクへの書き込み前にメモリレベルでデータを確認することで、非同期方式よりも優れたデータ保護を維持しながら、レイテンシを最小限に抑えます。

⭐ SafeKitの推奨事項: 重要なアプリケーションでは、ビジネスの継続性を保証し、パフォーマンスを最大化し、不整合なフェイルオーバーに伴うリスクを排除するために、常に同期または準同期レプリケーションを優先してください。

比較表:同期 vs 非同期 vs 準同期レプリケーション

機能・項目 同期 (Synchronous) 準同期 (Semi-Synchronous) 非同期 (Asynchronous)
RPO (潜在的なデータ損失) ゼロ ゼロ ゼロではない(最後の非同期コピーに依存して損失あり)
リモートI/O確認応答 リモートディスクへの書き込み後 リモートRAM(メモリ)への書き込み後 確認応答を待機しない
パフォーマンスへの影響 低遅延ネットワークが必要 - ラウンドトリップタイム(通常RTT<2ms)に依存 低遅延ネットワークが必要 - ラウンドトリップタイム(通常RTT<2ms)に依存 低遅延ネットワークをサポート
距離制限 ローカル / ストレッチVLAN ローカル / ストレッチVLAN 広域ネットワーク (WAN)
最適な用途 高可用性(自動フェイルオーバー) 高可用性(自動フェイルオーバー) バックアップソリューション(手動フェイルオーバー)

同期リアルタイムレプリケーションと高可用性(HA)の設定

SafeKit チュートリアル:同期リアルタイムレプリケーションとフェイルオーバー管理 (8:48)

このビデオでは、ノード間のデータ損失ゼロを保証する同期リアルタイムレプリケーションの実装方法を学びます。SafeKitは、データの同期と仮想IPを自動的に管理することで高可用性(HA)を簡素化し、フェイルオーバー時にアプリケーションサービスが即座に切り替わることを保証します。

ビデオのハイライト

  1. アーキテクチャの概要:SQL Server を使用した2ノード構成 (0:32)
  2. クラスタと mirror.safe モジュールの設定 (3:58)
  3. リアルタイム同期レプリケーション、マイグレーション、およびクラッシュ時のフェイルオーバーのテスト (4:17)

FAQ:高可用性クラスタにおけるレプリケーション戦略

レプリケーションの技術と仕組み

SafeKitはファイルが更新されるたびに、ファイル全体をネットワーク経由で送信しますか?

いいえ。 SafeKitはバイトレベルのレプリケーションを利用します。ファイル内の特定のI/O変更をインターセプトし、変更されたバイトのみを複製するため、ネットワークトラフィックを最小限に抑えることができます。

レプリケーションは、アプリケーションがファイルに書き込むたびに実行されますか?

いいえ。 レプリケーションは、アプリケーションがローカルディスクへのI/Oコミットを要求したときにのみ発生します。SafeKitは、書き込みを完了する前に、セカンダリサーバーによってこのデータが受信確認(アクノリッジ)されることを保証します。

同期レプリケーションによってアプリケーションの速度は低下しますか?

レイテンシはネットワークのラウンドトリップタイム(RTT)に左右されます。LAN環境では、影響はごくわずかです(NASやSANストレージと同様)。レイテンシの高いWAN環境では、パフォーマンスのボトルネックを避けるために非同期モードが好まれることが一般的です。

導入戦略:高可用性(HA)vs バックアップ

同期と非同期、どちらのレプリケーションを選択すべきですか?

高可用性(自動フェイルオーバー、データ損失ゼロ)が必要な場合は、同期方式を選択してください。距離が離れていてリアルタイム同期が困難な場合や、自動フェイルオーバーを必要としないバックアップ/災害復旧(DR)の場合は、非同期方式を選択します。

SafeKitは非同期レプリケーションをサポートしていますか?

いいえ。 SafeKitは、自動フェイルオーバーのためにデータ損失ゼロを必要とする高可用性(HA)ソリューションです。純粋な非同期ニーズについては、バックアップソリューションを検討してください。

高可用性があれば、バックアップソリューションは不要になりますか?

いいえ。高可用性ソリューションを導入しても、包括的なバックアップソリューションは依然として必要です。

SafeKitのようなリアルタイムレプリケーションは継続的なビジネス継続性を提供しますが、バックアップとは目的が異なります。リアルタイムレプリケーションはハードウェア障害やサーバーのダウンタイムから保護するように設計されていますが、両方のノードを同時に暗号化するランサムウェアなどのサイバー脅威から保護することはできません。保持ポリシー(リテンションポリシー)を備えたバックアップソリューションのみが、この問題を解決できます。

同期レプリケーションと非同期レプリケーションを組み合わせることはできますか?

3ノードのハイブリッド構成が可能です。HA用に同期レプリケーションを使用したローカルの2ノードクラスタを構築し、災害復旧(DR)用にバックアップソリューションの非同期レプリケーションを使用して、遠隔地に3つ目のコピーを作成します。
詳細情報はこちら: SafeKit の高可用性と災害復旧 (HADR)

🔍 SafeKit 高可用性ナビゲーションハブ

SafeKit の探索:機能、技術ビデオ、ドキュメント、無料トライアル
リソースタイプ 説明 ダイレクトリンク
主な機能 シンプルでコスト効率の高い高可用性に SafeKit が選ばれる理由 SafeKit が選ばれる理由を見る
導入モデル オールインワンの SANレス HA:共有ディスク不要のソフトウェアクラスタリング SafeKit オールインワン SANレス HA を見る
パートナー SafeKit:パートナー向け高可用性ソリューションのベンチマーク パートナーにとっての HA ベンチマークである理由を見る
HA 戦略 SafeKit:インフラ(VM)レベル vs. アプリケーションレベルの高可用性 SafeKit HA と冗長性:VM vs. アプリレベルを見る
技術仕様 SafeKit クラスタリングの技術的制限事項 SafeKit 高可用性の制限事項を見る
概念実証(PoC) SafeKit:高可用性構成とフェイルオーバーのデモ SafeKit フェイルオーバーチュートリアルを見る
アーキテクチャ SafeKit ミラークラスターの仕組み(リアルタイムレプリケーションとフェイルオーバー) SafeKit ミラークラスター:リアルタイム複製とフェイルオーバーを見る
アーキテクチャ SafeKit ファームクラスターの仕組み(ネットワーク負荷分散とフェイルオーバー) SafeKit ファームクラスター:負荷分散とフェイルオーバーを見る
競争優位性 比較:SafeKit vs. 伝統的な高可用性(HA)クラスター SafeKit と伝統的 HA クラスターの比較を見る
技術リソース SafeKit 高可用性:ドキュメント、ダウンロード、トライアル SafeKit HA 無料トライアルと技術ドキュメントを見る
構成済みソリューション SafeKit アプリケーションモジュールライブラリ:すぐに使える HA ソリューション SafeKit 高可用性アプリケーションモジュールを見る