ノート:

OCIへのHAおよびDR用のMicrosoft SQL Server Always On可用性グループのデプロイ

イントロダクション

Microsoft SQL Serverのデプロイメントは、Oracle Cloud Infrastructure (OCI)の一般的なユースケースです。OCIデプロイメントの場合によくあるように、お客様はビジネス継続性の要件に対応する弾力性の高いアーキテクチャを求めています。そのため、高可用性とディザスタ・リカバリのためにSQL Serverをデプロイする方法を理解することは、これらのお客様にとって不可欠です。

SQL Serverのビジネス継続性ソリューションがいくつかあります。このチュートリアルで説明するソリューションは、SQL Server管理者がAlways On可用性グループで広く採用されています。SQL Server Always On Failover Cluster Instances (FCI)などのソリューションは、OCIにデプロイすることもできますが、このチュートリアルからは除外されます。

このチュートリアルは、お客様のユース・ケースにインスパイアされ、OCIへのSQL Server Always On可用性グループ・デプロイメントの3つの主要要素を1つのドキュメントにまとめることで、自社を差別化します。

アーキテクチャ

このチュートリアルでは、次のアーキテクチャを使用します。

アーキテクチャ

目的

次を作成して構成します。

前提条件

このチュートリアルの除外

タスク1: セカンダリIPの構成

SQL ServerノードVMごとに、Windows Serverフェイルオーバー・クラスタおよびAlways On可用性グループ・リスナーに必要なセカンダリIPを作成します。

  1. OCIコンソールで、SQL Serverノード1 VMに移動し、「リソース」メニューで「アタッチされたVNIC」を選択します。

    VNICの選択

  2. プライマリVNICを選択し、「リソース」メニューで「IPv4アドレス」を選択します。

    VNICの詳細

    VNIC IPv4アドレス

  3. 「セカンダリ・プライベートIPアドレスの追加」を選択し、新しいプライベートIPをVNICに追加するための詳細を入力します。「作成」をクリックすると、このVNICに関連付けられた新しいセカンダリIPが表示されます。これがWSFC IPです。

    VNIC IPv4アドレス

  4. Always On可用性グループ・リスナーに別のセカンダリIPを作成するために、同じVNICでステップ1から3を繰り返します。

  5. 他のSQL ServerノードVMに対してステップ1から4を繰り返します。

タスク2: SQL Serverサービス・アカウントの作成

SQL Serverは専用ドメイン・アカウントを使用する必要があります。このタスクでは、このアカウントを作成します。チュートリアルの後半で、このアカウントを使用して、各ノードでSQL Serverサービスを構成します。

  1. ドメイン管理者アカウントを使用してドメインコントローラにログインし、Active Directoryユーザーとコンピュータに移動します。

    OpenAD

  2. このチュートリアル用に構成したドメインを展開します。

    ExpandAD

  3. 「ユーザー」を右クリックし、「新規ユーザー」を選択して、新規ユーザーを作成します。

    新規ユーザー

  4. 次の詳細を入力し、「次へ」をクリックします。

    新規ユーザー詳細

  5. このドメイン・アカウントのパスワードを入力し、「次へ」をクリックします。

    新規ユーザー・パスワード

  6. 詳細を確認して、「終了」をクリックします。

    新規ユーザー終了

タスク3: 目撃者ファイル共有の構成

前述のとおり、このチュートリアルのアーキテクチャでは、ファイル共有証人を使用して定足数証人を実装します。このタスクでは、共有フォルダを作成します。後続のタスクでは、この共有フォルダを使用して Windows Serverフェイルオーバークラスタを構成します。

  1. ドメイン管理者アカウントを使用して定足数 VMにログインし、証人フォルダを作成します。

    証人フォルダーが作成されました

  2. 作成したフォルダを右クリックし、「プロパティ」を選択します。「共有」タブで、「共有」をクリックし、「全員」を選択してフォルダを共有します。より厳密にしたい場合は、タスク2で作成したSQL Serverサービス アカウントを選択します。

    目撃者フォルダの共有

  3. フォルダが共有されていることを確認し、「完了」をクリックします。

    目撃者フォルダ共有

