ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習を完了するときに、これらの値をクラウド環境に固有の値に置き換えます。
Oracle Cloud InfrastructureでのHAおよびDR用のMicrosoft SQL Server Windows Serverフェイルオーバー・クラスタのデプロイ
イントロダクション
Microsoft SQL Server (MSSQL)エンタープライズレベルのデータベース・インフラストラクチャは、ビジネスの継続性を維持し、ダウンタイムを最小限に抑えるために、高可用性(HA)およびディザスタ・リカバリ(DR)機能に大きく依存しています。MSSQLでは、これらの目標の達成に役立つ複数のクラスタリング・デプロイメント・モデルを提供しています。これらのモデルには、Always on Availability GroupおよびFailoverクラスタ・インスタンスが含まれます。
各モデルには独自の長所とユースケースがありますが、このチュートリアルでは特に、Small Computer Systems Interface (SCSI) Persistent Reservation (PR)機能を使用したOCI Block Volumesサービスを使用したMSSQLフェイルオーバー・クラスタ・インスタンスのデプロイメントおよび構成に焦点を当てます。Always On可用性グループの詳細は、Microsoft SQL Server Always On可用性グループのOCIへのHAおよびDRへのデプロイを参照してください。
アーキテクチャ
このチュートリアルでは、次のアーキテクチャを使用します。
-
単一リージョン:デプロイメントは、単一のOracle Cloud Infrastructure (OCI)リージョンで構成されます。デプロイメントは他のOCIリージョンに拡張できますが、このような構成は、このチュートリアルの範囲外です。
-
サブネット: OCI Bastion仮想マシン(VM)を除き、すべてのリソースはプライベート・リージョナル・サブネットに配置されます。
-
OCIブロック・ボリューム:
- 定足数ディスク: SCSI PRが有効な共有ブロック・ボリューム。このブロック・ボリュームは、クラスタ・クォーラム・ディスクとして使用されます。
- データ・ディスク: SCSI PRが有効な2番目の共有ブロック・ボリューム。これは、アプリケーション・データの格納に使用されます。
-
SQL Server IP:各SQL Server VMには、プライマリ仮想ネットワーク・インタフェース・カード(VNIC)上の次のIPが必要です。
- プライマリIP:オペレーティング・システム(OS)のアクセス(VMのプロビジョニング時に自動的に作成されます)。
- セカンダリIP 1: Windows Serverフェイルオーバー・クラスタIP。このチュートリアルで作成します。
- セカンダリIP 2: SQL Serverフェイルオーバー・クラスタIP。このチュートリアルで作成します。
目的
- フェイルオーバー・クラスタ・インスタンスをデプロイおよび構成します。
前提条件
-
ネットワーキング:
- 1 * VCN
- 1 *プライベート・サブネット
- 2 *フェイルオーバーIPに割り当てる静的セカンダリIP。
-
サーバー:
- 1 *パブリック・サブネット内の要塞VM。プライベート・サブネットで実行されているVMに接続できます。
- 1 *プライベート・サブネット内のドメイン・コントローラVM。
- 2 *同じプライベート・サブネット内のSQL Server VM (
sqlnode1
、sqlnode2
)。
-
Active Directoryドメインの前提条件:
- ドメインコントローラの機能と役割がドメインコントローラ VMに追加されました。
- OS管理者によって構成されたドメイン。このチュートリアルのドメイン・コントローラには、ルート・ドメイン名
example.org
があります。選択したルート・ドメイン名でドメインを構成できます。 - OCIでのActive Directoryドメイン・サービスの作成に関するOCIホワイト・ペーパーを参照してください。
- ドメインに追加されたSQL Server VM。
-
その他の考慮事項
- ストレージ: WSFCは、内部通信に
169.254.*
アドレス空間のIPを使用します。これは、iSCSIブロック・デバイスを公開するためのOCIアドレス空間と重複します。そのためには、各SQL ServerノードVMでiSCSIターゲット・ポータルを公開するための静的IPルートを作成する必要があります。このような構成は、このチュートリアルの範囲外です。詳細は、Failover Clustering Networking Basics and Fundamentalsを参照してください。 - Oracle Cloud Infrastructure Identity and Access Management (OCI IAM)ポリシー:チュートリアルでは、VCN、プライベートIP、パブリックIP、OCI Block Volumesおよび起動インスタンスを作成および管理するために必要な権限を付与するOCI IAMポリシーを構成していることを前提としています。
- ストレージ: WSFCは、内部通信に
タスク1: フェイルオーバーIPの構成
Windows Serverフェイルオーバー・クラスタリングでは、アクティブ/パッシブ・クラスタリング・モデルが採用され、専用のIPアドレス(フェイルオーバーIPまたは浮動IP)がクラスタに割り当てられます。このフェイルオーバーIPは、障害の発生したノードからアクティブノードに自動的に移動するため、継続的なネットワーク接続が保証され、停止時間が最小限に抑えられます。ノードに障害が発生すると、フェイルオーバーIPが新しいアクティブノードにシームレスに転送されるため、クライアントは中断することなくクラスタリソースへのアクセスを維持できます。
両方のMicrosoft SQL Server仮想マシンでフェイルオーバーIPを構成する方法の詳細は、Windows ServerでのセカンダリIPアドレス・フェイルオーバーの自動化を参照してください。
タスク2: SQL Serverサービス・アカウントの作成
SQL Serverでは、専用のドメイン・アカウントを使用する必要があります。このタスクでは、このアカウントを作成します。チュートリアルの後半では、このアカウントを使用して、各ノードでSQL Serverサービスを構成します。
-
ドメイン管理者アカウントを使用してドメインコントローラにログインし、Active Directoryのユーザーおよびコンピュータに移動します。
-
このチュートリアル用に構成したドメインを展開します。
-
「ユーザー」を右クリックし、「新規ユーザー」をクリックして新規ユーザーを作成します。
-
必要な情報を入力し、「次」をクリックします。
-
このドメイン・アカウントのパスワードを入力し、「次へ」をクリックします。
-
詳細は、「終了」をクリックしてください。
タスク3: 定足数ディスクと共有ディスクの作成
WSFCでは、定足数用に専用の共有ディスクを利用して、クラスタ内の複数のノードが同時に制御を引き受けるときに発生する可能性のあるスプリットブレイン状態を回避します。この専用ディスクにより、クラスタ内のすべてのノードがクラスタの状態の統合ビューを持つようになり、競合が回避されます。
このタスクでは、SCSI PRを有効にした2つの異なる共有ブロック・ボリュームを作成します。両方のボリュームで共有リソースを予約するメカニズムとしてPRを有効にし、認可されたノードのみがこれらのリソースにアクセスできるようにします。SCSI PRは、共有ディスクへのアクセスを管理することによってデータの破損を防ぐため、クラスタ化環境での要件です。
-
定足数ディスク:最初の共有ブロックボリュームをクラスタ定足数デバイスとして指定します。このディスクは、すべてのノードがアクセスして同意できる共通リソースを提供することで、WSFCの機能において重要な役割を果たします。このクォーラム・ディスクは、クラスタの状態を判断し、フェイルオーバーおよびクラスタ・リソースの所有権の仮定に関する決定を行うのに役立つため、クラスタ操作目的でのみ使用されます。
-
データ・ディスク: 2番目の共有ブロック・ボリュームをアプリケーションに割り当ててデータを格納します。このディスクを使用して、データベース、ファイル共有、またはクラスタ化されたアプリケーションが必要とするその他のタイプのデータなどのアプリケーション・データをホストします。データ・ストレージに共有ディスクを使用することで、アプリケーションまたはサービスの所有権を担うクラスタ内の任意のノードからデータにアクセスできるため、データの高可用性が保証されます。
これらの2つの異なる共有ブロック・ボリュームを個別のロールで作成し、両方でSCSI PRを有効にすることで、重要なクォーラム機能とクラスタ内で実行されるアプリケーションのデータ・ストレージ・ニーズの両方について、高可用性と冗長性を維持するようにWSFCが適切に構成されていることを確認します。
SCSI PRを有効にしてOCIブロック・ボリュームを作成するには、次のステップを実行します。
-
OCIコンソールにログインし、「ストレージ」、「ブロック・ボリューム」ページに移動して、「ブロック・ボリュームの作成」をクリックします。
-
「ボリューム・サイズおよびパフォーマンス」を調整し、「iSCSIボリューム・アタッチメントの永続予約の有効化」を選択してボリュームのSCSI PRを有効にします。
-
ボリュームをSQL Server VMに1つずつアタッチします。これらのボリュームではSCSI PRが有効になっているため、これらのボリュームは共有の読み取り/書き込み専用モードでのみアタッチできます。この設定では、共有読取り/書込みモードでボリュームをアタッチします。「Oracle Cloudエージェントを使用してiSCSIアタッチされたボリュームに自動的に接続します」を選択し、「アタッチ」をクリックします。
-
定足数ディスクとデータディスクの両方を作成して接続するには、手順1から3を繰り返します。
タスク4: Windows Serverフェイルオーバー・クラスタの構成
このタスクでは、次のことを行います。
-
SQL Server VMsにWSFCロールを追加します。
-
タスク1で作成したセカンダリIPを使用してクラスタを作成および構成します。
タスク4.1: Windows ServerのVMへのWSFCロールの追加
-
ドメイン管理者アカウントを使用してSQL Serverノード1 VMにログインし、「Server Manager」を開き、「ダッシュボード」で「ロールおよび機能の追加」をクリックします。
-
「始める前に」セクションを確認し、「次へ」をクリックします。
-
「Role-based or feature-based installation」を選択し、「Next」をクリックします。
-
「宛先サーバーの選択」で、「サーバー・プールからサーバー」を選択し、
sqlnode1.example.org
が選択されていることを確認し、「次へ」をクリックして続行します。 -
サーバー・ロールは追加されないため、「次へ」をクリックして続行します。
-
「機能」で、「フェイルオーバー・クラスタリング」を選択します。ウィンドウが表示されたら、「機能の追加」をクリックします。
-
「インストールの選択の確認」で詳細を確認し、「インストール」をクリックしてインストールを確認し、インストールが終了したらウィザードを閉じます。
-
2番目のSQL Serverノードにフェイルオーバー・クラスタリング・ツールをインストールするには、ステップ1から7を繰り返します。
タスク4.2: クラスタの作成
-
ドメイン管理者アカウントを使用してWindows Serverノード1 VMにログインし、フェイルオーバー・クラスタ・マネージャを開きます。実行中のクラスタはありません。
-
「フェイルオーバー・クラスタ・マネージャ」を右クリックし、「クラスタの作成...」を選択します。これにより、クラスタの作成ウィザードが開きます。
-
クラスタの作成ウィザードが開いたら、「次へ」をクリックして続行します。
-
「参照」をクリックし、
sqlnode1.example.org
およびsqlnode2.example.org
を選択します。 -
「Yes、 I click Next、 run the configuration tests、 then return to the process of creating the cluster」を選択し、「Next」をクリックします。
-
「すべてのテストの実行」を選択し、「次へ」をクリックします。
-
「確認」ウィンドウで、「次へ」をクリックし、すべてのテストが終了するまで待機して、「終了」をクリックします。OCIではSCSI PRが現在サポートされており、「SCSI-3永続予約の検証」テストに合格したことがわかります。
-
「クラスタ名」を入力し、NetBIOS制約を考慮します。「次」をクリックします。
-
作成する前にクラスタを確認し、「次へ」をクリックします。
-
クラスタが正常に作成されたら、「終了」をクリックします。
-
フェイルオーバー・クラスタ・マネージャを開くと、新しく作成されたクラスタが表示されます。
-
クラスタのステータスが「クラスタ・コア・リソース」セクションの「オフライン」であることを確認します。リソースを展開し、まだ構成されていないクラスタIPアドレスを見つけます。「失敗」ステータスのIPアドレスを右クリックし、「プロパティ」をクリックします。
-
「一般」タブで、タスク1でこのノードに構成されている静的IPアドレスを指定し、「適用」をクリックします。
-
構成したIPアドレスを右クリックし、「オンライン化」をクリックします。
-
クラスタの作成が完了したら、クラスタを拡張し、「ストレージ」セクションに移動します。ここでは、「ディスク」を選択して、両方の共有ブロック・ボリューム(指定されたクォーラム・ディスクとデータ・ディスク)がクラスタによって適切にリストおよび認識されていることを確認します。
タスク5: SQL Serverのインストールおよび構成
このタスクでは、新しいSQL Serverフェイルオーバー・クラスタのインストールについて説明します。
-
ダウンロードしたMSSQLソフトウェア・バンドルから
setup.exe
を実行します。 -
「インストール」を選択します。
-
「新規SQL Serverフェイルオーバー・クラスタのインストール」を選択します。
-
「プロダクト・キー」と入力し、「次へ」をクリックします。
-
「ライセンス条件」に同意し、「次へ」をクリックします。
-
「Microsoft Update」で、「Next」をクリックします。インストーラはソフトウェアの更新をスキャンし、ダウンロードしてインストール・プロセスを開始します。
-
フェイルオーバー・クラスタ・ルールのインストールを行います。「次」をクリックします。
-
「機能の選択」で、「データベース・エンジン・サービス」を選択し、「次へ」をクリックします。
-
「インスタンス構成」で、「SQL Serverネットワーク名」の名前を入力し、「デフォルト・インスタンス」または「名前付きインスタンス」を選択して「次へ」をクリックします。
-
「クラスタ・リソース・グループ」で、「次へ」をクリックします。
-
「Cluster Disk Selection」で、「Cluster Disk 2」を選択し、「Next」をクリックします。
-
「クラスタ・ネットワーク構成」で、IPv4アドレスを割り当て、「次へ」をクリックします。
-
「サーバー構成」で、タスク2で作成したSQLサーバーの「サービス・アカウント名」および「パスワード」を入力し、「次へ」をクリックします。
-
「データベース・エンジン構成」で、「認証モード」およびその他の設定を構成し、「次へ」をクリックします。
-
「インストール準備完了」で、「インストール」をクリックします。
-
インストールの進行状況が表示されます。「閉じる」をクリックします。
-
「フェイルオーバー・クラスタ・マネージャ」に移動し、クラスタを展開して「ストレージ」セクションに移動し、ディスクを確認します。次の図に示すように、2つ目のディスクがSQL Serverに割り当てられています。
-
「フェイルオーバー・クラスタ・マネージャ」に移動し、クラスタを展開して「ロール」セクションに移動します。SQL Serverクラスタが表示されます。
-
SQL Server Management Studioで、データベースに接続できるようになりました。デプロイメントの準備が整い、可用性が高くフォルト・トレラントになるように設定されています。
次のステップ
このチュートリアルでは、OCI Block VolumesサービスのSCSI PR機能を使用してMSSQLでWSFCクラスタを設定するプロセスを順を追って説明します。このチュートリアルに従うことで、SCSI PRを使用するMSSQLで完全に機能するWSFCクラスタが用意されるようになりました。高可用性を確保し、ダウンタイムを最小限に抑えるために、クラスタを定期的にテストおよび検証してください。
承認
- 作成者 - Chakri Nelluri (OCI Block Storage製品管理)
その他の学習リソース
docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。
製品ドキュメントについては、Oracle Help Centerを参照してください。
Deploy Microsoft SQL Server Windows Server Failover Cluster for HA and DR on Oracle Cloud Infrastructure
G32744-02
Copyright ©2025, Oracle and/or its affiliates.