Google Cloud NetApp Volumes ブロック ストレージを使用して SQL Server Always On 可用性グループを構成する

このチュートリアルでは、Internet Small Computer System Interface(iSCSI)プロトコルを使用して Google Cloud NetApp Volumes ブロック ストレージを使用し、Compute Engine 仮想マシン(VM)インスタンスに Microsoft SQL Server Always On 可用性グループをデプロイする方法について説明します。SQL Server ストレージに NetApp Volumes を使用すると、スナップショットやクローニングなどの高度なデータ管理機能を備えた、高パフォーマンスのフルマネージド ストレージ サービスにアクセスできます。

目標

このチュートリアルでは、次のタスクについて説明します。

費用

このチュートリアルでは、課金対象である次の Google Cloudコンポーネントを使用します。

料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。

始める前に

始める前に、次の準備をしてください。

  1. コンソールのプロジェクト セレクタページで、プロジェクトを選択または作成します。 Google Cloud Google Cloud

    プロジェクトを選択または作成するために必要なロール

    • プロジェクトを選択する: プロジェクトの選択には特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトを選択できます。
    • プロジェクトを作成する: プロジェクトを作成するには、プロジェクト作成者ロール (roles/resourcemanager.projectCreator)が必要です。これには resourcemanager.projects.create 権限が含まれています。詳しくは、ロールを付与する方法をご覧ください。

    プロジェクト セレクタに移動

  2. プロジェクトで課金が有効になっていることを確認します Google Cloud 。

  3. Compute Engine、Networking、Identity and Access Management、Cloud Storage の管理権限を持つ Google Cloud プロジェクト。
  4. ターゲット リージョンにサブネットがある VPC ネットワーク。
  5. リージョン内に確立された Active Directory サービスと DNS サービス。
  6. コンピュータをドメインに参加させ、RDP を使用して VM にアクセスする権限を持つ Active Directory ユーザー。
  7. VPC ファイアウォール ルールで、iSCSI(TCP 3260)、WSFC(UDP/TCP 3343)、SQL Server(TCP 1433)、SQL Server AG エンドポイント(TCP 5022)、SMB(TCP 445)、RPC(TCP 135、TCP 49152 ~ 65535)のノード間のトラフィックが許可されていることを確認します。
  8. NetApp Volumes API を有効にします。
  9. コンソールで Cloud Shell をアクティブにします。 Google Cloud

    Cloud Shell をアクティブにする

ドメイン アカウントを構成する

SQL Server 用に 2 つの Active Directory アカウントを構成します。

  • インストール アカウント: VM にログインし、クラスタと可用性グループを構成するためのドメイン管理者権限を持つアカウント(DOMAIN\DomainAdmin など)。
  • サービス アカウント: 両方の SQL Server VM の SQL Server サービスと SQL Agent サービスのアカウント(DOMAIN\sqlsvc など)。

SQL Server 用の Compute Engine VM を作成する

Windows Server 2025 で SQL Server 2022 Enterprise を実行する 2 つの Compute Engine インスタンス(sqlnode1sqlnode2)を作成します。

  1. コンソールで [インスタンスの作成] ページに移動します。 Google Cloud

    [インスタンスの作成] に移動

  2. [名前] に sqlnode1 と入力します。

  3. In the [Machine configuration] section, select [General Purpose], and then do the following:

    1. [シリーズ] リストで、[N4] を選択します。
    2. [マシンタイプ] リストで、[n4-highmem-8(8vCPU、64 GB メモリ)] を選択します。
  4. VPC を構成したリージョンゾーン を選択します。

  5. [ブートディスク] セクションで、[変更] をクリックし、次の操作を行います。

    1. [公開イメージ] タブで、[OS] リストから [Windows 上の MS SQL Server] を選択します。
    2. [バージョン] リストから [Windows Server 2025 Datacenter 上の SQL Server 2022 Enterprise] を選択します。
    3. [ブートディスクの種類] プルダウン リストで、[Hyperdisk Balanced] を選択します。
    4. [サイズ(GB)] を 50 に設定します。
    5. ブートディスクの構成を保存するには、[選択] をクリックします。
  6. [詳細オプション] セクションを開き、[ネットワーキング] を開きます。

  7. [Network interfaces] で、プロジェクトの VPC と [Subnet] を選択します。

  8. [ネットワーク インターフェース カードの種類] リストで、[gVNIC] を選択します。

  9. [ネットワーク サービス ティア] で [プレミアム] を選択します。

  10. [作成] をクリックします。

  11. これらの手順を繰り返して、sqlnode2 という名前の 2 つ目のインスタンスを作成します。