タスク4: Windows Serverフェイルオーバー・クラスタの構成

SQL Server Always On可用性グループは、Windows Serverフェイルオーバー・クラスタ(WSFC)テクノロジで実行されます。このタスクでは、次のことを行います。

タスク4.1: SQL Server VMsへのWSFCロールの追加

  1. ドメイン管理者を使用してSQL Serverノード1 VMにログインし、Server Managerを開き、「ダッシュボード」「ロールおよび機能の追加」をクリックします。

    WSFCロールと機能の追加

  2. 「次へ」をクリックして「インストール・タイプ」に進みます。

    WSFCロールと機能の追加

  3. Role-based or feature-based installation」を選択し、「Next」をクリックします。

    WSFCロール・ベースまたは機能ベースのインストール

  4. 「宛先サーバーの選択」で、「サーバー・プールからサーバー」およびSQL Serverノード1を選択し、「次へ」をクリックして続行します。

    WSFCサーバーの選択

  5. 「機能」で、「フェイルオーバー・クラスタリング」を選択します。これを行うと、ウィンドウが表示され、「機能の追加」をクリックします。

    WSFC機能選択

    WSFC追加機能

  6. 「インストールの選択の確認」で、詳細を確認し、「インストール」をクリックしてインストールを確認します。

    WSFC機能のインストール

  7. インストールが完了したら、ウィザードを閉じます。

    WSFC機能のインストールが終了しました

  8. インストールを確認するには、検索バーに Failover Cluster Managerと入力します。これを開いて、まだクラスタが含まれていないことを確認できます。

    WSFCの検索および確認

    WSFC準備完了

  9. 他のSQL ServerノードVMでステップ1から8を繰り返します。

タスク4.2: クラスタの作成

  1. ドメイン管理者アカウントを使用してSQL Serverノード1 VMにログインし、フェールオーバー クラスター マネージャを開きます。実行中のクラスタがないことがわかります。

    WSFCクラスタ作成開始

  2. [フェールオーバー クラスター マネージャ]を右クリックし、[クラスタの作成...]を選択します。これにより、[クラスタの作成ウィザード]が開きます。

    WSFCクラスタ作成

  3. クラスタの作成ウィザードが開いたら、「次へ」をクリックして続行します。

    WSFCクラスタ作成ウィザード

  4. 「参照」をクリックし、SQL Serverノード1およびSQL Serverノード2 VMを選択します。

    WSFCクラスタ参照ノードの作成

  5. 適切なノードを選択してから、「Next」をクリックします。

    WSFCクラスタ作成確認ノード

  6. Yes、 When I click Next、 run the configuration tests、 and then return to the process of creating the cluster」を選択して、「Next」をクリックします。

    WSFCクラスタ実行の作成検証

  7. 「すべてのテストを実行」を選択し、「次へ」をクリックします。

    WSFCクラスタ作成すべての実行テスト

  8. 「確認」ウィンドウで、「次へ」をクリックします。

    WSFCクラスタの作成 すべてのテストの確認

    すべてのテストが終了するまで待ちます。

    WSFCクラスタ作成テスト実行中

  9. 終了」をクリックします。

    WSFCクラスタ作成テストが終了しました

  10. 「クラスタ名」を入力し、NetBIOS制約を考慮します。

    WSFCクラスタ作成名

  11. 作成する前にクラスタを確認し、「次へ」をクリックします。

    WSFCクラスタ作成の確認設定

  12. クラスタが正常に作成されたら、「終了」をクリックします。

    WSFCクラスタ作成終了

  13. フェールオーバー クラスター マネージャを開くと、新しく作成されたクラスタが表示されます。

    WSFC新規作成されたクラスタ

  14. 「クラスタ・コア・リソース」セクションのクラスタのステータスが「オフライン」であることに注意してください。リソースを展開し、まだ構成されていないクラスタIPアドレスを見つけます。これから数ステップで実施します。

    WSFCクラスタがオフラインです

