Amazon Web Services ブログ

S&P Global が SQL Server の高可用性と災害復旧を実現するために Amazon FSx for NetApp ONTAP を選択した理由とは

このブログは Sudhir Amin(Sr. Solutions Architect)と Mehmet Gunes(Senior Technical Account Manager)と Nishanth Charlakola(Associate Director at S&P)によって執筆された内容を日本語化したものです。。原文はこちらを参照して下さい。

組織は複雑な SQL サーバーインフラストラクチャにおいて、データ損失を防ぐために、可用性が高く災害復旧が可能なソリューション(HADR)を構築する必要があります。クラウドの急速な普及に伴い、様々な業種の企業が、既存の環境をクラウドに移行する技術的なプロジェクトにおいての概念実証(Proof of Concept)の重要性に気づきつつあります。どのような規模の企業にとっても、導入を成功させるためには、スピードを維持しながら、基準を設定し、リスクを最小限に抑え、多角的に検証を行うことが重要です。

S&P Global Market Intelligence は世界の金融市場およびそれらの市場を構成する企業や業界に関する実用的なインテリジェンスを提供するリーディング・プロバイダーであり、160 年以上の歴史があります。主に ESG ソリューション、ディープデータ、重要な経済・市場・ビジネス要因に関する洞察を提供し、ビジネスの進歩を加速させます。このブログでは、S&P Global Market Intelligence が、マルチリージョン Amazon FSx for NetApp ONTAP(FSx for ONTAP)アーキテクチャを実装し概念実証を成功させることで、Microsoft SQL Server ワークロードの事業継続性と災害復旧(DR)の目標を達成するための技術評価を行った方法について説明します。

ビジネスにおける問題点と現状のアーキテクチャ

S&P Global のマーケット・インテリジェンス部門のデータサービスエンジニアリングチームは、大規模な Microsoft SQL Server を管理しており、その上で稼働するバックエンド処理を AWS で運用・保護するための、コスト最適化されたクラウドネイティブソリューションを必要としていました。このデータ処理インスタンスには 100 以上の SQL Server データベースがあり、総ストレージ容量は 100 TB を超え、年間約 10 % 増加しています。バックエンド処理システムは、すべてのデータの取り込みと、さまざまな外部クライアント向け製品へのデータ配信を行うためのソースデータベースサーバーとして機能しています。データの取り込みは、コンテンツ取り込み UI ツールを使用したプロセスで自動化されており、これらのコンテンツで作業するユーザーは世界中に散らばっています。データ配信の観点からは、このシステムは SQL Server のパブリッシャーとして機能し、何千ものテーブルを持つ数百のデータベースを公開しています。

インフラストラクチャのレベルでは、プライマリ環境と DR 環境の両方に SQL データベースをホストするための 2 ノードの Windows フェールオーバークラスター(WSFC)があり、共有ストレージサービスを提供する高速な SAN ストレージシステムに接続されています。次の図に示すように、各データセンターの 2 つのストレージシステム間で構成された SAN レプリケーションは、フェールオーバークラスタリングソリューションに地理的冗長性を提供します。

図 1: オンプレミス上の SQL Server HADR アーキテクチャの論理コンポーネント

プライマリサイトでフェールオーバーが発生した場合、WSFC サービスはプライマリインスタンスのリソースの所有権をサイト内の指定されたフェールオーバーノードに移動します。

プライマリデータセンターに壊滅的な災害が発生した場合、クライアントアプリケーションのトラフィックは DR サイトに誘導され、レプリケーションされたデータベースインスタンスにアクセスします。DR サイトのストレージシステムは 2 つの Windows フェールオーバークラスターノードに接続され、レプリケーションされたストレージボリューム上のデータベースへのアクセスを提供し、2 つのデータセンター間の 4 つのノードすべてで可用性を実現します。データベース管理者(DBAs)が手動でフェールオーバーを行い、2 つのストレージボリューム間のミラー関係を解除することで、DR サイトのデータベースをオンラインにすることができます。

加えて、多数の社内外アプリケーションにデータサービスを提供するために、SQL Server インスタンス上に数百のパブリケーションデータベースと数千のアーティクルを持つ MS トランザクションレプリケーションが構成されています。クライアントアプリケーションは、 Windows フェールオーバークラスター内の SQL Server ネットワーク名を使用してデータベースサービスにアクセスします。したがって、RPO 10 分、RTO 1 時間という目標でシームレスなフェールオーバーを実現するには、構成された 2 つのサイト間におけるドメインの名前解決とネットワーク構成が非常に重要でした。

技術的要件

