FSx for Windows File Server を使用して Amazon EC2 で Microsoft SQL Server フェイルオーバークラスターをセットアップする - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

FSx for Windows File Server を使用して Amazon EC2 で Microsoft SQL Server フェイルオーバークラスターをセットアップする

Amazon Web Services、Sweta Krishna および Ramesh Babu Donti

概要

フェイルオーバークラスターインスタンス (FCI) を備えた Microsoft SQL Server Standard Edition は、SQL Server Enterprise よりもコスト効率の高い代替手段を提供できます。SQL FCI をセットアップするには、ノード間の共有ファイルストレージが必要です。Amazon FSx for Windows File Serverは、アベイラビリティーゾーン間で自動的かつ同期的にレプリケートする、フルマネージドストレージを提供します。Amazon FSx は、汎用ファイル共有用の組み込みデータ重複排除を使用してストレージコストを削減し、サードパーティーソリューションを維持する必要性を排除します。Amazon FSx は以下の内容もサポートします。

  • 前払い料金や契約は不要で、使用した分だけ支払います。

  • FSx を使用して FCI を手動でセットアップし、共有ストレージにします。

  • SQL クラスターのファイル共有監視手段に FSx を使用します。

  • Amazon FSx for Windows File Server は、継続的に利用可能なファイル共有のための Server Message Block (SMB) 3.0 をサポートしており、SQL Server FCI のデプロイに適しています。

前提条件と制限

前提条件

  • アクティブな AWS アカウント

  • Amazon Virtual Private Cloud (Amazon VPC) リソース、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、セキュリティグループ、および AWS Identity and Access Management (IAM) ロールを作成および管理するためのアクセス許可。

  • AWS Managed Microsoft AD または独自のオンプレミス Active Directory。

  • フェイルオーバークラスターをセットアップするために必要なアクセス許可を持つ Active Directory ドメインユーザー。

  • 安全なハイブリッド接続のための SQL Server FCI および Microsoft Active Directory ポートのセキュリティグループルール。

  • SQL ノード間で適切なアクセス許可が設定された、Active Directory for SQL Server のサービスアカウント

  • フェイルオーバークラスター内の Amazon FSx for Windows File Server。

  • SQL Server インストールバイナリ。

制限事項

  • 一部の AWS のサービス は、すべてで利用できるわけではありません AWS リージョン。利用可能なリージョンについては、「AWS のサービス (リージョン別)」を参照してください。特定のエンドポイントについては、「Service endpoints and quotas」ページから、サービスのリンクを選択してご確認ください。

製品バージョン

  • Amazon EC2 for Windows Server 2012 R2 以降

  • 現在のすべての Windows Server バージョンを含む Amazon FSx for Windows File Server

  • 共有ストレージの代替手段としての Amazon FSx for NetApp ONTAP

  • SQL Server 2012/2016/2019/2022

アーキテクチャ

テクノロジースタック

  • Amazon EC2

  • Amazon FSx for Windows File Server

  • Amazon VPC

  • AWS Directory Service

  • AWS Systems Manager

  • IAM

ターゲットアーキテクチャ

次の図は、Amazon FSx for Windows File Server を使用した Amazon EC2 での Microsoft SQL Server FCI のアーキテクチャの概要を示しています。

Amazon FSx for Windows File Server を使用した Amazon EC2 での Microsoft SQL Server FCI のアーキテクチャ図。

ネットワークインフラストラクチャ

  • Amazon VPC は、3 つのアベイラビリティーゾーンにまたがるネットワークコンテナを提供します。

  • プライベートサブネットは、リソースをデプロイするために、各アベイラビリティーゾーンに分離されたサブネットを提供します。

コンピューティングレイヤー

  • Amazon EC2 には、Windows Server フェイルオーバークラスター (WSFC) の一部としてアベイラビリティーゾーン 1 にデプロイされた SQL Server クラスターノード 1 が含まれています。

  • Amazon EC2 には、WSFC の一部としてアベイラビリティーゾーン 2 にデプロイされた SQL Server クラスターノード 2 が含まれています。

  • WSFC クラスターは、フェイルオーバー機能のために両方の SQL Server ノードを接続します。

Amazon FSx for Windows File Server のストレージレイヤー