サーバーをドメインに参加させてクラスタリングの準備をする

sqlnode1sqlnode2 の両方で次の操作を行います。

  1. ローカル管理者アカウントを使用して VM に接続します。
  2. [**サーバー マネージャー**] で [**ローカル サーバー**] を選択します。
  3. [WORKGROUP] リンクを選択します。
  4. [コンピュータ名] セクションで、[変更] を選択します。
  5. [ドメイン] チェックボックスをオンにして、ドメイン名(cvsdemo.internal など)を入力し、[OK] をクリックします。
  6. [Windows セキュリティ] ダイアログで、ドメイン管理者アカウントの認証情報を入力し、[OK] をクリックします。
  7. ドメインのウェルカム メッセージが表示されたら、次の操作を行います。 a. [OK] をクリックします。 b. [閉じる] をクリックし、[今すぐ再起動] を選択します。
  8. VM が再起動したら、ドメイン管理者アカウントを使用して VM に接続します。
  9. VM のローカルの [管理者] グループに DOMAIN\sqlsvc アカウントを追加します。次の PowerShell コマンドを使用できます。
    Add-LocalGroupMember -Group "Administrators" -Member "DOMAIN\sqlsvc"
    
  10. 管理者として PowerShell を開き、次のコマンドを実行して必要な Windows 機能をインストールします。

    # Install Failover Clustering and tools
    Install-WindowsFeature Failover-Clustering, RSAT-Clustering-PowerShell, RSAT-Clustering-CmdInterface -IncludeAllSubFeature -IncludeManagementTools
    # Install and enable MPIO for iSCSI
    Install-WindowsFeature -Name Multipath-IO
    Enable-MSDSMAutomaticClaim -BusType "iSCSI"
    # Install .NET and other SQL prereqs
    Install-WindowsFeature NET-Framework-45-Core, NET-Framework-45-Features
    Install-WindowsFeature RSAT-AD-PowerShell
    
  11. VM の iSCSI 修飾名(IQN)を取得するには、iscsicpl.exe を実行して [構成] タブに移動し、[イニシエータ名] をコピーします。または、次の PowerShell コマンドを実行します。

    Get-InitiatorPort | Select-Object NodeAddress
    

    sqlnode1sqlnode2 の両方の IQN を記録します。これは次のセクションで必要になります。例: iqn.1991-05.com.microsoft:sqlnode1.cvsdemo.internal

NetApp Volumes ブロック ストレージ ボリュームを作成する

ホストグループ、ストレージ プール、iSCSI ボリュームを作成する手順は次のとおりです。

ホストグループの作成

ホストグループを使用すると、作成したボリュームにアクセスできるのは指定したホスト(SQL Server VM)のみになります。

  • Cloud Shell で、sqlnode1sqlnode2 の IQN を含むホストグループを作成します。

    gcloud netapp host-groups create HOST_GROUP_NAME 
    --location=LOCATION
    --type=ISCSI_INITIATOR
    --hosts=SQLNODE1_IQN,SQLNODE2_IQN
    --os-type=WINDOWS
    --description="SQL Server AG nodes"

    次の情報を置き換えます。

    • HOST_GROUP_NAME: ホストグループの名前(sql-ag-hosts など)。
    • LOCATION: ホストグループのリージョン(us-west1 など)。
    • SQLNODE1_IQN: sqlnode1 の IQN。
    • SQLNODE2_IQN: sqlnode2 の IQN。

ストレージ プールをプロビジョニングする

  • Cloud Shell で、ボリュームのストレージ プールを作成します。

    gcloud netapp storage-pools create POOL_NAME 
    --project=PROJECT_ID
    --location=ZONE
    --service-level=Flex
    --type=Unified
    --capacity=1024
    --total-throughput=64
    --total-iops=1024
    --network=name=VPC_NAME,psa-range=PSA_RANGE_NAME

    次の情報を置き換えます。

    • POOL_NAME: ストレージ プールの名前(sql-pool など)。
    • PROJECT_ID: 実際の Google Cloud プロジェクト ID。
    • ZONE: ストレージ プールのゾーン。VM のゾーンと一致する必要があります(us-west1-b など)。
    • VPC_NAME: VPC ネットワークの名前。
    • PSA_RANGE_NAME: プライベート サービス アクセス接続の割り当てられた範囲の名前。

