記憶域レプリカの概要

適用先:Windows Server 2019、Windows Server 2016、Windows Server (半期チャネル)

記憶域レプリカは Windows Server のテクノロジであり、サーバーまたはクラスター間で障害復旧用にボリュームのレプリケーションを実現します。 また、すべてのノードを同期させたまま、2 つのサイトにまたがるストレッチ フェールオーバー クラスターを作成することもできます。

記憶域レプリカでは、以下の同期および非同期レプリケーションをサポートしています。

  • 同期レプリケーション は、クラッシュ前後の整合性が維持されるボリュームを使用して待機時間の短いネットワーク サイト内のデータをミラーリングし、障害時のファイル システム レベルでのデータ損失をゼロにします。
  • 非同期レプリケーション では、大規模なサイト間のデータが、待機時間の長いネットワークリンクを介してミラーリングされますが、障害発生時に両方のサイトのデータのコピーが同一であることは保証されません。

記憶域レプリカを使用する理由

記憶域レプリカは、Windows Server のディザスターリカバリーおよび準備機能を提供します。 Windows Server は、さまざまなラック、フロア、建物、キャンパス、郡、都市のデータを同期的に保護することにより、データ損失なしの安心感をもたらします。 障害が発生した後、すべてのデータは他の場所に存在し、損失の可能性はありません。 同じことが障害の発生 にも該当します。記憶域レプリカによって、直前に警告があった場合、災害が発生する前にワークロードを切り替えて安全な場所に移動 できます。この場合もデータの損失は発生しません。

記憶域レプリカにより、複数のデータ センターをより効率的に使用できます。 クラスターを拡大またはレプリケートすると、ワークロードを複数のデータセンターで実行できるようになり、ローカルで近接するユーザーやアプリケーションによるすばやいデータアクセス、負荷分散の向上、コンピューティング リソースの活用が実現します。 障害によって1 つのデータセンターがオフラインになった場合、このデータセンターの一般的なワークロードを一時的に別の別のサイトに移動できます。

記憶域レプリカを使用することで、ローエンドの障害復旧ソリューションとしての役割を強いられていた、DFS レプリケーションなどの既存のファイル レプリケーション システムの使用を中止できる場合があります。 DFS レプリケーションは極端に狭い帯域幅のネットワークでも問題なく機能しますが、待機時間は非常に長く、数時間から数日単位の時間がかかることも少なくありません。 これは、ファイルを閉じるための要件や、ネットワークの輻輳を回避するための人為的なスロットルに起因します。 このような設計上の特性により、DFS レプリケーション レプリカの最新のファイルは最もレプリケートされる可能性が低くなります。 記憶域レプリカはファイル レベルの下で動作し、これらの制限はありません。

記憶域レプリカは、より長い時間範囲と待機時間の長いネットワークの非同期レプリケーションもサポートします。 チェックポイントベースではなく、継続的にレプリケートされるため、変更のデルタはスナップショットベースの製品よりもはるかに低くなります。 さらに、記憶域レプリカはパーティション レイヤーで動作するため、Windows Server またはバックアップ ソフトウェアによって作成されたすべての VSS スナップショットをレプリケートします。これにより、特に非同期にレプリケートされた非構造化ユーザー データの特定の時点での復旧で、アプリケーションの整合性が維持されるデータのスナップショットを使用できます。

サポートされている構成

記憶域レプリカは、ストレッチクラスター、クラスター間の構成、およびサーバーとサーバー間の構成 (図1-3 を参照) にデプロイできます。

拡張クラスター によって、単一のクラスターでコンピュータと記憶域を構成できます。いくつかのノードによって一連の非同期記憶域が、他のいくつかのノードによって別の非同期記憶域が共有され、その後サイト認識によって同期的または非同期的にレプリケートされます。 このシナリオでは、共有 SAS 記憶域を使用した記憶域スペース、SAN、iSCSI 接続の LUN を利用できます。 このシナリオは PowerShell とフェールオーバー クラスター マネージャーのグラフィカルなツールで管理され、ワークロードの自動フェールオーバーを行うことができます。

記憶域レプリカを使用し、ニューヨークにある 2 つのクラスター ノードの記憶域をニュージャージーにある 2 つのノードでレプリケートしていることを示す図