マルチ AZ FSx デプロイ (アベイラビリティーゾーン 1 と 2 にまたがる)

  • アベイラビリティーゾーン 1 のプライマリ FSx ファイルシステムは、アクティブな SQL Server データとログファイルをホストします。

  • アベイラビリティーゾーン 2 のセカンダリ FSx ファイルシステムは、自動フェイルオーバー機能を提供します。

  • SQL Server データベースの両方のクラスターノードからアクセスできる、SMB ファイル共有 (\\fsx.domain\sqlshare)。

シングル AZ FSx デプロイ (AZ3 内)

  • アベイラビリティーゾーン 3 の Amazon FSx ファイルサーバー監視は、クラスタークォーラム監視として機能します。

  • ファイル共有監視 (\\fsx.domain\witness) はクラスタークォーラムを維持し、スプリットブレインのシナリオを防止します。

ディレクトリサービス

  • AWS Managed Microsoft AD は、クラスター機能に必要な Windows 認証とドメインサービスを提供します。

高可用性機能

  • マルチ AZ コンポーネントは、アベイラビリティーゾーン間で耐障害性を提供します。

  • FSx スタンバイファイルサーバーは、プライマリサーバーに障害が発生した場合に自動フェイルオーバーを提供します。

  • ファイル共有監視は、アベイラビリティーゾーン 3 でクラスタークォーラム管理を提供し、障害発生時にクラスターが適切に機能するようにします。

  • ドメインは、シームレスな Windows 認証 AWS Managed Microsoft AD のために と統合されています。

ツール

AWS のサービス

  • Amazon Elastic Compute Cloud (Amazon EC2) は、 AWS クラウドでスケーラブルなコンピューティング容量を提供します。仮想サーバーを必要な数だけ起動して、迅速にスケールアップまたはスケールダウンができます。

  • Amazon FSx は、業界標準の接続プロトコルをサポートし、 AWS リージョン全体で高い可用性とレプリケーションを提供するファイルシステムを提供します。

  • Amazon Virtual Private Cloud (Amazon VPC) は、定義した仮想ネットワークに AWS リソースを起動するのに役立ちます。この仮想ネットワークは、ユーザー自身のデータセンターで運用されていた従来のネットワークと似ていますが、 AWSのスケーラブルなインフラストラクチャを使用できるという利点があります。

  • AWS Directory Service for Microsoft Active Directory は、ディレクトリ対応のワークロードと AWS リソースが で Microsoft Active Directory を使用できるようにします AWS クラウド。

  • AWS Identity and Access Management (IAM) は、誰を認証し、誰に使用する権限を付与するかを制御することで、 AWS リソースへのアクセスを安全に管理するのに役立ちます。

  • AWS Systems Manager は、 AWS クラウドで実行されるアプリケーションとインフラストラクチャの管理に役立ちます。これにより、アプリケーションとリソースの管理が簡素化され、運用上の問題を検出して解決する時間を短縮し、 AWS リソースを大規模に安全に管理できます。

ベストプラクティス

  • データベースインスタンスをプライベートサブネットに配置して、インターネットからパブリックにアクセスできないようにしながら、 に接続 AWS のサービス して更新を実行できるようにします。

  • 一般的なベストプラクティスについては、「Best Practices for Deploying Microsoft SQL Server on Amazon EC2」を参照してください。

  • PowerShell を使用して Amazon FSx for Windows File Server を管理するには、「Administering FSx for Windows file systems」を参照してください。

エピック

タスク説明必要なスキル

名前とタグを追加します。

  1. で AWS マネジメントコンソール、Amazon EC2 に移動します。

  2. [インスタンスを起動] を選択します。

  3. 必要なタグを追加します。

DBA

Windows AMI を選択します。

SQL Server の要件を満たす Windows 用の Amazon マシンイメージ (AMI) を選択します。

DBA

インスタンスのタイプを選択します。

要件を満たす Amazon EC2 インスタンスタイプを選択します。

DBA

キーペアを使用します。

キーペアを使用すると、インスタンスに安全に接続できます。インスタンスを起動する前に、選択したキーペアにアクセスできることを確認してください。

DBA

ネットワーク設定を構成します。

  1. Active Directory の設定に使用した VPC を選択します。

  2. VPC とプライベートサブネットを選択します。

  3. 既存のセキュリティグループを選択します。セキュリティグループがない場合は、[セキュリティグループを作成] を選択します。

DBA

[ネットワークの詳細設定] を設定します。

  1. [ネットワークの詳細設定] を選択します。

  2. セカンダリ IP を選択します。

  3. [自動で割り当てる] チェックボックスをオンにして、サブネットからセカンダリ IP を割り当てます。