ボリュームの作成

各ノードの SQL Server データ、ログ、tempdb、バックアップ用に個別のボリュームを作成します。

  • Cloud Shell で、作成する必要があるボリュームごとに次のコマンドを実行します。

    gcloud netapp volumes create VOLUME_NAME 
    --project=PROJECT_ID
    --location=ZONE
    --storage-pool=POOL_NAME
    --capacity=200
    --protocols=ISCSI
    --block-devices="name=VOLUME_NAME,host-groups=projects/PROJECT_ID/locations/LOCATION/hostGroups/HOST_GROUP_NAME,os-type=WINDOWS"
    --snapshot-directory=false

    VOLUME_NAME は、各ボリュームの一意の名前に置き換えます。この 2 ノードのチュートリアルでは、各ノードのデータ、ログ、tempdb、バックアップのボリュームを作成するために、コマンドを 8 回実行する必要があります(sqlnode1-datasqlnode1-logsqlnode1-tempsqlnode1-backupsqlnode2-datasqlnode2-logsqlnode2-tempsqlnode2-backup など)。

各 SQL VM に iSCSI ボリュームをマウントする

各 VM(sqlnode1sqlnode2)で、その特定のノード用に作成したボリュームをマウントします。

  1. コンソールで、[**NetApp Volumes**] の [**ボリューム**] ページに移動します。 Google Cloud

    [ボリューム] に移動

    構成するノードに割り当てられたボリュームを選択します。iSCSI の [ターゲットの詳細] セクションに表示されている [ターゲット ポータル] IP アドレスをメモします。ボリュームに接続するには、これらのアドレスが必要です。

  2. VM で、管理者として PowerShell を開き、次のコマンドを実行します。例の IP は、ボリュームのターゲット ポータル IP に置き換えます。

    "10.165.128.216","10.165.128.217" | ForEach-Object { New-IscsiTargetPortal -TargetPortalAddress $_ }
    

  3. iscsicpl.exe を実行して [iSCSI イニシエータのプロパティ] を開きます。

  4. [ターゲット] タブに移動し、リストからボリューム ターゲットのいずれかを選択して [接続] をクリックします。

  5. [ターゲットに接続] ダイアログで、[マルチパスを有効にする] を選択して [詳細設定] をクリックします。

  6. [詳細設定] ダイアログで、次の操作を行います。

    1. [**ローカル アダプタ**] で [**Microsoft iSCSI イニシエータ**] を選択します。
    2. [**イニシエータ IP**] で、VM の IP アドレスを選択します。
    3. [**ターゲット ポータル IP**] で、検出したポータル IP のいずれかを選択します。
    4. [OK] をクリックします。
  7. [ターゲットに接続] ダイアログで、[OK] をクリックします。

  8. VM に関連付けられているすべてのターゲットに対して、接続手順を繰り返します。

  9. iSCSI デバイスの MPIO を構成するには、[コントロール パネル] または [サーバー マネージャー] から [MPIO のプロパティ] を開きます。

  10. [マルチパスの検出] タブをクリックします。

  11. [iSCSI デバイスのサポートを追加する] を選択して [追加] をクリックします。プロンプトが表示されたら、VM を再起動します。

  12. 再起動後、[デバイス マネージャー] を開き、[ディスク ドライブ] を展開します。iSCSI ディスクはマルチパス デバイスとして表示されます。

  13. [ディスクの管理](compmgmt.msc)を開きます。新しいディスクごとに、次の操作を行います。

    1. ディスクをオンラインにします。
    2. ディスクを初期化します(GPT)。
    3. 新しいボリュームを作成し、ドライブ文字を割り当てます(データの場合は D、ログの場合は E、バックアップの場合は F、tempdb の場合は G)。NTFS を使用してフォーマットし、割り当てユニット サイズ64K にします。
  14. 新しくフォーマットしたドライブに SQL Server のディレクトリ構造を作成します。次に例を示します。

    $paths = "D:\MSSQL\DATA","E:\MSSQL\Log","F:\MSSQL\Backup","G:\MSSQL\Temp"
    $paths | ForEach-Object { New-Item -ItemType Directory -Path $_ -Force }
    

SQL Server を構成する