図 1: 記憶域レプリカを使用した、ストレッチ クラスターでの記憶域のレプリケーション

クラスター間 では 2 つの個別クラスター間でレプリケーションが行われ、一方のクラスターが同期または非同期で、もう一方のクラスターとレプリケートします。 このシナリオでは、記憶域スペース ダイレクト、共有 SAS 記憶域を使用した記憶域スペース、SAN、iSCSI 接続の LUN を利用できます。 Windows 管理センターと PowerShell を使用して管理され、フェールオーバーについては手動による操作が必要です。

記憶域レプリカを使用し、ロサンゼルスにあるクラスターの記憶域をラスベガスにある別のクラスターでレプリケートしていることを示す図

図 2: 記憶域レプリカを使用した、クラスター間の記憶域レプリケーション

サーバー間 では、共有 SAS 記憶域を使用した記憶域スペース、SAN、iSCSI 接続の LUN、ローカル ドライブを利用し、2 つのスタンドアロン サーバー間で同期および非同期のレプリケーションを行うことができます。 Windows 管理センターと PowerShell を使用して管理され、フェールオーバーについては手動による操作が必要です。

施設 5 のサーバーを施設 9 のサーバーでレプリケートしていることを示す図

図 3: 記憶域レプリカを使用した、サーバー間の記憶域レプリケーション

注意

4 つの個別のボリュームを 1 台のコンピューターで使用して、サーバー内レプリケーションを構成することもできます。 ただし、このガイドでは、このシナリオは扱いません。

記憶域レプリカの機能

  • データ損失ゼロ、ブロック レベルのレプリケーション。 同期レプリケーションでは、データ損失の可能性はありません。 ブロック レベルのレプリケーションでは、ファイルのロックが発生する可能性はありません。

  • シンプルなデプロイと管理。 記憶域レプリカの設計には、必須条件として使いやすさがあります。 2つのサーバー間でレプリケーションパートナーシップを作成すると、Windows 管理センターを利用できます。 ストレッチ クラスターのデプロイには、使いやすいフェイルオーバー クラスター マネージャー ツールの直感的なウィザードが使用されます。

  • ゲストとホスト。 記憶域レプリカのすべての機能は、仮想化されたゲスト ベースのデプロイとホスト ベースのデプロイの両方で公開されます。 つまり、ゲストは、windows 以外の仮想化プラットフォームまたはパブリッククラウドで実行されている場合でも、ゲストで Windows Server を使用している限り、データボリュームをレプリケートできます。

  • SMB3 ベース。 記憶域レプリカは、Windows Server 2012 で初めてリリースされた SMB 3 の実績のある成熟したテクノロジを使用します。 つまり、マルチ チャネル、RoCE での SMB ダイレクトのサポート、iWARP、InfiniBand RDMA のネットワーク カードなど、すべての SMB の高度な特性は、記憶域レプリカで使用されます。

  • セキュリティ。 多くのベンダーの製品とは異なり、記憶域レプリカには、業界最先端のセキュリティ テクノロジが組み込まれています。 これには、パケットの署名、AES 128-GCM の完全なデータ暗号化、Intel AES NI 暗号化アクセラレーションのサポート、および "man-in-the-middle"攻撃の防止の事前認証の整合性が含まれます。 記憶域レプリカは、ノード間のすべての認証に Kerberos AES256 を使用します。

  • 高パフォーマンスの初期同期。記憶域レプリカでは、古いコピー、バックアップ、または出荷済みのドライブからのデータのサブセットが既にターゲットに存在する、シードされた初期同期がサポートされます。 初期レプリケーションでは、異なるブロックのみがコピーされるため、初期同期時間が短縮され、データが制限された帯域幅を使用するのを防ぐことができます。 記憶域レプリカはチェックサムの計算をブロックし、集計は、初期同期のパフォーマンスが記憶域とネットワークの速度によってのみ制限されることを意味します。

  • 整合性グループ。 書き込み順序を使用すると、Microsoft SQL Server などのアプリケーションが複数のレプリケートされたボリュームに書き込むことができ、データが移行先サーバーに順番に書き込まれていることがわかります。

  • ユーザー委任。 レプリケートされたノードで、組み込みの管理者グループのメンバーにならずにレプリケーションを管理する権限をユーザーに委任できるため、関係のない領域へのこれらのユーザーのアクセスは制限されます。

  • ネットワークの制約。 記憶域レプリカは、アプリケーション、バックアップ、および管理ソフトウェアの帯域幅を提供するため、サーバー別およびレプリケートされたボリューム別に、個々 のネットワークに制限することができます。

  • 仮想 プロビジョニング。 記憶域スペースと SAN デバイスでの仮想プロビジョニングは、多くの状況において、ほぼ瞬時の初期レプリケーションを提供するためにサポートされます。

