Microsoftストレッチクラスタを使用したSnapMirror Active Sync
このホワイトペーパーでは、Microsoftストレッチフェイルオーバークラスタ間のSnapMirrorアクティブ同期テクノロジの同期双方向レプリケーションについて説明します。これにより、MSSQLやOracleなどのマルチサイトアプリケーションデータに両方のサイトでアクティブにアクセスし、同期することができます。
はじめに
ONTAP 9 .15.1以降では、SnapMirrorアクティブ同期で対称アクティブ/アクティブ構成がサポートされ、双方向同期レプリケーションにより、保護されたLUNの両方のコピーからの読み取りおよび書き込みI/O処理が可能になります。Windowsストレッチクラスタは、複数の地理的な場所にまたがるWindowsフェイルオーバークラスタ機能の拡張機能であり、高可用性とディザスタリカバリを実現します。SnapMirrorアクティブ同期対称アクティブ/アクティブおよびクラスタ化されたアプリケーション(Windowsフェイルオーバークラスタリングなど)を使用すると、Microsoft Hyper-Vのビジネスクリティカルなアプリケーションの継続的可用性を実現し、予期しないインシデントの発生時にRTOとRPOをゼロにすることができます。このソリューションには次の利点があります。
-
データ損失ゼロ:データを同期的にレプリケートし、目標復旧時点(RPO)ゼロを達成します。
-
高可用性とロードバランシング:両方のサイトで要求をアクティブに処理できるため、ロードバランシングと高可用性が実現します。
-
ビジネス継続性:対称アクティブ/アクティブ構成を実装して、両方のデータセンターがアプリケーションにアクティブに対応し、障害発生時にシームレスにテイクオーバーできるようにします。
-
パフォーマンスの向上:対称アクティブ/アクティブ構成を使用して複数のストレージシステムに負荷を分散し、応答時間とシステム全体のパフォーマンスを向上します。
このホワイトペーパーでは、Microsoftストレッチフェイルオーバークラスタ間のSnapMirrorアクティブ同期テクノロジの同期双方向レプリケーションについて説明します。これにより、MSSQLやOracleなどのマルチサイトアプリケーションデータに両方のサイトでアクティブにアクセスし、同期することができます。障害が発生した場合、アプリケーションはすぐに残りのアクティブサイトにリダイレクトされます。データの損失やアクセスの損失は発生しません。これにより、高可用性、ディザスタリカバリ、地理的な冗長性が実現します。
ユースケース
サイバー攻撃、停電、自然災害などのシステム停止が発生した場合、グローバルに接続されたビジネス環境では、ビジネスクリティカルなアプリケーションデータをデータ損失ゼロで迅速にリカバリする必要があります。こうした要求は、金融などの分野や、一般データ保護規則(GDPR)などの規制要件に準拠している分野で高まっています。対称アクティブ/アクティブ構成を導入して地理的に分散したサイト間でデータをレプリケートすることで、データへのローカルアクセスを提供し、地域的な障害が発生した場合の継続性を確保します。
SnapMirrorアクティブ同期には、次のようなユースケースがあります。
SnapMirrorアクティブ同期構成では、プライマリクラスタとミラークラスタがあります。プライマリクラスタ(\l1p)内のLUNには、セカンダリ上にミラー(L1S)があります。読み取りと書き込みは、ホットプロキシミティ設定に基づいて、ホストに対してローカルなサイトによって処理されます。
透過的アプリケーションフェイルオーバー(TAF)は、ホストのMPIOソフトウェアベースのパスフェイルオーバーに基づいて、ストレージへの無停止アクセスを実現します。プライマリ(L1P)とミラーコピー(L1S)などの両方のLUNコピーは同じID(シリアル番号)を持ち、読み取り/書き込み可能としてホストに報告されます。
VMware vSphere Metro Storage Cluster(vMSC)、Oracle RAC、Windows Failover Clustering with SQLなどのクラスタ化されたアプリケーションでは、パフォーマンスのオーバーヘッドなしでVMをもう一方のサイトにフェイルオーバーできるように、同時アクセスが必要です。SnapMirrorアクティブ同期対称アクティブ/アクティブは、クラスタ化されたアプリケーションの要件を満たすために、双方向レプリケーションによってローカルでIOを提供します。
地理的に分散したサイト間で、アプリケーション用の複数のボリュームを同期的にレプリケートします。プライマリでシステムが停止した場合にセカンダリコピーに自動的にフェイルオーバーできるため、ティア1アプリケーションのビジネス継続性が実現します。
SnapMirror Active Syncは柔軟性に優れ、使いやすいアプリケーションレベルのきめ細かさと自動フェイルオーバー機能を提供します。仮想環境と物理環境の両方で、OracleやMicrosoft SQL Serverなどのビジネスクリティカルなアプリケーションのデータ可用性の向上と高速なデータレプリケーションを実現します。
解決策アーキテクチャ
Microsoftフェイルオーバーストレッチクラスタには、各サイトにHyper-Vノードが2つあります。この2つのノードはNetAppストレージを共有し、SnapMirrorアクティブ同期の対称アクティブ/アクティブを使用して、2つのサイト間でボリュームをレプリケートします。整合グループを使用すると、データセットのすべてのボリュームが休止され、正確に同じポイントインタイムにスナップされます。これにより、データセットをサポートするボリューム間でデータ整合性のあるリストアポイントが提供されます。ONTAPメディエーターは、ピアONTAPのクラスタとノードに関する健常性情報を受信し、2つのクラスタ間でオーケストレーションを行い、各ノード/クラスタが正常で稼働しているかどうかを判断します。
ソリューションのコンポーネント:
-
2つのNetAppストレージシステムONTAP 9 .15.1:1つ目と2つ目の障害ドメイン
-
ONTAPメディエーター用のRethat 8.7 VM
-
Windows 2022での3つのHyper-Vフェイルオーバークラスタ:
-
アプリケーション用サイト1、サイト2
-
サイト3(メディエーター用)
-
-
Hyper-V上のVM:Microsoftドメインコントローラ、MSSQL Always Onフェイルオーバークラスタインスタンス、ONTAPメディエーター
Microsoftストレッチフェイルオーバークラスタのインストール
Windows管理センター、PowerShell、またはServer Managerコンソールを使用して、フェイルオーバークラスタリング機能とそれに関連するPowerShellコマンドレットをインストールできます。前提条件と手順の詳細については、「フェイルオーバークラスタの作成」を参照してください。
Windowsストレッチクラスタをセットアップする手順は次のとおりです。
-
hyperv1、hypervv2、hypervv3、hyperv4の4つのサーバすべてにWindows 2022をインストール
-
4つのサーバすべてを同じActive Directoryドメインhyperv.localに参加させます。
-
Windowsの機能であるフェイルオーバークラスタリング、Hyper-V、Hyper-V _PowerShell、MPIOを各サーバにインストールします。
Install-WindowsFeature –Name “Failover-Clustering”, “Hyper-V”, “Hyper-V-Powershell”, “MPIO” –IncludeManagementTools
-
MPIOを設定し、iSCSIデバイスのサポートを追加します。
-
サイト1とサイト2のONTAPストレージで、2つのiSCSI LUN(sqldataとsqllog)を作成し、Windowsサーバのiqnグループにマッピングします。Microsoft iSCSIソフトウェアイニシエータを使用してLUNを接続します。詳細については、を参照してください"Windows向けのiSCSIの設定"。
-
エラーまたは警告が発生していないか、Cluster Validationレポートを実行します。
Test-Cluster –Node hyperv1, hyperv2, hyperv3, hyperv4
-
フェイルオーバークラスタを作成し、静的IPアドレスを割り当てます。
New-Cluster –Name <clustername> –Node hyperv1, hyperv2, hyperv3, hyperv4, StaticAddress <IPaddress>
-
マッピングしたiSCSIストレージをフェイルオーバークラスタに追加します。
-
クォーラムの監視を構成するには、クラスタを右クリックし、[More Actions]→[Configure Cluster Quorum Settings]を選択して、[disk witness]を選択します。
次の図は、4つのクラスタ共有LUN(2つのサイトのsqldataとsqllog、クォーラム内の1つのディスク監視)を示しています。
Always On Failover Cluster Instance(FCI)は、WSFCのSAN共有ディスクストレージを使用するノード間にインストールされるSQL Serverインスタンスです。フェールオーバー中、WSFCサービスはインスタンスのリソースの所有権を指定されたフェールオーバーノードに転送します。次に、フェイルオーバーノードでSQL Serverインスタンスが再起動され、データベースが通常どおりリカバリされます。セットアップの詳細については、SQLを使用したWindowsフェイルオーバークラスタリングを確認してください。各サイトにHyper-V SQL FCI VMを2つ作成し、優先度を設定します。サイト1 VMの優先所有者にはhyperv1とhypervv2を、サイト2 VMの優先所有者にはhyperv3とhyperv4を使用します。
クラスタ間ピアリングの作成
SnapMirrorを使用してSnapshotコピーをレプリケートするには、ソースクラスタとデスティネーションクラスタ間にピア関係を作成する必要があります。
-
両方のクラスタにクラスタ間ネットワーク インターフェイスを追加
-
cluster peer createコマンドを使用すると、ローカルクラスタとリモートクラスタの間にピア関係を作成できます。ピア関係が作成されたら、リモートクラスタでcluster peer createを実行して、ローカルクラスタに対してピア関係を認証できます。
ONTAPを使用したメディエーターの設定
ONTAPメディエーターは、ピアONTAPのクラスタとノードに関する健常性情報を受信し、2つのクラスタ間でオーケストレーションを行い、各ノード/クラスタが正常で稼働しているかどうかを判断します。SM-ASを使用すると、ソースボリュームに書き込まれたデータをすぐにターゲットにレプリケートできます。メディエーターは、3番目の障害ドメインに導入する必要があります。前提条件
-
ハードウェア仕様:8GB RAM、2GHz CPU×2、1Gbネットワーク(125ミリ秒未満のRTT)
-
Red Hat 8.7 OSをインストールしました。確認してください。"ONTAPメディエーターのバージョンとサポートされるLinuxのバージョン"
-
Mediator Linuxホストを設定します。ネットワークセットアップとファイアウォールポート31784および3260
-
yum-utilsパッケージのインストール
-
からMediatorのインストールパッケージをダウンロードし"ONTAP メディエーターのダウンロードページ"ます。
-
ONTAPメディエーターコードの署名を確認します。
-
インストーラを実行し、必要に応じてプロンプトに応答します。
./ontap-mediator-1.8.0/ontap-mediator-1.8.0 -y
-
セキュアブートが有効になっている場合は、インストール後に追加の手順を実行してセキュリティキーを登録する必要があります。
-
READMEファイルの指示に従って、SCSTカーネルモジュールに署名します。
/opt/netapp/lib/ontap_mediator/ontap_mediator/SCST_mod_keys/README.module-signing
-
必要なキーを探します。
/opt/netapp/lib/ontap_mediator/ontap_mediator/SCST_mod_keys
-
-
インストールの確認
-
プロセスを確認します。
systemctl status ontap_mediator mediator-scst
-
ONTAPメディエーターサービスで使用されているポートを確認します。
-
-
自己署名証明書を使用してONTAPメディエーターのSnapMirrorアクティブ同期を初期化する
-
ONTAPメディエーターLinux VM /ホストソフトウェアのインストール場所cd /opt/ NetApp /lib/ ONTAPメディエーター/ ONTAPメディエーター/ server_configからONTAPメディエーターCA証明書を探します。
-
ONTAPメディエーターCA証明書をONTAPクラスタに追加します。
security certificate install -type server-ca -vserver <vserver_name>
-
-
メディエーターを追加し、System Managerの[protect]>[Overview]>[mediator]に移動し、メディエーターのIPアドレス、ユーザ名(APIユーザのデフォルトはmediatoradmin)、パスワード、およびポート31784を入力します。
次の図は、クラスタ間ネットワークインターフェイス、クラスタピア、メディエーター、SVMピアのすべてがセットアップされている状態を示しています。
対称アクティブ/アクティブ保護の設定
整合グループを使用すると、アプリケーションワークロードの管理が容易になり、ローカルとリモートの保護ポリシーを簡単に設定できます。また、一連のボリュームについて、ある時点におけるcrash-consistentまたはアプリケーションと整合性のあるSnapshotコピーを同時に作成できます。詳細については、を参照してください"整合グループの概要"。この設定には統一された設定を使用します。
-
整合グループを作成するときは、ホストイニシエータを指定してigroupを作成します。
-
Enable SnapMirrorのチェックボックスをオンにし、AutomatedFailoverDuplexポリシーを選択します。
-
表示されるダイアログボックスで、[Replicate initiator groups]チェックボックスを選択してigroupをレプリケートします。[Edit proximal settings]で、ホストの近接SVMを設定します。
-
保存を選択します
ソースとデスティネーションの間に保護関係が確立されます。
クラスタフェイルオーバーの検証テストの実行
計画的なフェイルオーバーテストを実行して、クラスタの検証チェックを実行することをお勧めします。SQLデータベースまたは両方のサイトのクラスタ化されたソフトウェアは、テスト中もプライマリサイトまたはミラーサイトに引き続きアクセスできる必要があります。
Hyper-Vフェイルオーバークラスタの要件は次のとおりです。
-
SnapMirrorのアクティブな同期関係が同期されている必要があります。
-
ノンストップオペレーションの実行中は、計画的フェイルオーバーを開始できません。ノンストップオペレーションには、ボリュームの移動、アグリゲートの再配置、ストレージフェイルオーバーなどがあります。
-
ONTAPメディエーターが設定され、接続され、クォーラムを構成している必要があります。
-
CPUプロセッサを搭載した各サイトの少なくとも2つのHyper-Vクラスタノードは、VMの移行プロセスを最適化するために同じCPUファミリーに属しています。CPUは、ハードウェア支援型の仮想化とハードウェアベースのデータ実行防止(DEP)をサポートするCPUである必要があります。
-
Hyper-Vクラスタノードは、耐障害性を確保するために、同じActive Directoryドメインメンバーである必要があります。
-
単一点障害(Single Point of Failure)を回避するために、Hyper-VクラスタノードとNetAppストレージノードは冗長ネットワークで接続する必要があります。
-
共有ストレージ。iSCSI、ファイバチャネル、SMB 3.0のいずれかのプロトコルを使用して、すべてのクラスタノードからアクセスできます。
テストシナリオ
ホスト、ストレージ、またはネットワークでフェイルオーバーをトリガーする方法は多数あります。
-
ノード障害フェイルオーバークラスタノードは、障害が発生したノードのワークロードを引き継ぐことができます。このプロセスは、フェイルオーバーと呼ばれます。対処方法:Hyper-Vノードの電源をオフにします。想定される結果:クラスタ内のもう一方のノードがワークロードをテイクオーバーします。VMはもう一方のノードに移行されます。
-
1つのサイト障害サイト全体を障害状態にして、プライマリサイトからミラーサイトへのフェイルオーバーをトリガーすることもできます。操作:一方のサイトの両方のHyper-Vノードをオフにします。想定される結果:プライマリサイトのVMはミラーサイトのHyper-Vクラスタに移行されます。これは、SnapMirrorアクティブ同期の対称アクティブ/アクティブがローカルで双方向レプリケーションを行い、ワークロードへの影響がなく、RPOとRTOがゼロであるためです。
-
Offline volumes Action:cluster1:::> volume offline vol1 Expected results:ONTAPはプライマリサイトボリュームをオフラインで検出し、クラスタはメディエーターと通信してストレージの状態を検出します。プライマリサイトのHyper-Vは、ミラーサイトのストレージボリュームと通信して、RPOゼロとRTOゼロを達成します。
-
プライマリサイトのSVMを停止する対処方法:iSCSI SVMを停止する想定される結果:Hyper-Vプライマリクラスタがすでにミラーサイトに接続されており、SnapMirrorアクティブ同期対称アクティブ/アクティブワークロードに影響はなく、RPOとRTOはゼロです。
テスト中は、次の点に注意してください。
-
クラスタの動作を監視し、残りのノードにサービスが転送されていることを確認します。
-
エラーやサービスの中断がないかどうかを確認します。
-
クラスタがストレージ障害に対応し、運用を継続できることを確認します。
-
データベースデータに引き続きアクセスできること、およびサービスが継続して動作することを確認します。
-
データベースのデータ整合性が維持されていることを確認します。
-
ユーザに影響を与えることなく、特定のアプリケーションを別のノードにフェイルオーバーできることを検証
-
フェイルオーバーの実行中および実行後も、クラスタが負荷を分散してパフォーマンスを維持できることを確認します。
まとめ
SnapMirrorアクティブ同期は、マルチサイトアプリケーションデータ(MSSQLやOracleなど)を両方のサイトでアクティブにアクセスして同期するのに役立ちます。障害が発生した場合、アプリケーションはすぐに残りのアクティブサイトにリダイレクトされ、データやアクセスが失われることはありません。