SQL Server 2016 の前提条件を準備する - Azure SQL Managed Instance リンク

適用対象: Azure SQL Managed Instance

この記事では、Managed Instance リンク用に環境を準備する追加手順として、SQL Server 2016 で Windows Server フェールオーバー クラスター (WSFC) を使って Always On 可用性グループ機能を有効にする方法について説明します。

この記事で説明する追加手順は、SQL Server 2016 でのみ必須です。この SQL Server バージョンでは、ホスト Windows OS コンピューターに Windows Server フェールオーバー クラスターが存在しない場合、可用性グループを有効にできないからです。 SQL Server 2016 で可用性グループを有効にするための最小要件は、ローカルの単一ノード (単一コンピューター) クラスターを作成することです。 複数のノードがないため、追加の SQL Server は必要ありません。 ただし、このリンクは、任意の SQL Server バージョン (2016 - 2022) に対してこの種類の環境がある場合に備えて、オプションとして複数ノード クラスター構成をサポートすることもできます。

Windows Server に WSFC モジュールをインストールする

SQL Server をホストしている Windows Server で管理者として次の PowerShell コマンドを実行して、Windows Server フェールオーバー クラスター モジュールをインストールします。

# Run as Administrator in PowerShell on Windows Server OS hosting the SQL Server
# This installs WSFC module on the host OS
Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools

または、サーバー マネージャーを使用して、グラフィカル ユーザー インターフェイスを使用して WSFC モジュールをインストールすることもできます。

単一ノード クラスターを作成する

次の手順で、SQL Server をホストしている Windows OS 上にクラスターを作成します。 これは、次の 2 つの方法を使用して実現できます。

  1. シンプルな PowerShell コマンド -- 後述する特定の制限事項があります。または
  2. フェールオーバー クラスター マネージャー アプリケーション -- 完全な構成の柔軟性が提供されます。

この後、この両方の方法について説明します。

PowerShell を使用してクラスターを作成する

ローカルの単一ノード クラスターを作成する最も簡単な方法は、SQL Server をホストしている Windows Server OS 上でシンプルな PowerShell コマンドを実行することです。 この方法は、ドメインに参加していない単一サーバー コンピューターを対象としているため、制限があります。 この方法を使用してクラスターを作成すると、グラフィカル ユーザー インターフェイスでフェールオーバー クラスター マネージャーを使用してクラスターを管理することはできません。

コンピューターに単一ノード クラスターを簡単に作成する必要がある場合は、次の PowerShell コマンドを実行します。 置換前のコード:

  • スクリプト内の <ClusterName> を、目的のクラスター名にする。 この名前は、スペースと特殊文字を含まない 1 語にする必要があります (例: WSFCluster)
# Run as Administrator in PowerShell on Windows Server OS hosting the SQL Server
# This creates a single-node cluster on the host OS, not joined in the domain
New-Cluster -Name "<ClusterName>" -AdministrativeAccessPoint None -Verbose -Force

将来何らかの理由でクラスターを削除する必要がある場合、これは PowerShell コマンド Remove-Cluster を使ってのみ実行できます。

この方法を使用してクラスターを正常に作成した場合は、「SQL Server で WSFC のアクセス許可を付与する」に進んでください

フェールオーバー クラスター マネージャー アプリケーションを使用してクラスターを作成する