DBA

ストレージを設定します。

必要な合計ストレージを設定し、必要なストレージタイプを選択します。

DBA

高度な詳細を設定し、インスタンスを起動します。

  1. ディレクトリリストから Active Directory ドメインを選択します。

  2. AmazonSSMManagedInstanceCoreAmazonSSMDirectoryServiceAccess のポリシーがアタッチされた IAM ロールを選択します。

  3. (オプション) その他の利用可能なオプションを設定します。

  4. インスタンスを起動します。

DBA

ノード 2 を作成します。

これらのステップを繰り返して、ノード 2 を作成して設定します。

DBA
タスク説明必要なスキル

ノード 1 にログインします。

管理者として、Windows Amazon EC2 インスタンスにログインします。

DBA

ノード 1 に FCI 機能をインストールします。

  1. PowerShell で、次のスクリプトを実行します。

Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools
  1. インストール後、未完了の Windows 更新プログラムをチェックしてインストールします。

  2. インスタンスを再起動します。

DBA

ノード 2 にログインします。

管理者として、Windows Amazon EC2 インスタンスにログインします。

DBA

ノード 2 に FCI 機能をインストールします。

  1. PowerShell で、次のスクリプトを実行します。

Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools
  1. インストール後、未完了の Windows 更新プログラムをチェックしてインストールします。

  2. インスタンスを再起動します。

DBA

新しいノードをクラスターに追加します。

  1. リモートデスクトップを使用してノード 1 に接続し、[サーバーマネージャーの起動] を選択します。

  2. [ツール] メニューで、[Failover Cluster Manager] を選択します。

  3. [管理][Failover Cluster Manager] ペインで、[クラスターを作成] を選択して [クラスター作成ウィザード] を開きます。

  4. [開始する前に] ページで [次へ] をクリックします。

  5. [サーバーを選択] ページが表示された場合は、[名前を入力] フィールドで [参照] を選択してサーバーを検索し、[追加] を選択します。追加するサーバーごとにこのステップを繰り返し、[次へ] を選択します。

  6. [クラスターを管理するアクセスポイント] ページで、クラスターを選択し、[次へ] を選択します。

  7. [確認] ページには、クラスター名、ノード、およびその他のドメイン情報が表示されます。これらの詳細を確認し、[次へ] を選択します。

  8. [概要] ページで、FCI が正常に作成されたことを確認します。警告やエラーがある場合は、概要出力を表示するか、[レポートを表示] を選択します。

  9. [Finish] を選択してください。

  10. クラスターが設定されると、システムに [クラスター作成ウィザードを完了しました] と表示されます。

  11. ノード 2 に対してこれらのステップを繰り返します。

DBA

クラスターをオンラインにします。

クラスターをオンラインにするには、両方のノードの静的 IP アドレスを更新します。

  1. クラスターオブジェクトの名前を選択します。

  2. コンテキスト (右クリック) メニューを開き、[プロパティ] を選択します。

  3. EC2 インスタンスからサブネットと未使用のセカンダリ IP アドレスを選択します。

  4. セカンダリ IP アドレスを更新した後、コンテキスト (右クリック) メニューを開き、[クラスターオブジェクト名] を選択します。

  5. [オンラインにする] を選択します。

DBA

クラスターを検証します。

[Failover Cluster Manager] に移動し、クラスターコアリソースがオンラインであることを確認します。

DBA
タスク説明必要なスキル

サーバーにログインします。

管理者として Amazon EC2 インスタンスにログインします。

DBA