記憶域レプリカには、次の機能が含まれています。

機能 詳細
Type ホスト ベース
Synchronous Yes
非同期 Yes
記憶域ハードウェア非依存 Yes
レプリケーション単位 ボリューム (パーティション)
Windows Server ストレッチクラスターの作成 Yes
サーバー間のレプリケーション Yes
クラスター間のレプリケーション はい
トランスポート SMB3
ネットワーク TCP/IP または RDMA
ネットワークの制約のサポート Yes
RDMA* iWARP、InfiniBand、RoCE v2
レプリケーションのネットワーク ポートのファイアウォール要件 単一の IANA ポート (TCP 445 または 5445)
マルチパス/マルチ チャネル はい (SMB3)
Kerberos のサポート はい (SMB3)
ネットワーク経由の暗号化および署名 はい (SMB3)
ボリュームごとのフェールオーバーの許可 Yes
仮想プロビジョニングされた記憶域のサポート Yes
管理 UI インボックス PowerShell、フェールオーバー クラスター マネージャー

*追加の長距離機器とケーブルが必要になる場合があります。

記憶域レプリカの前提条件

  • Active Directory ドメイン サービス フォレスト。

  • SAS JBOD を使用した記憶域スペース、記憶域スペース ダイレクト、ファイバー チャネル SAN、共有 VHDX、iSCSI ターゲット、またはローカル SAS/SCSI/SATA 記憶域。 SSD 以上の速度 (推奨) のレプリケーションのログ ドライブ。 ログ ストレージには、データ ストレージよりも大きな速度を確保することをお勧めします。 ログ ボリュームは、絶対に他のワークロードに使用しないでください。

  • 同期レプリケーションのために各サーバーで少なくとも 1 つのイーサネット/TCP 接続 (可能であれば RDMA)。

  • サーバーごとに 2 GB 以上の RAM と 2 つのコア。

  • 書き込みの IO ワークロードに十分対応できる帯域幅を持ちラウンド トリップ遅延時間が平均 5 ミリ秒以下である、同期レプリケーション用のサーバー間ネットワーク。 非同期レプリケーションには、遅延時間に関する推奨事項はありません。

  • Windows Server、Datacenter Edition、または Windows Server Standard Edition。 Windows Server (Standard Edition) で実行されている記憶域レプリカには、次の制限があります。

    • Windows Server 2019 以降を使用する必要があります
    • 記憶域レプリカは、無制限の数のボリュームではなく、1 つのボリュームをレプリケートします。
    • ボリュームには、無制限のサイズではなく、最大 2 TB のサイズを設定できます。

背景

このセクションには、基本的な業界用語、同期および非同期レプリケーション、主な動作についての情報が記載されています。

業界の用語の高レベル

障害復旧 (DR) は、ビジネスが運用を継続できるように、サイトの壊滅状態から回復するための代替計画を参照します。 データの DR とは、個別の物理的な場所での実稼働データの複数コピーを意味します。 たとえば、ストレッチ クラスターの場合、ノードの半数が 1 つのサイト、残りの半数が別のノードにあります。 障害対策 (DP) は、ハリケーンなどの災害が近づく前に、先制的にワークロードを別の場所に移動するための代替計画を参照します。

サービス レベル アグリーメント (SLA) は、計画済みおよび計画外の停止の際の、ビジネス アプリケーションの可用性、およびそのダウン時間とデータ損失の許容範囲を定義します。 回復時刻の目標 (RTO) は、ビジネスが完全にデータにアクセスできない時間をどの程度許容できるかを定義します。 回復ポイントの目標 (RPO) は、ビジネスのデータ損失をどの程度許容できるかを定義します。