タスク4.3: クラスタの構成

  1. クラスタIPを設定する前に、定足数証人を構成します。クラスタ名を右クリックし、「その他のアクション」および「クラスタ定足数設定の構成...」を選択します。これにより、構成ウィザードが開きます。

    WSFCクラスタ定数

  2. 「クラスタ定足数の構成ウィザード」ウィンドウで、「次へ」をクリックして続行します。

    WSFCクラスタ・クォーラム開始

  3. 定足数監視の選択」を選択し、「次へ」をクリックします。

    WSFCクラスタ・クォーラム構成オプション

  4. 「ファイル共有証人の構成」を選択し、「次へ」をクリックします。

    WSFCクラスタ定足数選択の目撃者

  5. タスク3で構成されたファイル共有パスを入力し、「次へ」をクリックします。

    WSFCクラスタ・クォーラム・ファイル共有パス

  6. 定足数構成設定を確認し、「次へ」をクリックします。

    WSFCクラスタ定足数確認設定

  7. 定足数証人が構成されます。構成が正常に完了したら、「終了」をクリックしてウィザードを閉じます。

    WSFCクラスタ・クォーラム構成の終了

  8. タスク1で作成したIPをクラスタに関連付けます。これにより、クラスタが起動し、動作可能になります。フェールオーバー クラスター マネージャで、クラスタ コア リソースを展開し、[失敗]ステータスのIPアドレスを右クリックして、[プロパティ]をクリックします。

    WSFCクラスタIPプロパティ

  9. 「一般」タブで、タスク1でこのノード用に構成された静的IPアドレスを指定し、「適用」をクリックします。

    WSFCクラスタIP設定

  10. もう一方のIPに対して手順8と9を繰り返します。クラスタを正しく設定します。クラスタ名リソースがオンラインになると、ドメインコントローラサーバーが新しい Active Directoryコンピュータオブジェクトで更新されます。これで、Always On可用性グループ構成に移行する準備ができました。

    WSFCクラスタIP設定終了

タスク5: サンプル・データベースのAlways On可用性グループの構成

このタスクでは、次のことを行います。

タスク5.1: クラスタ・ドメイン・コンピュータ・オブジェクトへの権限の付与

  1. ドメイン管理者アカウントを使用してドメインコントローラにログインし、Active Directoryユーザーとコンピュータを開きます。

    Always On可用性グループ・オープンAD

  2. 「表示」をクリックし、「拡張機能」を選択して、拡張機能を表示します。

    Always On可用性グループAD View Advanced Features

  3. 「コンピュータ」を右クリックし、「プロパティ」を選択します。

    Always On可用性グループADコンピュータ・プロパティ

  4. 「セキュリティー」タブに移動し、「追加」をクリックします。

    Always On可用性グループAD Computers Add

  5. ユーザー、コンピュータ、サービス・アカウントまたはグループ・ウィザードで、「オブジェクト・タイプ...」をクリックします。

    Always On可用性グループADオブジェクト・タイプ

  6. 「コンピュータ」を選択し、「OK」をクリックします。

    Always On可用性グループADコンピュータ・オブジェクト

  7. クラスタの名前を入力し、「OK」をクリックします。これで、グループまたはユーザー名のリストにクラスタ・コンピュータ・オブジェクトが表示されます。

    Always On可用性グループADクラスタ・オブジェクト名

  8. クラスタ・コンピュータ・オブジェクトを選択し、「詳細」をクリックして権限を構成します。

    Always On可用性グループADクラスタ・コンピュータ・オブジェクトの詳細設定

  9. 「権限」タブで、クラスタ・コンピュータ・オブジェクトを選択し、「編集」をクリックします。

    Always On可用性グループADクラスタ・コンピュータ・オブジェクト権限

  10. 「コンピュータ・オブジェクトの作成」権限エントリを選択し、「OK」をクリックします。

    Always On可用性グループADコンピュータ・オブジェクトの作成

  11. これで、コンピュータの拡張セキュリティ設定に戻り、「適用」「OK」の順にクリックします。これにより、クラスタのコンピュータ・アカウントには、Always On可用性グループが機能するために必要な権限があります。

    Always On可用性グループ「AD Back at Advanced Security Settings for Computers」

    Always On可用性グループ「AD Back at Computers Properties」