SQL バイナリをマウントします。

  1. [SQL Server Installation Center] を起動し、[インストール] を選択します。

  2. [新しい SQL Server フェイルオーバークラスターのインストール] を選択します。

  3. [セットアップファイル] まで、プロンプトに従って進みます。

  4. [グローバルルール] ダイアログボックスで、すべてのチェックが成功したことを確認します。

  5. [フェイルオーバークラスタールールのインストール] ダイアログボックスで、すべてのチェックが成功したことを確認します。続行する前に警告がある場合は対処してください。

  6. [機能の選択] ダイアログボックスで、[データベースエンジンサービス][クライアントツールの接続] のチェックボックスをオンにします。

  7. [機能ルール] ダイアログボックスで、すべてのルールが合格したことを確認します。

  8. [インスタンス設定] ダイアログボックスに、SQL Server ネットワークの名前を入力します。

  9. [クラスターリソース] グループで、リソースグループの名前を指定します。ドロップダウンリストからグループを選択するか、カスタム名を入力します。

  10. [クラスターネットワーク] の設定ダイアログボックスで、[IPv4] をオンにし、[DHCP] をオフにします。各ノードに対してセカンダリプライベート IP アドレスを指定します。

  11. [サーバー設定] ダイアログボックスで、以下を行います。

    • [サービスアカウント] タブで、SQL Server の SQL Service アカウント名と認証情報に関する必要な詳細を指定します。

    • エージェントとデータベースエンジンの [スタートアップ][手動] に設定されていることを確認します。

    • [SQL Server データベースエンジンサービスにボリュームメンテナンスタスクを実行する特権の付与] チェックボックスをオンにします。これにより、SQL Server のファイルの即時初期化が可能になります。

  12. [データベースエンジン設定] ダイアログボックスで、以下を行います。

    • [Windows 認証モード][サーバー設定] タブで、[認証モード] が選択されていることを確認します。

    • [データディレクトリ] タブで、データ、ログ、tempdb、およびバックアップファイルの Amazon FSx パスの場所を指定します (.mdf ファイルの場合は \\fsx.domain\sqlshare\data.ldf ファイルの場合は \\fsx.domain\sqlshare\logs など)。

  13. [機能設定] ルールのダイアログボックスで、すべてのチェックが成功したことを確認し、[次へ] を選択します。

  14. [インストール準備完了] ダイアログボックスで、すべての設定を確認します。

  15. [インストール] を選択してインストールを続行します。

  16. [完了] ダイアログボックスで、[閉じる] を選択します。

フェイルオーバークラスターにノード 2 を追加します。

  1. [SQL Server Installation Center] に移動します。

  2. [インストール] を選択します。

  3. [SQL Server フェイルオーバークラスターにノードを追加] を選択し、[クラスターノードの設定] まで、プロンプトに従って進みます。

  4. [クラスターノードの設定] ダイアログボックスで、[IPv4] をオンにし、[DHCP] をオフにします。

  5. ノード 2 の IP アドレスを追加します。

  6. [サービスアカウント] で、ノード 1 と 2 の詳細が一致していることを確認します。

  7. 対応する SQL Server サービスアカウントの認証情報を指定します。

  8. [機能ルール] ダイアログボックスで、すべてのチェックが成功したことを確認します。

  9. [次へ] を選択し、残りのプロンプトの指示に従います。

  10. [インストール] を選択してインストールを続行します。

  11. [完了] ダイアログボックスで、[閉じる] を選択します。

DBA
タスク説明必要なスキル

クォーラム設定を構成します。

  1. RDP を使用して、Amazon EC2 インスタンスに接続します。

  2. [Failover Cluster Manager] に移動します。

  3. クラスターのコンテキスト (右クリック) メニューを開き、[その他のアクション] を選択します。

  4. [クラスタークォーラム設定を構成] を選択します。

  5. クォーラム設定を構成します。

DBA

DNS の詳細を取得します。

Amazon FSx コンソールで、[マネージド AD][アタッチ] の順に選択します。DNS は次の形式である必要があります。\\example.example.net\share

DBA

ファイル共有監視を設定します。

[Amazon FSx ファイル共有パス][完了] の順に選択します。

DBA

関連リソース

AWS リソース

その他のリソース

追加情報

ファイル共有監視を設定する

Amazon FSx セキュリティグループにインバウンド接続を許可するルールを追加して、両方のノードからファイルシステムに接続していることを確認します。SMB ポートを許可する必要があります。例えば、DNS 名が \\example.example.com\share の場合は \\example.example.com\share を使用します。Always On 可用性クラスターのファイル共有監視にも同じ値を使用します。ファイル共有監視を設定するには、次の手順を実行します。

  1. RDP を使用して、Amazon EC2 インスタンスに接続します。

  2. [Failover Cluster Manager] に移動します。

  3. コンテキスト (右クリック) メニューを開き、[その他のアクション] を選択します。

  4. [クラスタークォーラム設定を構成] を選択します。

  5. [次へ] を選択します。

  6. [クォーラム設定] を選択し、ファイル共有監視を設定します。

  7. DNS 名を指定します。

  8. 概要を確認し、[完了] を選択します。ファイル共有監視は、[クラスターコア] リソースセクションでオンラインになっている必要があります。