同期レプリケーション

同期レプリケーションは、アプリケーションが、IO の完了前に一度に 2 つの場所にデータを書き出すことを保証します。 このレプリケーションは、ネットワークと記憶域リソースへの投資が必要であり、アプリケーションのパフォーマンス低下のリスクがあるため、ミッション クリティカルなデータにより適しています。

アプリケーションの書き込みがソース データのコピーで発生した場合、元の記憶域は IO をすぐには認識しません。 代わりに、それらのデータ変更はリモート宛先のコピーにレプリケートされ、確認を返します。 その後にのみ、アプリケーションは IO 確認を受信します。 これにより、ソース サイトとリモート サイトの同期が定期的に行われ、実質的にネットワーク全体のストレージ IO が拡張されます。 ソース サイトの障害が発生した場合、アプリケーションはリモート サイトにフェール オーバーして、データ損失なしで操作を再開できます。

モード ダイアグラム 手順
Synchronous

データの損失なし

RPO

同期レプリケーションにおいて記憶域レプリカがデータを書き込む方法を示している図 1.アプリケーションがデータを書き込みます
2.ログ データが書き込まれ、データがリモート サイトにレプリケートされます
3.リモート サイトにログ データが書き込まれます
4.リモート サイトから確認が返されます
5.アプリケーションの書き込みが確認されます

t & t1 :データはボリュームにフラッシュされ、ログは常にライトスルーされます

非同期レプリケーション

同期レプリケーションとは反対に、非同期レプリケーションは、アプリケーションがデータを書き込むと、データは即時の確認保証なしでリモート サイトにレプリケートされることを意味します。 このモードでは、アプリケーションおよび地理的に機能する DR ソリューションに対する応答時間が短縮されます。

アプリケーションがデータを書き込むと、レプリケーションエンジンが書き込みをキャプチャして、ただちにアプリケーションに対して確認します。 キャプチャしたデータは、リモートの場所にレプリケートされます。 リモート ノードがデータのコピーを処理し、後からソースに確認を送信します。 レプリケーションのパフォーマンスがアプリケーションの IO パス内ではなくなったため、リモート サイトの応答性と距離の重要度は低くなります。 ソース データが失われ、レプリケーション先のデータのコピーがソースを離れずバッファー内にあった場合は、データ損失のリスクがあります。

RPO が 0 より大きな場合、非同期レプリケーションは冗長性があってデータ損失のない継続的な操作向けに設計されているため、、フェールオーバー クラスターのような高可用性ソリューションには適していません。

モード ダイアグラム 手順
非同期

データ損失はほぼなし

(複数の要因によって異なります)

RPO

非同期レプリケーションにおいて記憶域レプリカがデータを書き込む方法を示している図 1.アプリケーションがデータを書き込みます
2.ログ データが書き込まれます
3.アプリケーションの書き込みが確認されます
4.リモート サイトにデータがレプリケートされます
5.リモート サイトにログ データが書き込まれます
6.リモート サイトから確認が返されます

t & t1 :データはボリュームにフラッシュされ、ログは常にライトスルーされます

主要な評価ポイントと動作

  • 最も高速な記憶域のネットワーク帯域幅と待機時間。 同期レプリケーションに関する物理的な制限があります。 記憶域レプリカはログを使用した IO のフィルタリング メカニズムを実装しており、ネットワークのラウンド トリップが必要であるため、同期レプリケーションによってアプリケーションの書き込み時間が長くなる可能性があります。 ログに低待機時間、高帯域幅ネットワーク、および高スループットのディスク サブシステムを使用することで、パフォーマンスのオーバーヘッドを最小限に抑えることができます。

  • Windows Server 2016 でレプリケート中に、レプリケーション先のボリュームにアクセスすることはできません。 レプリケーションを構成すると、レプリケーション先のボリュームがマウント解除され、ユーザーによる読み取りまたは書き込みへのアクセスができなくなります。 そのドライブ文字は、エクスプローラーなどの一般的なインターフェイスに表示されますが、アプリケーションがボリューム自体にアクセスすることはできません。 ブロック レベルのレプリケーション テクノロジは、ボリュームにマウントされているレプリケーション先のファイル システムへのアクセス許可と互換性がありません。NTFS および ReFS では、ユーザーによるボリュームへのデータの書き込みはサポートされませんが、ブロックがその下で変更されます。