タスク5.2: ノードでのAlways On可用性グループの有効化

  1. ドメイン管理者アカウントを使用してSQL Serverノード1 VMにログインし、SQL Server Configuration Managerを開きます。

    Always On可用性グループOpen SQL Server Configuration Manager

  2. 「SQL Serverサービス」をクリックし、「SQL Server (MSSQL SERVER)」を右クリックして「プロパティ」を選択します。

    Always On可用性グループSQL Serverサービス・プロパティ

  3. 「Always On可用性グループ」タブで、「Always On可用性グループの有効化」を選択します。タスク4.2ですでに作成されているクラスタの名前であるWindows Serverフェイルオーバー・クラスタに注目し、「適用」をクリックします。サービスを再起動するための警告メッセージが表示されます。「OK」をクリックして変更を適用します。サービスが再開されます。

    Always On可用性グループ チェックマークAlways On可用性グループを有効化

  4. SQL Serverサービスが自動的に再起動されない場合は、手動で再起動し、SQL Serverサービスを右クリックして「再起動」をクリックします。

    Always On可用性グループ 再起動サービス・メッセージ

  5. SQL Serverサービスを右クリックして、「プロパティ」を選択し、「ログオン」タブに移動します。「このアカウント」を選択し、タスク2で作成したSQL Serverアカウントの詳細を入力します。「適用」「OK」の順にクリックします。

    Always On可用性グループ・サービス・アカウント構成

  6. SQL Serverノード2 VMに対してステップ1から5を繰り返します。

タスク5.3: Always On可用性グループのサンプル・データベースの作成およびバックアップ

  1. ドメイン管理者アカウントを使用してSQL Serverノード1 VMにログインし、SQL Server Management Studioを開き、そのノードのSQL Serverインスタンスに接続します。

    Always On可用性グループOpen SQL Server Mgmt Studio

  2. 次の図に示すように、「NEW問合せ」を選択し、データベースの作成問合せを使用してサンプル・データベースを作成します。

    Always On可用性グループ新規問合せ

    Always On可用性グループの作成

  3. オブジェクト・エクスプローラ「データベース」を展開すると、ステップ2で作成したサンプル・データベースが表示されます。右クリックして「タスク」をクリックし、「バックアップ...」をクリックします。

    Always On可用性グループ・サンプル・データベース・バックアップ

  4. 「バックアップ・タイプ」として「全体」を選択します。バックアップの保存先を確認して確認し、「OK」をクリックします。

    Always On可用性グループ・サンプル・データベース・フル・バックアップ

  5. バックアップが正常に完了したことを示すメッセージが表示されます。「OK」をクリックします。

    Always On可用性グループ・サンプル・データベース正常なバックアップ