それぞれのボリュームをマウントした後、sqlnode1sqlnode2 の両方で次の操作を行います。

  1. SQL Server 構成マネージャー を開きます。
  2. 左ペインで [SQL Server Services] を選択します。
  3. 右ペインで [SQL Server(MSSQLSERVER)] を右クリックし、[プロパティ] を選択して [ログオン] タブに移動し、[アカウント名] をサービス アカウント(DOMAIN\sqlsvc)に変更します。パスワードを入力して [OK] をクリックします。
  4. SQL Server Agent(MSSQLSERVER) について、前の手順を繰り返します。
  5. ドメイン管理者アカウントを使用して、SQL Server Management Studio(SSMS)で SQL Server インスタンスに接続します。
  6. サービス アカウントのログインを作成し、必要な権限を付与します。
    USE [master];
    GO
    CREATE LOGIN [DOMAIN\sqlsvc] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english];
    GO
    ALTER SERVER ROLE [sysadmin] ADD MEMBER [DOMAIN\sqlsvc];
    GO
    
  7. SSMS で次のスクリプトを実行して、デフォルトのデータベース、ログ、バックアップ、tempdb のパスをマウントした iSCSI ボリュームにリダイレクトします。
    USE [master];
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'BackupDirectory', REG_SZ, N'F:\MSSQL\Backup';
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'DefaultData', REG_SZ, N'D:\MSSQL\DATA';
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'DefaultLog', REG_SZ, N'E:\MSSQL\Log';
    GO
    -- Modify model and msdb paths
    ALTER DATABASE model MODIFY FILE (NAME = modeldev, FILENAME = 'D:\MSSQL\DATA\model.mdf');
    ALTER DATABASE model MODIFY FILE (NAME = modellog, FILENAME = 'E:\MSSQL\Log\modellog.ldf');
    ALTER DATABASE msdb  MODIFY FILE (NAME = MSDBData, FILENAME = 'D:\MSSQL\DATA\MSDBData.mdf');
    ALTER DATABASE msdb  MODIFY FILE (NAME = MSDBLog,  FILENAME = 'E:\MSSQL\Log\MSDBLog.ldf');
    GO
    -- Modify tempdb paths
    ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = 'G:\MSSQL\Temp\tempdb.mdf');
    ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = 'G:\MSSQL\Temp\templog.ldf');
    GO
    
  8. SQL Server(MSSQLSERVER) サービスを停止します。
  9. 既存の modelmsdbtempdb ファイルを古い場所(C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA など)から、ドライブ D:、E:、G: の新しい場所に移動します。
  10. master データベースと ERRORLOG を移動するには:
    1. SQL Server 構成マネージャー を開きます。
    2. [SQL Server(MSSQLSERVER)] を右クリックし、[プロパティ] を選択して [スタートアップ パラメータ] タブに移動します。
    3. C: ドライブを指す既存のパラメータ -d-e-l を選択して [削除] をクリックします。
    4. 次のパラメータを追加し、それぞれ [追加] をクリックします。
      • -dD:\MSSQL\DATA\master.mdf
      • -lE:\MSSQL\Log\mastlog.ldf
      • -eE:\MSSQL\Log\ERRORLOG
    5. [OK] をクリックします。
    6. master.mdfmastlog.ldfC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA から D:\MSSQL\DATA\` andE:\MSSQL\Log` にそれぞれ手動で移動します。
    7. ERRORLOG ファイルを古い場所から `E:\MSSQL\Log` に移動します。
  11. SQL Server(MSSQLSERVER) サービスを開始します。

Windows Server フェイルオーバー クラスタリングを設定する

クラスタを作成してクォーラム監視を構成する手順は次のとおりです。

Windows ファイアウォールを構成する

クラスタを作成する前に、各ノードの Windows ファイアウォールで WSFC、SQL Server、iSCSI のトラフィックが許可されていることを確認します。

sqlnode1sqlnode2 で、管理者として PowerShell を開き、次のコマンドを実行します。

