Utiliser le stockage par blocs Google Cloud NetApp Volumes pour configurer des groupes de disponibilité Always On SQL Server

Ce tutoriel explique comment déployer un groupe de disponibilité Microsoft SQL Server Always On sur des instances de machines virtuelles (VM) Compute Engine à l'aide du stockage par blocs Google Cloud NetApp Volumes avec le protocole iSCSI (Internet Small Computer System Interface). L'utilisation de NetApp Volumes pour le stockage SQL Server vous permet d'accéder à un service de stockage hautes performances entièrement géré, doté de fonctionnalités avancées de gestion des données telles que les instantanés et le clonage.

Objectifs

Ce tutoriel vous guide à travers les tâches suivantes :

Coûts

Ce tutoriel utilise les composants facturables suivants de Google Cloud :

Obtenez une estimation des coûts en fonction de votre utilisation prévue à l'aide du simulateur de coût.

Avant de commencer

Avant de commencer, assurez-vous de disposer des éléments suivants :

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Un projet Google Cloud avec des autorisations d'administrateur pour Compute Engine, Mise en réseau, Identity and Access Management et Cloud Storage.
  4. Un réseau VPC avec un sous-réseau dans votre région cible.
  5. Services Active Directory et DNS établis dans la région.
  6. Un utilisateur Active Directory autorisé à rattacher des ordinateurs au domaine et à accéder aux VM à l'aide du protocole RDP.
  7. Assurez-vous que les règles de pare-feu VPC autorisent le trafic entre les nœuds pour iSCSI (TCP 3260), WSFC (UDP/TCP 3343), SQL Server (TCP 1433), les points de terminaison SQL Server AG (TCP 5022), SMB (TCP 445) et RPC (TCP 135, TCP 49152-65535).
  8. Activez l'API NetApp Volumes.
  9. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    Configurer des comptes de domaine

    Configurez deux comptes Active Directory pour SQL Server :

    • Compte d'installation : compte disposant de droits d'administrateur de domaine (par exemple, DOMAIN\DomainAdmin) pour se connecter aux VM et configurer le cluster et le groupe de disponibilité.
    • Compte de service : compte (par exemple, DOMAIN\sqlsvc) pour le service SQL Server et le service SQL Agent sur les deux VM SQL Server.

    Créer des VM Compute Engine pour SQL Server

    Créez deux instances Compute Engine (sqlnode1 et sqlnode2) exécutant SQL Server 2022 Enterprise sur Windows Server 2025 :

    1. Accédez à la page Créer une instance dans la console Google Cloud .

      Accéder à la page Créer une instance

    2. Dans le champ Nom, saisissez sqlnode1.

    3. Dans la section Configuration de la machine, sélectionnez Usage général, puis procédez comme suit :

      1. Dans la liste Série, sélectionnez N4.
      2. Dans la liste Type de machine, sélectionnez n4-highmem-8 (8 processeurs virtuels, 64 Go de mémoire).
    4. Sélectionnez la région et la zone dans lesquelles vous avez configuré votre VPC.

    5. Dans la section Disque de démarrage, cliquez sur Modifier, puis procédez comme suit :

      1. Dans l'onglet Images publiques, sélectionnez SQL Server sur Windows Server dans la liste Système d'exploitation.
      2. Dans la liste Version, sélectionnez SQL Server 2022 Enterprise sur Windows Server 2025 Datacenter.
      3. Dans la liste Type de disque de démarrage, sélectionnez Hyperdisk Balanced.
      4. Définissez Taille (Go) sur 50.
      5. Pour enregistrer la configuration du disque de démarrage, cliquez sur Sélectionner.
    6. Développez la section Options avancées, puis Mise en réseau.

    7. Pour Interfaces réseau, sélectionnez le VPC et le sous-réseau de votre projet.

    8. Dans la liste Type de carte d'interface réseau, sélectionnez gVNIC.

    9. Pour Niveau de service réseau, sélectionnez Premium.

    10. Cliquez sur Créer.

    11. Répétez ces étapes pour créer une deuxième instance nommée sqlnode2.

    Associer les serveurs au domaine et préparer le clustering

    Procédez comme suit sur sqlnode1 et sqlnode2 :

    1. Connectez-vous à la VM à l'aide d'un compte administrateur local.
    2. Dans le Gestionnaire de serveur, sélectionnez Serveur local.
    3. Sélectionnez le lien WORKGROUP.
    4. Dans la section Nom de l'ordinateur, sélectionnez Modifier.
    5. Cochez la case Domaine, saisissez le nom de votre domaine (par exemple, cvsdemo.internal), puis cliquez sur OK.
    6. Dans la boîte de dialogue Sécurité Windows, saisissez les identifiants de votre compte administrateur de domaine, puis cliquez sur OK.
    7. Lorsque le message de bienvenue s'affiche pour le domaine, procédez comme suit : a. Cliquez sur OK. b. Cliquez sur Fermer, puis sélectionnez Redémarrer maintenant.
    8. Une fois la VM redémarrée, connectez-vous à celle-ci à l'aide de votre compte administrateur de domaine.
    9. Ajoutez le compte DOMAIN\sqlsvc au groupe local Administrateurs sur la VM. Vous pouvez utiliser la commande PowerShell suivante :
      Add-LocalGroupMember -Group "Administrators" -Member "DOMAIN\sqlsvc"
      
    10. Ouvrez PowerShell en tant qu'administrateur et exécutez les commandes suivantes pour installer les fonctionnalités Windows requises :

      # 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. Pour obtenir le nom complet iSCSI (IQN) de la VM, exécutez iscsicpl.exe, accédez à l'onglet Configuration, puis copiez le nom de l'initiateur. Vous pouvez également exécuter la commande PowerShell suivante :

      Get-InitiatorPort | Select-Object NodeAddress
      

      Notez l'IQN pour sqlnode1 et sqlnode2. Vous en aurez besoin dans la section suivante. Exemple : iqn.1991-05.com.microsoft:sqlnode1.cvsdemo.internal.

    Créer des volumes de stockage par blocs NetApp Volumes

    Suivez ces étapes pour créer un groupe d'hôtes, un pool de stockage et des volumes iSCSI.

    Créer un groupe d'hôtes

    Un groupe d'hôtes permet de s'assurer que seuls les hôtes spécifiés (vos VM SQL Server) peuvent accéder aux volumes que vous créez.

    • Dans Cloud Shell, créez un groupe d'hôtes contenant les IQN de sqlnode1 et sqlnode2 :

      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"

      Remplacez les informations suivantes :

      • HOST_GROUP_NAME : nom du groupe d'hôtes, par exemple sql-ag-hosts.
      • LOCATION : région de votre groupe d'hôtes, par exemple us-west1.
      • SQLNODE1_IQN : IQN de sqlnode1.
      • SQLNODE2_IQN : IQN de sqlnode2.

    Provisionner un pool de stockage

    • Dans Cloud Shell, créez un pool de stockage pour vos volumes :

      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

      Remplacez les informations suivantes :

      • POOL_NAME : nom du pool de stockage, par exemple sql-pool.
      • PROJECT_ID : ID de votre projet Google Cloud .
      • ZONE : zone de votre pool de stockage, qui doit correspondre à celle de vos VM (par exemple, us-west1-b).
      • VPC_NAME : nom de votre réseau VPC.
      • PSA_RANGE_NAME : nom de la plage allouée de votre connexion Private Services Access.

    Créer des volumes

    Créez des volumes distincts pour les données, les journaux, tempdb et les sauvegardes SQL Server pour chaque nœud.

    • Dans Cloud Shell, exécutez la commande suivante pour chaque volume que vous devez créer :

      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

      Remplacez VOLUME_NAME par un nom unique pour chaque volume. Pour ce tutoriel à deux nœuds, vous devez exécuter la commande huit fois afin de créer des volumes pour les données, les journaux, tempdb et les sauvegardes pour chaque nœud (par exemple, sqlnode1-data, sqlnode1-log, sqlnode1-temp, sqlnode1-backup, sqlnode2-data, sqlnode2-log, sqlnode2-temp et sqlnode2-backup).

    Installer des volumes iSCSI sur chaque VM SQL

    Pour chaque VM (sqlnode1 et sqlnode2), associez les volumes que vous avez créés pour ce nœud spécifique.

    1. Dans la console Google Cloud , accédez à la page Volumes pour NetApp Volumes.

      Accéder à Volumes

      Sélectionnez un volume attribué au nœud que vous configurez. Notez les adresses IP du portail cible listées dans la section Détails de la cible iSCSI. Vous avez besoin de ces adresses pour vous connecter au volume.

    2. Sur la VM, ouvrez PowerShell en tant qu'administrateur et exécutez la commande suivante, en remplaçant les adresses IP exemples par les adresses IP du portail cible pour votre volume :

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

    3. Exécutez iscsicpl.exe pour ouvrir Propriétés de l'initiateur iSCSI.

    4. Accédez à l'onglet Cibles, sélectionnez l'une de vos cibles de volume dans la liste, puis cliquez sur Associer.

    5. Dans la boîte de dialogue Connect to Target (Se connecter à la cible), sélectionnez Enable multi-path (Activer le multipath), puis cliquez sur Advanced (Avancé).

    6. Dans la boîte de dialogue Paramètres avancés :

      1. Adaptateur local : sélectionnez Microsoft iSCSI Initiator.
      2. Adresse IP de l'initiateur : sélectionnez une adresse IP sur la VM.
      3. Adresse IP du portail cible : sélectionnez l'une des adresses IP du portail que vous avez découvertes.
      4. Cliquez sur OK.
    7. Dans la boîte de dialogue Se connecter à Target, cliquez sur OK.

    8. Répétez les étapes de connexion pour toutes les cibles associées à la VM.

    9. Pour configurer MPIO pour les périphériques iSCSI, ouvrez Propriétés MPIO depuis le Panneau de configuration ou le Gestionnaire de serveur.

    10. Cliquez sur l'onglet Discover Multi-Paths (Découvrir les chemins multiples).

    11. Sélectionnez Ajouter la prise en charge des périphériques iSCSI, puis cliquez sur Ajouter. Redémarrez la VM si vous y êtes invité.

    12. Après le redémarrage, ouvrez le Gestionnaire de périphériques et développez Lecteurs de disque. Votre disque iSCSI apparaît en tant qu'appareil multipath.

    13. Ouvrez Gestion des disques (compmgmt.msc). Pour chaque nouveau disque :

      1. Mettez le disque en ligne.
      2. Initialisez le disque (GPT).
      3. Créez un volume, attribuez-lui une lettre de lecteur (par exemple, D pour les données, E pour les journaux, F pour les sauvegardes, G pour tempdb), puis formatez-le à l'aide de NTFS avec une taille d'unité d'allocation de 64 Ko.
    14. Créez la structure de répertoire pour SQL Server sur les lecteurs nouvellement formatés. Exemple :

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

    Configurer SQL Server

    Effectuez ces étapes sur sqlnode1 et sqlnode2 après avoir installé leurs volumes respectifs.

    1. Accédez au Gestionnaire de configuration SQL Server.
    2. Dans le volet de gauche, sélectionnez Services SQL Server.
    3. Dans le volet de droite, effectuez un clic droit sur SQL Server (MSSQLSERVER), sélectionnez Propriétés, accédez à l'onglet Ouvrir une session, puis remplacez le Nom du compte par votre compte de service (DOMAIN\sqlsvc). Saisissez le mot de passe, puis cliquez sur OK.
    4. Répétez l'étape précédente pour SQL Server Agent (MSSQLSERVER).
    5. Connectez-vous à l'instance SQL Server à l'aide de SQL Server Management Studio (SSMS) avec votre compte administrateur de domaine.
    6. Créez des identifiants pour le compte de service et accordez-lui les autorisations nécessaires :
      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. Exécutez le script suivant dans SSMS pour rediriger les chemins d'accès par défaut de la base de données, du journal, de la sauvegarde et de tempdb vers les volumes iSCSI que vous avez montés :
      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. Arrêtez le service SQL Server (MSSQLSERVER).
    9. Déplacez les fichiers model, msdb et tempdb existants de leurs anciens emplacements (par exemple, C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA) vers leurs nouveaux emplacements sur les lecteurs D:, E: et G:.
    10. Pour déplacer la base de données master et ERRORLOG :
      1. Accédez au Gestionnaire de configuration SQL Server.
      2. Effectuez un clic droit sur SQL Server (MSSQLSERVER), sélectionnez Propriétés, puis accédez à l'onglet Paramètres de démarrage.
      3. Pour chaque paramètre existant -d, -e et -l pointant vers le lecteur C:, sélectionnez-le et cliquez sur Supprimer.
      4. Ajoutez les paramètres suivants en cliquant sur Ajouter pour chacun d'eux :
        • -dD:\MSSQL\DATA\master.mdf
        • -lE:\MSSQL\Log\mastlog.ldf
        • -eE:\MSSQL\Log\ERRORLOG
      5. Cliquez sur OK.
      6. Déplacement manuel de master.mdf et mastlog.ldf de C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA vers D:\MSSQL\DATA\` andE:\MSSQL\Log` respectivement.
      7. Déplacez le fichier ERRORLOG de son ancien emplacement vers `E:\MSSQL\Log`.
    11. Démarrez le service SQL Server (MSSQLSERVER).

    Configurer le clustering de basculement Windows Server

    Pour créer le cluster et configurer un témoin de quorum, procédez comme suit.

    Configurer le pare-feu Windows

    Avant de créer le cluster, assurez-vous que le pare-feu Windows de chaque nœud autorise le trafic pour WSFC, SQL Server et iSCSI.

    Sur sqlnode1 et sqlnode2, ouvrez PowerShell en tant qu'administrateur et exécutez les commandes suivantes :

    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
    

    Créer le cluster

    1. Sur sqlnode1, ouvrez le Gestionnaire du cluster de basculement (cluadmin.msc).
    2. Dans la section Gestion, sélectionnez Valider la configuration. Suivez l'assistant pour valider sqlnode1 et sqlnode2. Assurez-vous que tous les tests sont concluants avant de continuer.
    3. Une fois la validation terminée, sélectionnez Créer un cluster.
    4. Dans l'assistant de création de cluster, ajoutez sqlnode1 et sqlnode2 en tant que nœuds de cluster.
    5. Dans le champ Point d'accès pour l'administration du cluster, saisissez un nom de cluster (par exemple, sqlcluster) et fournissez une adresse IP statique pour le cluster.
    6. Suivez les instructions pour créer le cluster.

    Créer un partage de fichiers pour le quorum de cluster

    Nous vous recommandons de créer un partage de fichiers sur une troisième VM, de préférence dans une autre zone, pour servir de témoin de quorum du cluster.

    1. Connectez-vous à la VM que vous souhaitez utiliser comme témoin de partage de fichiers.
    2. Dans la fenêtre Gestionnaire de serveur, sélectionnez Outils > Gestion de l'ordinateur.
    3. Développez Outils système > Dossiers partagés, effectuez un clic droit sur Partages, puis sélectionnez Nouveau partage.
    4. Suivez l'assistant de création de dossier partagé. Sur la page Chemin d'accès au dossier, accédez à un dossier pour le partage ou créez-en un.
    5. Sur la page Autorisations, sélectionnez Personnaliser les autorisations.
    6. Cliquez sur Ajouter, puis accordez le contrôle total au compte de l'objet nom de cluster (CNO), par exemple sqlcluster$.
    7. Suivez les instructions de l'assistant pour créer le partage.

    Configurer le quorum du cluster

    1. Sur sqlnode1, ouvrez le gestionnaire de cluster de basculement.
    2. Effectuez un clic droit sur le nom du cluster, puis sélectionnez Autres actions > Configurer les paramètres du quorum du cluster.
    3. Dans l'assistant de configuration du quorum de cluster, sélectionnez Suivant.
    4. Sur la page Sélectionner l'option de configuration du quorum, choisissez Sélectionner le témoin de quorum, puis cliquez sur Suivant.
    5. Sur la page Sélectionner le témoin de quorum, choisissez Configurer un témoin de partage de fichiers, puis cliquez sur Suivant.
    6. Dans le champ Chemin d'accès au partage de fichiers, saisissez le chemin d'accès au partage que vous avez créé (par exemple, \\witness-server\quorum), puis cliquez sur Suivant.
    7. Confirmez vos paramètres, puis cliquez sur Suivant et sur Terminer.

    Configurer des groupes de disponibilité Always On

    Appliquez les étapes de cette section aux deux VM SQL Server pour activer et configurer le groupe de disponibilité.

    Activer les groupes de disponibilité dans SQL Server

    1. Accédez au Gestionnaire de configuration SQL Server.
    2. Dans l'arborescence du navigateur, sélectionnez SQL Server Services (Services SQL Server).
    3. Effectuez un clic droit sur SQL Server (MSSQLSERVER), puis sélectionnez Propriétés.
    4. Sélectionnez l'onglet Haute disponibilité AlwaysOn, puis Activer les groupes de disponibilité AlwaysOn.
    5. Cliquez sur Appliquer, puis sur OK. Redémarrez le service SQL Server.

    Créer une base de données pour le groupe de disponibilité

    1. Connectez-vous à sqlnode1 à l'aide de SSMS.
    2. Dans le volet Explorateur d'objets, effectuez un clic droit sur Bases de données, puis sélectionnez Nouvelle base de données.
    3. Saisissez MyDB1 dans Nom de la base de données, puis cliquez sur OK.
    4. Effectuez un clic droit sur MyDB1, puis sélectionnez Tâches > Sauvegarder. Effectuez une sauvegarde complète. Assurez-vous que le modèle de récupération de la base de données est défini sur Complète.
    5. Effectuez un clic droit sur MyDB1, puis sélectionnez Tâches > Sauvegarder. Effectuez une sauvegarde du journal des transactions.
    6. Copiez les fichiers de sauvegarde complets et du journal des transactions dans sqlnode2.
    7. Connectez-vous à sqlnode2 à l'aide de SSMS. Effectuez un clic droit sur Databases (Bases de données), puis sélectionnez Restore Database (Restaurer la base de données).
    8. Restaurez la sauvegarde complète de MyDB1 à partir de sqlnode1 en spécifiant RESTORE WITH NORECOVERY sur la page Options.
    9. Effectuez un clic droit sur MyDB1 dans sqlnode2, puis sélectionnez Tâches > Restaurer > Journal des transactions. Restaurez la sauvegarde du journal des transactions en spécifiant également RESTORE WITH NORECOVERY.

    Créer le groupe de disponibilité

    1. Connectez-vous à sqlnode1 à l'aide de SSMS.
    2. Dans l'Explorateur d'objets, effectuez un clic droit sur Haute disponibilité AlwaysOn, puis sélectionnez Assistant du nouveau groupe de disponibilité.
    3. Spécifiez un nom de groupe de disponibilité, par exemple sql-ag.
    4. Sélectionnez MyDB1 comme base de données à inclure.
    5. Sur la page Spécifier les instances dupliquées, cliquez sur Ajouter une instance dupliquée et connectez-vous à sqlnode2.
    6. Activez le Basculement automatique pour les deux répliques, définissez le Mode de disponibilité sur Commit synchrone et Secondaire en lecture sur Oui.
    7. Accédez à l'onglet Points de terminaison et assurez-vous que le port 5022 est utilisé.
    8. Sur la page Sélectionner la synchronisation initiale des données, sélectionnez Rejoindre uniquement.
    9. Suivez l'assistant pour créer le groupe de disponibilité.

    Créer une ressource DNN pour le groupe de disponibilité

    Au lieu d'un équilibreur de charge, utilisez un nom de réseau distribué (DNN) pour acheminer le trafic client vers l'écouteur du groupe de disponibilité.

    1. Ouvrez le Gestionnaire du cluster de basculement, développez Rôles, puis sélectionnez le rôle de votre groupe de disponibilité.
    2. Dans Ressources, effectuez un clic droit sur la ressource du groupe de disponibilité, puis sélectionnez Ajouter une ressource > Point d'accès client.
    3. Attribuez un Nom à l'écouteur DNN, puis terminez l'assistant.
    4. Mettez en ligne la nouvelle ressource DNN.
    5. Par défaut, le cluster lie le nom DNS DNN à tous les nœuds du cluster. Si certains nœuds du cluster n'hébergent pas de réplicas SQL Server, vous devez les exclure des propriétaires possibles du DNN :
      1. Effectuez un clic droit sur la ressource DNN que vous avez créée, puis sélectionnez Propriétés.
      2. Décochez les cases correspondant aux nœuds qui ne sont pas des réplicas de groupe de disponibilité.
      3. Cliquez sur OK.
    6. Mettez à jour les chaînes de connexion de votre application pour qu'elles se connectent au nom de l'écouteur DNN et incluez MultiSubnetFailover=True.

    Tester le basculement

    1. Connectez-vous à sqlnode1 ou sqlnode2 à l'aide de SSMS, puis exécutez la requête suivante pour vérifier quelle instance répliquée est principale et que les deux instances répliquées sont configurées pour la validation synchrone et le basculement automatique :

      -- 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. Pour lancer un basculement manuel, connectez-vous à la réplique secondaire dans SSMS et exécutez la commande suivante :

      ALTER AVAILABILITY GROUP [sql-ag] FAILOVER;
      

    3. Après le basculement, vérifiez le nouveau nœud principal en exécutant SELECT @@SERVERNAME; ou en vous reconnectant au détecteur DNN et en vérifiant le nom du serveur.

    4. Vous pouvez également afficher l'état du groupe de disponibilité dans SSMS en effectuant un clic droit sur le groupe de disponibilité sous Haute disponibilité AlwaysOn, puis en sélectionnant Afficher le tableau de bord.

    Effectuer un nettoyage

    Supprimer le projet

    Pour éviter que les ressources utilisées dans ce tutoriel ne soient facturées sur votre projet Google Cloud , supprimez-le. Pour en savoir plus, consultez Arrêter des projets.