タスク5.4: サンプル・データベースの可用性グループの作成

  1. バックアップが作成され、可用性グループの構成を開始する準備ができました。「Always On High Availability」を右クリックし、「New Availability Group Wizard...」を選択します。

    Always On可用性グループ 新規AGウィザード

  2. 「新しい可用性グループの作成」で、「次へ」をクリックして続行します。

    Always On可用性グループ 新規AGウィザード 次へ

  3. 可用性グループ名を入力し、「クラスタ・タイプ」として「Windows Serverフェイルオーバー・クラスタ」を選択し、「次へ」をクリックします。

    Always On可用性グループ 新規AG名

  4. タスク5.3で作成したサンプル・データベースを選択し、「次へ」をクリックします。

    Always On可用性グループ 新規AG Selectデータベース

  5. 「レプリカの指定」ウィンドウで、「レプリカの指定」および「レプリカの追加...」をクリックして、ノード2のレプリカを選択します。ウィンドウで、ノード2サーバーVMの名前を入力し、「接続」をクリックします。

    Always On可用性グループ 新しいAG Selectレプリカ

  6. これで、プライマリ・ロールを持つレプリカと、セカンダリ・ロールを持つレプリカの両方が表示されます。可用性モードは要件に応じて変更できます。「次へ」をクリックすると、「リスナー」タブが表示されます。現時点ではスキップします。このチュートリアルの後半で、リスナーを構成します。

    Always On可用性グループ 新規AG選択レプリカ

  7. 「データ同期の選択」で、「自動シード」を選択し、「次へ」をクリックします。

    Always On可用性グループ 新しいAG自動シード

  8. 構成の検証が実行されます。リスナー構成以外のすべての検証結果が成功していることがわかります。「次」をクリックします。

    Always On可用性グループ 新規AG検証

  9. 「サマリー」で、「終了」をクリックして、可用性グループの作成と構成を完了します。

    Always On可用性グループ 新規AG終了構成

  10. 「結果」に、可用性グループ構成が正常に完了したことを通知するメッセージが表示されます。「閉じる」をクリックします。

    Always On可用性グループ新規AG正常な構成

可用性グループが作成され、オブジェクト・エクスプローラでその詳細を確認できます。

Always On可用性グループ 新規AGコンサルティング詳細

タスク5.5: 可用性グループ・リスナーの作成

このタスクでは、タスク5.4で作成した可用性グループのリスナーを作成します。リスナーは、Always On可用性グループ構成上のデータベースへの接続を提供する仮想ネットワーク名です。これにより、クライアントはSQL Serverの物理インスタンス名を知らなくてもレプリカに接続できます。リスナーはトラフィックをルーティングするため、フェイルオーバーの発生後にクライアント接続文字列を変更する必要はありません。

  1. オブジェクト・エクスプローラで、「可用性グループ」とタスク5.4で作成した可用性グループを展開し、「可用性グループ・リスナー」を右クリックして「リスナーの追加...」を選択します。

    Always On可用性グループ リスナーの追加

  2. リスナーのリスナーDNS名を入力し、ネットワーク・モードでポート1433および静的IPを指定します。「追加」をクリックして、タスク1で作成したリスナーIPを追加します。

    Always On可用性グループ・リスナー名ポート

  3. 接続先のノードのサブネットが選択したサブネットであることを確認し、タスク1でリスナー用に作成されたセカンダリIPとともにIPv4アドレスを入力し、「OK」をクリックします。

    Always On可用性グループ・リスナーIP

  4. 2番目のIPを追加するには、「追加...」を再度クリックします。選択したサブネットがもう一方のノードのサブネットであることを確認し、タスク1で他方のノード用に作成されたセカンダリIPのIPアドレスを入力します。「OK」をクリックします。

  5. 構成された両方のIPが表示されることを確認し、「OK」をクリックしてリスナーの作成を終了します。

    Always On可用性グループ構成済IP

  6. オブジェクト・エクスプローラに移動し、「可用性グループ・リスナー」フォルダにリスナーが表示されることを確認します。

    Always On可用性グループ・リスナー(オブジェクト・エクスプローラ)

SQL Server Management Studioでは、任意のSQL Serverノードと同様にリスナーに接続できるようになりました。Always On可用性グループの構成が終了し、アプリケーションの接続を容易にするためのリスナーがあります。これで、デプロイメントはフェイルオーバーの準備ができ、手動で実行できます。

Always On可用性グループ リスナー接続

確認

その他の学習リソース

docs.oracle.com/learnの他のラボをご覧いただくか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。

製品ドキュメントは、Oracle Help Centerを参照してください。