New-NetFirewallRule -DisplayName 'Failover Clusters (UDP-In)' -Direction Inbound -Protocol UDP -LocalPort 3343 -Action Allow
New-NetFirewallRule -DisplayName 'Failover Clusters (TCP-In)' -Direction Inbound -Protocol TCP -LocalPort 3343 -Action Allow
New-NetFirewallRule -DisplayName 'RPC Endpoint Mapper' -Direction Inbound -Protocol TCP -LocalPort 135 -Action Allow
New-NetFirewallRule -DisplayName 'File and Printer Sharing (SMB-In)' -Direction Inbound -Protocol TCP -LocalPort 445 -Action Allow
New-NetFirewallRule -DisplayName 'Failover Cluster Manager RPC' -Direction Inbound -Protocol TCP -LocalPort 49152-65535 -Action Allow
New-NetFirewallRule -DisplayName 'iSCSI' -Direction Inbound -Protocol TCP -LocalPort 3260 -Action Allow
New-NetFirewallRule -DisplayName 'SQL Server' -Direction Inbound -Protocol TCP -LocalPort 1433 -Action Allow
New-NetFirewallRule -DisplayName 'SQL Server AG Endpoint' -Direction Inbound -Protocol TCP -LocalPort 5022 -Action Allow

クラスタを作成する

  1. sqlnode1 で、フェイルオーバー クラスタ マネージャーcluadmin.msc)を開きます。
  2. [管理] セクションで、[構成の検証] を選択します。ウィザードに沿って sqlnode1sqlnode2 を検証します。続行する前に、すべてのテストに合格していることを確認してください。
  3. 検証後、[クラスタの作成] を選択します。
  4. [クラスタの作成ウィザード] で、sqlnode1sqlnode2 をクラスタノードとして追加します。
  5. For [Access Point for Administering the Cluster], enter a [Cluster Name] (for example, sqlcluster) and provide a static IP address for the cluster.
  6. プロンプトに沿ってクラスタを作成します。

クラスタ クォーラムのファイル共有を作成する

クラスタ クォーラム監視として機能するファイル共有を、3 番目の VM に作成することをおすすめします。できれば別のゾーンに作成します。

  1. ファイル共有監視として使用する VM に接続します。
  2. [サーバー マネージャー] ウィンドウで、[ツール] > [コンピューターの管理] を選択します。
  3. [システム ツール] > [共有フォルダ] を展開し、[共有] を右クリックして [新しい共有] を選択します。
  4. [共有フォルダの作成ウィザード] に沿って操作します。[フォルダ パス] ページで、共有のフォルダを参照または作成します。
  5. [権限] ページで、[権限をカスタマイズする] を選択します。
  6. [追加] をクリックし、クラスタ名オブジェクト(CNO)アカウント(sqlcluster$ など)に [フルコントロール] を付与します。
  7. ウィザードを完了して共有を作成します。

クラスタ クォーラムを構成する

  1. sqlnode1 で、フェイルオーバー クラスタ マネージャー を開きます。
  2. クラスタ名を右クリックし、[その他のアクション] > [クラスター クォーラム設定の構成] を選択します。
  3. [**クラスター クォーラムの構成ウィザード**] で、[**次へ**] を選択します。
  4. [**クォーラム構成オプションの選択**] ページで、[**クォーラム監視を選択する**] を選択して [**次へ**] をクリックします。
  5. [クォーラム監視を選択する] ページで、[ファイル共有監視を構成する] を選択して [次へ] をクリックします。
  6. [ファイル共有パス] で、作成した共有のパス(\\witness-server\quorum など)を入力して [次へ] をクリックします。
  7. 設定を確認して [次へ] をクリックし、[完了] をクリックします。

Always On 可用性グループを構成する

可用性グループを有効にして構成するには、このセクションの手順を両方の SQL Server VM に適用します。

SQL Server で可用性グループを有効にする

  1. SQL Server 構成マネージャー を開きます。
  2. ブラウザ ツリーで [SQL Server Services] を選択します。
  3. [SQL Server(MSSQLSERVER)] を右クリックし、[プロパティ] を選択します。
  4. [Always On 高可用性] タブを選択し、[Always On 可用性グループを有効にする] を選択します。
  5. [適用]、[OK] の順にクリックします。SQL Server サービスを再起動します。