以下の必要条件が定義されていました:

  1. 多数のデータベースが存在する環境をサポートするために、ストレージベースのレプリケーション機能を備えた共有ストレージソリューションを活用して、マルチリージョン SQL Server フェールオーバークラスターインスタンスを実装します。
  2. RPO 10 分、RTO 1 時間を達成するために、両方のサイトに配置されたストレージソリューションは、継続的、非同期、そして双方向のレプリケーションをサポートする必要があります。
  3. ストレージソリューションは 100 TB を超えるストレージ容量をサポートし、SQL Server クラスター用に高い IOPS とスループットを実現できる必要があります。
  4. SQL Server をサポートする非対称共有ストレージを使用し、異なる AWS リージョンにまたがった単一で可用性の高い Windows フェールオーバークラスターインスタンスを実装します。
  5. Active Directory(AD)と信頼性の高い DNS サービスを備えた耐障害性の高い Windows インフラストラクチャを実装し、クライアントアプリケーションのシームレスなフェールオーバーをサポートしています。

ソリューション概要

マルチリージョンアーキテクチャで SQL Server AlwaysOn FCI を導入するには、共有ストレージオプションと、リージョン間のデータレプリケーション機能が不可欠でした。そこで、クロスリージョン DR にて利用可能な SnapMirror レプリケーションを備えた、高い可用性と耐久性を誇るストレージ、FSx for ONTAP を使用することで、厳しい RPO と RTO の要件を満たします。FSx for ONTAP はフルマネージドサービスであり、自社管理ストレージと比較して、高い信頼性とパフォーマンス、かつセキュアな共有ファイルストレージを、クラウドにてコスト効率良く簡単に導入・拡張することができます。

図 2: マルチリージョン FSx for ONTAPSnapMirror レプリケーションによる DR

ソリューション導入の手順

チームはこの概念実証のために、バージニア北部リージョン(us-east-1)とオハイオリージョン(us-east-2)にまたがる、Windows フェールオーバークラスターを構築しました。手順は以下の通りです。

リージョン間の VPC ピアリングを設定する

  1. 2 つのアベイラビリティ・ゾーン(AZ)にまたがった、2 つのプライベートサブネットを含む VPC をプライマリサイトとなる us-east-1 にデプロイします。
  2. DR 用 SQL Server ノードをホストするための、単一の AZ で 1 つのプライベートサブネットを含む VPC を DR サイトとなる us-east-2 にデプロイします。

リージョン間で AD サービスをサポートするためのネットワーク通信を有効にする

  1. 両方のリージョンで Windows フェールオーバークラスターと SQL デプロイメントをサポートするためのネットワークアクセスを持つ AD をデプロイします。
  2. SQL Server の通信用に、ノード間およびクライアントアクセスを許可したセキュリティグループを設定します。

各リージョンに SQL Server を配置する

  1. プライマリサイトと DR サイトの両方に、SQL Server インスタンスをデプロイします。最初のテストでは 2 つのサイトで独立した SQL Server を使用しましたが、その後プライマリサイトの 2 ノード SQL FCI クラスタへ移行し、DR サイトの 1 ノードを同クラスタに参加させました。
  2. Windows フェールオーバークラスターを作成するための適切な権限を持つ SQL Server サービスアカウントの資格情報と、SQL Server フェールオーバークラスターインスタンスを作成します。
  3. 3 つの SQL Server はすべて共通の AD ドメインに参加し、SQL Server 用の共通サービスアカウントを使用します。
  4. クラスターのクォーラムは、DR サイトが投票に参加せず、プライマリサイトの投票数が奇数になるように構成します。
  5. このアーキテクチャでは、プライマリサイトに 2 つのノードがあるため、ファイル共有監視を構成し、クォーラムのモードを「Node and File Share Majority」とする必要があります。詳細については、クォーラム構成ディザスタリカバリ構成におけるクォーラムの考慮事項を参照してください。

各リージョンに FSx for ONTAP ファイルシステムを実装する

  1. プライマリサイト(us-east-1)に、要件に従って適切な SSD 容量を持つ FSx for ONTAP ファイルシステムを作成します。
  2. DR サイト(us-east-2)に、プライマリサイトで作成された SSD 容量と同量以上の、セカンダリ FSx for ONTAP ファイルシステムを単一 AZ に作成します。
  3. プライマリサイトの 2 つのノードは、プライマリ FSx for ONTAP ファイルシステムからデータを取得し、ストレージはプライマリサイトのノードにのみ表示され、DR サイトのノードには表示されません。これは非対称ストレージ構成と呼ばれます。
  4. 同様に、DR サイトのノードは、セカンダリ FSx for ONTAP ファイルシステムからデータを取得し、ストレージは DR サイトのノードからのみアクセスできます。 DR サイトのストレージは Windows ノードにはマッピングされません。通常 DR サイトのストレージは読み取り専用状態で、フェールオーバー時に読み書き可能に変更されます。
  5. 2 つの FSx for ONTAP 間で SnapMirror の非同期レプリケーションが確立され、DR サイトにフェールオーバーが発生すると、レプリケーション関係において送信元と送信先の関係がセカンダリとプライマリで逆になります。