Test-Failover コマンドレット は、Windows Server バージョン 1709 で使用され、Windows Server 2019 にも含まれていました。 これにより、バックアップやテストなどの目的で、コピー先ボリュームの読み取り/書き込みスナップショットの一時的なマウントがサポートされます。詳細 https://aka.ms/srfaq については、以下を参照してください。

  • マイクロソフトの非同期レプリケーション実装は、その他の実装と大きく異なります。 業界の非同期レプリケーションの実装のほとんどは、定期的なな差分転送が他のノードに移動して結合する、スナップショット ベースのレプリケーションを使用します。 記憶域レプリカの非同期レプリケーションは、レプリケーション先からのシリアル化された同期確認が不要な点を除いて、同期レプリケーションと同じように動作します。 記憶域レプリカは継続的にレプリケートするため、これは理論上の RPO が低いことを意味します。 ただし、これはスナップショットを使用してアプリケーション ファイル内の一貫性を強制するのではなく、内部のアプリケーション一貫性の保証に依存しているということも意味します。 記憶域レプリカでは、すべてのレプリケーション モードでのクラッシュ整合が保証されます。

  • 実用的ではない場合が頻繁にあるにもかかわらず、多くのお客様が DFS レプリケーションを障害復旧ソリューションとして利用しています。DFS レプリケーションは開いているファイルをレプリケートすることができず、パフォーマンスを犠牲にして帯域幅の使用量を最小限に抑えるように設計されているため、結果的に回復ポイントでの差分が大きくなります。 記憶域レプリカを利用することで、このような障害復旧の役割の一部から DFS レプリケーションを解放することができます。

  • 記憶域レプリカはバックアップ ソリューションではありません。 一部の IT 環境では、毎日のバックアップと比較して、データ損失ゼロのオプションがあるため、レプリケーション システムをバックアップ ソリューションとしてデプロイしています。 記憶域レプリカでは、ボリューム上の全データ ブロックに対するすべての変更が、変更の種類とは無関係にレプリケートされます。 ユーザーがボリュームからすべてのデータを削除すると、記憶域レプリカは削除を即座に他のボリュームにレプリケートし、両方のサーバーからデータを取り消し可能に削除します。 記憶域レプリカを、特定の時点でのバックアップ ソリューションの代わりに使用しないでください。

  • 記憶域レプリカは、Hyper-V レプリカまたは Microsoft SQL AlwaysOn 可用性グループではありません。 記憶域レプリカは、一般的な用途の、ストレージに依存しないエンジンです。 定義では、記憶域レプリカの動作をアプリケーションレベルのレプリケーションのように理想的になるように調整することはできません。 これによって、ユーザーが特定のアプリケーションのレプリケーション テクノロジをデプロイしたり、このテクノロジを使用し続けたりしやすくする、特定の機能ギャップが生じる可能性があります。

注意

このドキュメントには、既知の問題と想定される動作の一覧のほか、よく寄せられる質問セクションが含まれています。

記憶域レプリカの用語

このガイドでは、次の用語を頻繁に使用します。

  • ソースは、ローカルの書き込みが可能で、送信をレプリケートするコンピューターのボリュームです。 "プライマリ" とも呼ばれます。

  • 宛先は、ローカルの書き込みができず、受信をレプリケートするコンピューターのボリュームです。 "セカンダリ" とも呼ばれます。

  • レプリケーション パートナーシップは、1 つまたは複数のボリュームのソースとレプリケーション先コンピューター間の同期リレーションシップであり、単一のログを使用します。

  • レプリケーション グループは、パートナーシップ内の、サーバー ベースのボリュームの組織とボリュームのレプリケーション構成です。 グループには、1 つまたは複数のボリュームが含まれることがあります。

記憶域レプリカの新機能

Windows Server 2019 の記憶域レプリカの新機能の一覧については、「ストレージの新機能」を参照してください

その他のリファレンス