可用性グループのデータベースを作成する

  1. SSMS を使用して sqlnode1 に接続します。
  2. [オブジェクト エクスプローラー] ペインで、[データベース] を右クリックして [新しいデータベース] を選択します。
  3. MyDB1[Database name] に入力して [OK] をクリックします。
  4. MyDB1 を右クリックし、[タスク] > [バックアップ] を選択します。完全 バックアップを実行します。データベースの復旧モデルが [完全] であることを確認します。
  5. MyDB1 を右クリックし、[タスク] > [バックアップ] を選択します。トランザクション ログ のバックアップを実行します。
  6. フル バックアップ ファイルとトランザクション ログ バックアップ ファイルを sqlnode2 にコピーします。
  7. SSMS を使用して sqlnode2 に接続します。[データベース] を右クリックして [データベースの復元] を選択します。
  8. sqlnode1 から MyDB1 のフル バックアップを復元し、[オプション] ページで [RESTORE WITH NORECOVERY] を指定します。
  9. sqlnode2MyDB1 を右クリックし、[タスク] > [復元] > [トランザクション ログ] を選択します。トランザクション ログのバックアップを復元し、[RESTORE WITH NORECOVERY] も指定します。

可用性グループを作成する

  1. SSMS を使用して sqlnode1 に接続します。
  2. In [Object Explorer], right-click [Always On High Availability] and select [New Availability Group Wizard].
  3. 可用性グループ名(sql-ag など)を指定します。
  4. 含めるデータベースとして MyDB1 を選択します。
  5. [レプリカの指定] ページで、[レプリカを追加] をクリックして sqlnode2 に接続します。
  6. 両方のレプリカで [自動フェイルオーバー] を有効にし、[可用性モード] を [同期コミット] に、[読み取り可能なセカンダリ] を [はい] に設定します。
  7. [エンドポイント] タブに移動し、ポート 5022 が使用されていることを確認します。
  8. [初期データ同期の選択] ページで、[結合のみ] を選択します。
  9. ウィザードを完了して可用性グループを作成します。

可用性グループの DNN リソースを作成する

ロードバランサの代わりに、分散ネットワーク名(DNN)を使用してクライアント トラフィックを可用性グループ リスナーにルーティングします。

  1. [フェイルオーバー クラスタ マネージャー] を開き、[役割] を展開して可用性グループの役割を選択します。
  2. [リソース] で、可用性グループのリソースを右クリックし、[リソースの追加] > [クライアント アクセス ポイント] を選択します。
  3. DNN リスナーの名前 を指定して、ウィザードを完了します。
  4. 新しい DNN リソースをオンラインにします。
  5. デフォルトでは、クラスタは DNN DNS 名をクラスタ内のすべてのノードにバインドします。SQL Server レプリカをホストしないノードがクラスタにある場合は、DNN の可能なオーナーから除外する必要があります。
    1. 作成した DNN リソースを右クリックして [プロパティ] を選択します。
    2. 可用性グループ レプリカではないノードのチェックボックスをオフにします。
    3. [OK] をクリックします。
  6. DNN リスナー名に接続するようにアプリケーションの接続文字列を更新し、MultiSubnetFailover=True を含めます。

フェイルオーバーをテストする

  1. SSMS を使用して sqlnode1 または sqlnode2 に接続し、次のクエリを実行して、プライマリ レプリカを確認し、両方のレプリカが同期コミットと自動フェイルオーバー用に構成されていることを確認します。

    -- Check primary replica
    SELECT ag.name AS AG_Name, ar.replica_server_name as PrimaryReplica
    FROM sys.dm_hadr_availability_replica_states AS ars
    JOIN sys.availability_groups AS ag ON ag.group_id = ars.group_id
    JOIN sys.availability_replicas ar ON ar.replica_id = ars.replica_id
    WHERE ars.role_desc = 'PRIMARY';

    -- Check replica configuration SELECT replica_server_name, availability_mode_desc, failover_mode_desc FROM sys.availability_replicas WHERE group_id = (SELECT group_id FROM sys.availability_groups WHERE name = N'sql-ag');

  2. 手動フェイルオーバーを開始するには、SSMS でセカンダリ レプリカに接続して次のコマンドを実行します。

    ALTER AVAILABILITY GROUP [sql-ag] FAILOVER;
    

  3. フェイルオーバー後、SELECT @@SERVERNAME; を実行するか、DNN リスナーに再接続してサーバー名を確認することで、新しいプライマリを確認します。

  4. SSMS で可用性グループのステータスを表示するには、[Always On 高可用性] で可用性グループを右クリックして [ダッシュボードの表示] を選択します。

クリーンアップ

プロジェクトの削除

このチュートリアルで使用したリソースについて Google Cloud プロジェクトに課金されないようにするには、プロジェクトを削除します。詳細については、プロジェクトのシャットダウンをご覧ください。