注:データ損失を完全に防ぐには、同期型のレプリケーションでのみ実現可能なことが重要です。同期レプリケーションを実装するには、ラウンドトリップタイム(RTT)が 10 ms 以下(物理距離約 150 km 以内)である必要があります。災害対策の用途では、物理距離の制限がなく、データ損失を最小限に抑えて DR サイトにレプリケートする必要があるため、非同期レプリケーションが有効です。

SnapMirror の同期型と非同期型の詳細については、ネットアップのブログ記事を参照してください。

How to Devise an Effective Data Protection and Disaster Recovery Approach.

技術的検証

データの一貫性と可用性を確認するため、チームは SnapMirror 関係を解除した後にデータベースをオンラインにし、セカンダリファイルシステムをクリーンアップできることを検証しました。また、巨大なトランザクションの途中で SQL Server インスタンスをフェールオーバーし、セカンダリファイルシステム上で処理中のトランザクションが正常にロールバックされることも検証しました。テストフェーズで実施された各 DR 訓練では、MS トランザクションのレプリケーションステータスとアプリケーションの接続性が監視され、エンドユーザーがデータにアクセスできることを確認しました。実装とデータ検証の手順は、Amazon FSx for NetApp ONTAP を使用した SQL Server Always On Failover Cluster インスタンスの HA と DR の実装という投稿で説明されています。これは、マルチリージョン FSx for ONTAP ファイルシステムアーキテクチャを SnapMirror を用いて実現し、SQL Server の HA および DR アーキテクチャを設計する際に役立ちます。

結果

社内のコンテンツとデータ処理アプリケーションは、社外顧客向け製品にデータを配信するための基礎になります。S&P Global Market Intelligence は、FSx for ONTAP の SnapMirror を使用して、SQL Server フェールオーバークラスターインスタンスを 2 つのリージョン間で実装し、HADR 構成を実現しました。SnapMirror レプリケーションによって、HADR の目標である RPO 10 分、RTO 1 時間という厳しい目標を簡単に達成できました。これにより、アプリケーションの信頼性と耐障害性が向上しました。また、ネイティブのネットワーク圧縮機能によって帯域幅の使用率も低下し、FSx for ONTAP システム間のデータ転送が高速化されました。

まとめ

このブログでは、S&P Global がビジネスクリティカルなコンテンツとデータを処理するアプリケーションのために、FSx for ONTAP を使用して、シームレスなクロスリージョン HADR 構成を AWS に導入・検証するためのソリューションを紹介しました。FSx for ONTAP を使用することで、ストレージ部門における運用保守の管理工数を削減し、データの一貫性や信頼性のテストと検証などユーザー目線での改善業務に集中することができます。その他にも、FlexClone などの機能を活用して開発環境やレポーティングおよび分析用の ETL 環境を構築、 SnapCenter プラグインを実装して容量効率の高いデータベースのバックアップとリストアの実行、スナップショットやアクセス頻度の低いストレージブロックをキャパシティプール階層に可能な限り移動しコスト削減を実施、といったことも可能です。

この記事をお読みいただきありがとうございました!

翻訳はネットアップ合同会社の岩井様、監修は Solutions Architect 吉澤が担当しました。

Sudhir Amin

Sudhir Amin

Sudhir Amin は、Amazon Web Services の Sr. Solutions Architect です。ニューヨークを拠点に、さまざまな業種の企業にアーキテクチャのガイダンスと技術支援を提供し、クラウド導入を加速しています。彼はボクシングや UFC といった格闘技の大ファンであり、野生動物保護区のある国を旅行して、世界で最も雄大な動物を間近に見るのが大好きです。

Mehmet Gunes

Mehmet Gunes

Mehmet Gunes は Amazon Web Services の Senior Technical Account Manager です。TAM として、クラウドコンピューティングの導入とビジネスの変革を成功させるためのパートナーとして顧客をサポートしています。ツール、技術的な専門知識、技術に特化したスペシャリストを駆使して、顧客のビジネスや運用の成果、技術的な課題を理解し、AWS から最大の価値を得られるよう支援しています。彼は余暇に旅行し世界中の新しい場所を探索することを愛しています。

Nishanth Charlakola

Nishanth Charlakola

Nishanth Charlakola は、S&P Global Market Intelligence データサービスエンジニアリングチームの Associate Director です。大規模な SQL Server システムの設計、管理、保守において 14 年以上の業界経験を有し、5 年以上のクラウド経験があります。S&P Global Market Intelligence では、主に SQL Server ワークロードのクラウドへの移行を担当しています。彼はインドのハイデラバード在住で、余暇はイングランドプレミアリーグの Chelsea FC を応援しています。