あるいは、SQL Server をホストしている Windows OS でクラスターを作成するより柔軟な方法は、フェールオーバー クラスター マネージャー アプリケーションを使用して、グラフィカル ユーザー インターフェイスから行うことです。 次の手順に従います。

  1. コマンド プロンプトから hostname コマンドを実行して、Windows Server の名前を調べます。

  2. このコマンドの出力 (下の画像でマークされている出力例) を記録するか、このウィンドウを開いたままにします。この名前は、次の手順の 1 つで使用します。

    コマンド プロンプトから Windows Server ホスト名を調べているスクリーンショット。

  3. キーボードで Windows キーを押しながら R キーを押してフェールオーバー クラスター マネージャーを開き、「%windir%\system32\Cluadmin.msc」と入力し、[OK] をクリックします。

    • または、フェールオーバー クラスター マネージャーにアクセスするには、サーバー マネージャーを開き、右上隅にある [ツール] を選択し、[フェールオーバー クラスター マネージャー] を選択します。
  4. Windows クラスター マネージャーで、[クラスターの作成] オプションをクリックします。

    [クラスターの作成] オプションにアクセスしているスクリーンショット。

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

  6. [サーバーの選択] 画面で、Windows Server 名を入力し (キーボード入力するか、先ほど実行した hostname コマンドの出力をコピーして貼り付けます)、[追加] をクリックし、[次へ] をクリックします。

    WSFC の作成時に Windows Server ホスト名を入力しているスクリーンショット。

  7. [検証の警告] 画面で、[はい] のままにして、[次へ] をクリックします。

  8. [開始する前に] 画面で、[次へ] をクリックします。

  9. [テスト オプション] 画面で、[すべてのテストを実行する] をオンにしたまま、[次へ] をクリックします。

  10. [確認] 画面で、[次へ] をクリックします。

  11. [検証] 画面で、検証が完了するまで待ちます。

  12. [概要] 画面で、[完了] をクリックします。

  13. [クラスター管理用のアクセス ポイント] ページで、クラスター名を入力し (例: WSFCluster)、[次へ] をクリックします。

    クラスター名を入力しているスクリーンショット。

  14. [確認] 画面で、[次へ] をクリックします。

  15. [新しいクラスターの作成] 画面で、作成が完了するまで待ちます。

  16. [概要] 画面で、[完了] をクリックします。

以上の手順で、ローカルの単一ノードの Windows Server フェールオーバー クラスターを作成しました。

検証

単一ノード WSFC クラスターが作成されたことを確認するには、次の手順に従います。

  1. フェールオーバー クラスター マネージャーで、左側のクラスター名をクリックし、> 矢印をクリックして展開します。

    • 作成後にフェールオーバー クラスター マネージャーを閉じて再度開いた場合、クラスター名が左側に表示されない場合があります (下の画像を参照)。
  2. 右側の [クラスターへの接続] をクリックし、<Cluster on this server...> に接続するように選択して [OK] をクリックします。

  3. [ノード] をクリックします。

    WSFC の作成を検証しているスクリーンショット。

    • ローカル コンピューターの単一ノードがこのクラスターに追加され、状態が Up であることを確認できるはずです。 この検証により、WSFC 構成が正常に完了したことを確認できます。 これで、フェールオーバー クラスター マネージャー ツールを閉じることができます。

次に、以下の手順に従って、SQL Server で Always On オプションを有効にできることを確認します。

  1. SQL Server 構成マネージャーを開きます

  2. [SQL Server] をダブルクリックします

  3. [AlwaysOn 高可用性] タブをクリックします

    SQL Server で Always On オプションが有効であることを確認しているスクリーンショット。

    • 作成した WSFC の名前が表示されるので、[AlwaysOn 可用性グループを有効にする] オプションをオンにできます。 この検証により、構成が正常に完了したことを確認できます。

SQL Server で WSFC のアクセス許可を付与する

重要

SQL Server 2016 では、Windows OS システム アカウントにアクセス許可を付与することが必須です。 これらのアクセス許可により、SQL Server は Windows Server フェールオーバー クラスターと連携できます。 これらのアクセス許可がない場合、SQL Server 2016 で可用性グループを作成すると失敗します。

次に、SQL Server に対するアクセス許可を NT Authority \ System Windows ホスト OS システム アカウントに付与し、WSFC を使用して SQL Server で可用性グループを作成できるようにします。 SQL Server で次の T-SQL スクリプトを実行します。

  1. SSMS などのクライアントを使用して、SQL Server にログインします
  2. 次の T-SQL コマンドを実行します
-- Run on SQL Server
-- Grant permissions to NT Authority \ System to create AG on this SQL Server
GRANT ALTER ANY AVAILABILITY GROUP TO [NT AUTHORITY\SYSTEM]
GO
GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM]
GO
GRANT VIEW SERVER STATE TO [NT AUTHORITY\SYSTEM]
GO

次のステップ

リンクを使用するには、次を参照してください。

リンクの詳細については、次を参照してください。

他のレプリケーション シナリオについては、以下を検討してください。