Configurer un groupe de disponibilité dans plusieurs régions Azure - SQL Server sur des machines virtuelles Azure

S’applique à :SQL Server sur la machine virtuelle Azure

Ce tutoriel explique comment configurer un réplica de groupe de disponibilité Always On pour SQL Server sur des machines virtuelles Azure dans une région Azure distante du réplica principal. Vous pouvez utiliser cette configuration à des fins de reprise d’activité après sinistre.

Vous pouvez également utiliser les étapes de cet article pour étendre un groupe de disponibilité local existant à Azure.

Ce tutoriel s’appuie sur le tutoriel pour déployer manuellement un groupe de disponibilité dans un sous-réseau unique dans une seule région. Les mentions de la région locale dans cet article font référence aux machines virtuelles et au groupe de disponibilité déjà configurés dans la première région. La région distante est la nouvelle infrastructure qui est ajoutée dans ce tutoriel.

Vue d’ensemble

L’illustration suivante montre un déploiement classique d’un groupe de disponibilité sur des machines virtuelles Azure :

Diagram that shows an Azure load balancer and an availability set with a Windows Server failover cluster and Always On availability group.

Dans le déploiement illustré dans le diagramme, toutes les machines virtuelles se trouvent dans une même région Azure. Les réplicas de groupe de disponibilité peuvent avoir une validation synchrone avec basculement automatique sur SQL-1 et SQL-2. Pour générer cette architecture, consultez le modèle ou tutoriel relatif aux groupes de disponibilité.

Cette architecture est vulnérable aux interruptions de service si la région Azure devient inaccessible. Pour résoudre cette vulnérabilité, ajoutez un réplica dans une autre région Azure. Le diagramme suivant montre à quoi ressemble la nouvelle architecture :

Diagram of a disaster recovery scenario for an availability group.

Le diagramme montre une nouvelle machine virtuelle appelée SQL-3. SQL-3 se trouve dans une autre région Azure. Elle est ajoutée au cluster de basculement Windows Server et peut héberger un réplica de groupe de disponibilité.

La région Azure pour SQL-3 a un nouvel équilibreur de charge Azure. Dans cette architecture, le réplica dans la région distante est normalement configuré avec le mode de disponibilité à validation asynchrone et le mode de basculement manuel.

Notes

Un groupe à haute disponibilité Azure est requis lorsque plusieurs machines virtuelles se trouvent dans la même région. Si une seule machine virtuelle se trouve dans la région, le groupe à haute disponibilité n’est pas nécessaire.

Vous ne pouvez placer une machine virtuelle dans un groupe à haute disponibilité qu’au moment de la création. Si la machine virtuelle se trouve déjà dans un groupe à haute disponibilité, vous pouvez ajouter une machine virtuelle à un réplica supplémentaire ultérieurement.

Quand des réplicas de groupe de disponibilité se trouvent sur des machines virtuelles Azure dans des régions Azure différentes, vous pouvez connecter les réseaux virtuels en utilisant l’appairage de réseaux virtuels ou une passerelle VPN site à site.

Important

Cette architecture facture les données sortantes des données répliquées entre des régions Azure. Consultez les tarifs de la bande passante.

Créer le réseau et le sous-réseau

Avant de créer un réseau virtuel et un sous-réseau dans une nouvelle région, déterminez l’espace d’adressage, le réseau de sous-réseau, l’adresse IP du cluster et les adresses IP des écouteurs de groupe de disponibilité que vous utiliserez pour la région distante.

Le tableau suivant liste les détails de la région locale (actuelle) et ce qui sera configuré dans la nouvelle région distante.

Type Local Région distante
Espace d’adressage 192.168.0.0/16 10.36.0.0/16
Réseau de sous-réseau 192.168.15.0/24 10.36.1.0/24
IP du cluster 192.168.15.200 10.36.1.200
Adresse IP de l’écouteur de groupe de disponibilité 192.168.15.201 10.36.1.201

Pour créer un réseau virtuel et un sous-réseau dans la nouvelle région dans le portail Azure :

  1. Accédez à votre groupe de ressources dans le portail Azure et sélectionnez + Créer.

  2. Recherchez réseau virtuel dans la zone de recherche de la Place de marché, puis sélectionnez la vignette Réseau virtuel de Microsoft.

  3. Dans la page Créer un réseau virtuel, sélectionnez Créer. Entrez ensuite les informations suivantes sous l’onglet Informations de base :

    1. Sous Détails du projet, pour Abonnement, sélectionnez l’abonnement Azure approprié. Pour Groupe de ressources, sélectionnez le groupe de ressources que vous avez créé précédemment, par exemple SQL-HA-RG.
    2. Sous Détails de l’instance, indiquez un nom pour votre réseau virtuel, par exemple remote_HAVNET. Choisissez ensuite une nouvelle région distante.

    Screenshot of the Azure portal that shows selections for creating a virtual network in a remote region.

  4. Sous l’onglet Adresses IP, sélectionnez les points de suspension (...) à côté de + Ajouter un sous-réseau. Sélectionnez Supprimer l’espace d’adressage pour supprimer l’espace d’adressage existant si vous avez besoin d’une autre plage d’adresses.

    Screenshot of the Azure portal that shows selections for deleting the existing address space in a virtual network.

  5. Sélectionnez Ajouter un espace d’adressage IP pour ouvrir le volet permettant de créer l’espace d’adressage dont vous avez besoin. Ce tutoriel utilise l’espace d’adressage de la région distante : 10.36.0.0/16. Sélectionnez Ajouter.

    Screenshot of the Azure portal that shows selections for adding an address space for a virtual network.

  6. Sélectionnez + Ajouter un sous-réseau, puis :

    1. Fournissez une valeur pour le Nom du sous-réseau, par exemple admin.

    2. Spécifiez une plage d’adresses de sous-réseau unique dans l’espace d’adressage du réseau virtuel.

      Par exemple, si votre plage d’adresses est 10.36.0.0/16, entrez ces valeurs pour le sous-réseau admin : 10.36.1.0 comme Adresse de début et /24 comme Taille du sous-réseau.

    3. Sélectionnez Ajouter pour ajouter votre nouveau sous-réseau.

    Screenshot of the Azure portal that shows selections for adding a subnet to a virtual network.

Connecter les réseaux virtuels dans les deux régions Azure

Après avoir créé le réseau virtuel et le sous-réseau, vous êtes prêt à connecter les deux régions afin qu’elles puissent communiquer entre elles. Pour ce faire, vous disposez de deux méthodes :

Ce tutoriel utilise le peering de réseaux virtuels. Pour configurer l’appairage de réseaux virtuels :

  1. Dans la zone de recherche située en haut du portail Azure, tapez autoHAVNET, qui est le réseau virtuel dans votre région locale. Quand le nom autoHAVNET apparaît dans les résultats de la recherche, sélectionnez-le.

  2. Sous Paramètres, sélectionnez Appairages, puis + Ajouter.

    Screenshot of the Azure portal that shows selections for adding a virtual network peering.

  3. Entrez ou sélectionnez les informations suivantes, acceptez les valeurs par défaut pour les autres paramètres, puis cliquez sur Ajouter.

    Paramètre Valeur
    Ce réseau virtuel
    Nom du lien de peering Entrez autoHAVNET-remote_HAVNET pour le nom du peering entre autoHAVNET et le réseau virtuel distant.
    Réseau virtuel distant
    Nom du lien de peering Entrez remote_HAVNET-autoHAVNET pour le nom du peering entre le réseau virtuel distant et autoHAVNET.
    Abonnement Sélectionnez votre abonnement pour le réseau virtuel distant.
    Réseau virtuel Sélectionnez remote_HAVNET comme nom du réseau virtuel distant. Le réseau virtuel distant peut se trouver dans la même région que autoHAVNET ou dans une autre région.

    Screenshot of the Azure portal that shows peering settings.

  4. Dans la page Appairages, l’État d’appairage est Connecté.

    Screenshot of the Azure portal that shows a Connected status for virtual network peering.

    Si vous ne voyez pas d’état Connecté, cliquez sur le bouton Actualiser.

Créer un contrôleur de domaine

Un contrôleur de domaine dans la nouvelle région est nécessaire pour fournir l’authentification si le site principal n’est pas disponible. Pour créer le contrôleur de domaine dans la nouvelle région :

  1. Revenez au groupe de ressources SQL-HA-RG.
  2. Sélectionnez + Créer.
  3. Tapez Windows Server 2016 Datacenter, puis sélectionnez le résultat Windows Server 2016 Datacenter.
  4. Dans Windows Server 2016 Datacenter, vérifiez que le modèle de déploiement est défini sur Gestionnaires des ressources, puis sélectionnez Créer.

Le tableau suivant montre les paramètres pour les deux machines :

Paramètre Valeur
Nom Contrôleur de domaine distant : ad-remote-dc.
Type de disque de machine virtuelle SSD
Nom d'utilisateur DomainAdmin
Mot de passe Contoso!0000
Abonnement Votre abonnement
Groupe de ressources SQL-HA-RG
Lieu Votre emplacement
Taille DS1_V2
Stockage Utiliser des disques managés : Oui
Réseau virtuel remote_HAVNET
Sous-réseau admin
Adresse IP publique Même nom que la machine virtuelle
Groupe de sécurité réseau Même nom que la machine virtuelle
Diagnostics activé
Compte de stockage de diagnostics Créé automatiquement

Azure crée les machines virtuelles.

Configurer le contrôleur de domaine

Dans les étapes suivantes, vous allez configurer la machine ad-remote-dc comme contrôleur de domaine pour corp.contoso.com :

Définir l’adresse du serveur DNS préféré

L’adresse du serveur DNS préféré ne doit pas être mise à jour directement dans une machine virtuelle. Vous devez la modifier dans le portail Azure, PowerShell ou Azure CLI. Les étapes ci-dessous permettent d’effectuer la modification à l’intérieur du portail Azure :

  1. Connectez-vous au portail Azure.

  2. Dans la zone de recherche située en haut du portail, entrez Interface réseau. Sélectionnez Interfaces réseau dans les résultats de la recherche.

  3. Dans la liste, sélectionnez l’interface réseau du deuxième contrôleur de domaine dont vous souhaitez consulter ou modifier les paramètres.

  4. Dans Paramètres, sélectionnez Serveurs DNS.

  5. Étant donné que ce contrôleur de domaine n’est pas dans le même réseau virtuel que le contrôleur de domaine principal, sélectionnez Personnalisé et entrez l’adresse IP du contrôleur de domaine principal, par exemple 192.168.15.4. L’adresse de serveur DNS que vous spécifiez est assignée uniquement à cette interface réseau et remplace tout paramètre DNS du réseau virtuel auquel l’interface réseau est assignée.

  6. Sélectionnez Enregistrer.

  7. Revenez à la machine virtuelle dans le portail Azure et redémarrez-la. Une fois la machine virtuelle redémarrée, vous pouvez la joindre au domaine.

Joindre le domaine

Ensuite, joignez le domaine corp.contoso.com. Pour ce faire, procédez comme suit :

  1. Connectez-vous à distance à la machine virtuelle avec le compte BUILTIN\DomainAdmin.
  2. Ouvrez Gestionnaire de serveur et sélectionnez Serveur local.
  3. Sélectionnez WORKGROUP.
  4. Dans la section Nom de l’ordinateur, sélectionnez Modifier.
  5. Cochez la case Domaine et tapez corp.contoso.com dans la zone de texte. Sélectionnez OK.
  6. Dans la boîte de dialogue contextuelle Sécurité Windows, spécifiez les informations d’identification du compte d’administrateur de domaine par défaut (CORP\DomainAdmin) et le mot de passe (Contoso!0000).
  7. Quand le message « Bienvenue dans le domaine corp.contoso.com » s’affiche, sélectionnez OK.
  8. Sélectionnez Fermer, puis sélectionnez Redémarrer maintenant dans la boîte de dialogue contextuelle.

Configurer le contrôleur de domaine

Une fois que votre serveur a joint le domaine, vous pouvez le configurer comme deuxième contrôleur de domaine. Pour ce faire, procédez comme suit :

  1. Si vous n’êtes pas déjà connecté, ouvrez une session RDP sur votre contrôleur de domaine secondaire et ouvrez Tableau de bord Gestionnaire de serveur (qui peut être ouvert par défaut).

  2. Sélectionnez le lien du tableau de bord Ajouter des rôles et fonctionnalités.

    Server Manager - Add roles

  3. Sélectionnez Suivant jusqu’à ce que vous atteigniez la section Rôles de serveur.

  4. Sélectionnez les rôles Services de domaine Active Directory et Serveur DNS. Lorsque vous y êtes invité, ajoutez les fonctionnalités supplémentaires requises par ces rôles.

  5. Une fois les fonctionnalités installées, retournez dans le tableau de bord Gestionnaire de serveur .

  6. Sélectionnez la nouvelle option AD DS dans le volet gauche.

  7. Sélectionnez le lien Plus dans la barre d’avertissement jaune.

  8. Dans la colonne Action de la boîte de dialogue Tous les détails de la tâche serveur, sélectionnez Promouvoir ce serveur en contrôleur de domaine.

  9. Sous Configuration du déploiement, sélectionnez Ajouter un contrôleur de domaine à un domaine existant.

  10. Cliquez sur Sélectionner.

  11. Connectez-vous à l’aide du compte Administrateur (CORP.CONTOSO.COM\domainadmin) et du mot de passe (Contoso!0000).

  12. Dans Sélectionner un domaine dans la forêt, choisissez votre domaine, puis sélectionnez OK.

  13. Dans Options du contrôleur de domaine, utilisez les valeurs par défaut et définissez un mot de passe DSRM.

    Notes

    La page Options DNS peut vous informer de l’impossibilité de créer une délégation pour ce serveur DNS. Vous pouvez ignorer cet avertissement dans les environnements hors production.

  14. Sélectionnez Suivant jusqu’à ce que la boîte de dialogue affiche la page de vérification Conditions préalables. Sélectionnez Installer.

Une fois que le serveur a terminé de modifier la configuration, redémarrez-le.

Créer une machine virtuelle SQL Server

Une fois le contrôleur de domaine redémarré, l’étape suivante consiste à créer une machine virtuelle SQL Server dans la nouvelle région.

Avant de continuer, envisagez les décisions de conception suivantes :

  • Stockage : disques managés Azure

    Pour le stockage des machines virtuelles, utilisez des disques managés Azure. Nous recommandons des disques managés pour les machines virtuelles SQL Server. Les disques managés gèrent le stockage en arrière-plan. De plus, quand les machines virtuelles avec des disques managés sont dans le même groupe à haute disponibilité, Azure distribue les ressources de stockage pour fournir une redondance appropriée.

    Pour plus d’informations, consultez Présentation des disques managés Azure. Pour plus de détails sur les disques managés dans un groupe à haute disponibilité, consultez Utiliser des disques managés pour des machines virtuelles dans un groupe à haute disponibilité.

  • Réseau : adresses IP privées en production

    Pour les machines virtuelles, ce didacticiel utilise des adresses IP publiques. Une adresse IP publique assure une connexion à distance directe à la machine virtuelle via Interne et simplifie les étapes de configuration. Dans les environnements de production, nous recommandons uniquement des adresses IP privées. Les adresses IP privées réduisent l’empreinte de vulnérabilité de la machine virtuelle SQL Server.

  • Réseau : une seule carte réseau par serveur

    Utilisez une seule carte réseau (NIC) par serveur (nœud de cluster) et un seul sous-réseau. Les réseaux Azure intègrent une redondance physique, ce qui rend inutiles les cartes réseau et les sous-réseaux supplémentaires sur un cluster invité de machines virtuelles Azure. Le rapport de validation du cluster vous avertit que les nœuds ne sont accessibles que sur un seul réseau. Vous pouvez ignorer cet avertissement sur les clusters de basculement invités de machines virtuelles Azure.

Créer et configurer la machine virtuelle SQL Server

Pour créer la machine virtuelle SQL Server, revenez au groupe de ressources SQL-HA-RG, puis sélectionnez Ajouter. Recherchez l’élément de galerie approprié, sélectionnez Machine virtuelle, puis sélectionnez À partir de la galerie. Utilisez les informations du tableau suivant pour vous aider à créer les machines virtuelles :

Page Paramètre
Sélectionnez l’élément de la galerie approprié. SQL Server 2016 SP1 Enterprise sur Windows Server 2016
Configuration de la machine virtuelle : Informations de base Nom = sqlserver-2

Nom d’utilisateur = DomainAdmin

Mot de passe = Contoso!0000

Abonnement = votre abonnement

Groupe de ressources = SQL-HA-RG

Emplacement = Votre région distante
Configuration de la machine virtuelle : Taille Taille = DS2_V2 (2 processeurs virtuels, 7 Go)

La taille doit prendre en charge le stockage SSD (prise en charge des disques Premium).
Configuration de la machine virtuelle : Paramètres Stockage : Utiliser des disques managés

Réseau virtuel = remote-HAVNET

Sous-réseau = admin (10.36.1.0/24)

Adresse IP publique = Générée automatiquement

Groupe de sécurité réseau = Aucun

Diagnostics de surveillance = activés

Compte de stockage de diagnostics = Utiliser un compte de stockage généré automatiquement

Configuration de la machine virtuelle : Paramètres SQL Server Connectivité SQL = Privée (dans le réseau virtuel)

Port = 1433

Authentification SQL = Désactivée

Configuration du stockage = Générale

Mise à jour corrective automatisée = Dimanche à 2h00

Sauvegarde automatisée = Désactivée

Intégration Azure Key Vault = Désactivée

Notes

La taille de machine suggérée ici est destinée à tester les groupes de disponibilité dans les machines virtuelles Azure. Pour optimiser les performances des charges de travail de production, consultez les recommandations relatives aux tailles et à la configuration des machines SQL Server dans Check-list : Bonnes pratiques relatives à SQL Server sur les machines virtuelles Azure.

Une fois la machine virtuelle entièrement provisionnée, vous devez la joindre au domaine corp.contoso.com et accorder à CORP\Install des droits d’administration sur les machines.

Joindre le serveur au domaine

Pour joindre la machine virtuelle à corp.contoso.com, effectuez les étapes suivantes pour la machine virtuelle SQL Server :

  1. Connectez-vous à distance à la machine virtuelle en utilisant BUILTIN\DomainAdmin.
  2. Dans le Gestionnaire de serveur, sélectionnez Serveur Local.
  3. Sélectionnez le lien GROUPE DE TRAVAIL.
  4. Dans la section Nom de l’ordinateur, sélectionnez Modifier.
  5. Cochez la case Domaine et entrez corp.contoso.com dans la zone de texte. Sélectionnez ensuite OK.
  6. Dans la boîte de dialogue contextuelle Sécurité Windows, spécifiez les informations d’identification du compte d’administrateur de domaine par défaut (CORP\DomainAdmin) et le mot de passe (Contoso!0000).
  7. Quand le message « Bienvenue dans le domaine corp.contoso.com » s’affiche, sélectionnez OK.
  8. Sélectionnez Fermer, puis sélectionnez Redémarrer maintenant dans la boîte de dialogue contextuelle.

Ajouter des comptes

La tâche suivante consiste à ajouter le compte d’installation en tant qu’administrateur sur la machine virtuelle SQL Server, puis à accorder l’autorisation à ce compte et aux comptes locaux dans SQL Server. Vous pouvez ensuite mettre à jour le compte de service SQL Server.

Ajouter l’utilisateur CORP\Install comme administrateur sur chaque machine virtuelle du cluster

Après le redémarrage de la machine virtuelle SQL Server en tant que membre du domaine, ajoutez CORP\Install comme membre du groupe Administrateurs local :

  1. Attendez que la machine virtuelle soit redémarrée, puis rouvrez le fichier RDP à partir du contrôleur de domaine principal. Connectez-vous à sqlserver-2 en utilisant le compte CORP\DomainAdmin.

    Conseil

    Dans les étapes précédentes, vous utilisiez le compte administrateur BUILTIN. Maintenant que le serveur est dans le domaine, veillez à vous connecter avec le compte d’administrateur de domaine. Dans votre session RDP, spécifiez DOMAINE\nom d’utilisateur.

  2. Dans Gestionnaire de serveur, sélectionnez Outils, puis sélectionnez Gestion de l’ordinateur.

  3. Dans la fenêtre Gestion de l’ordinateur, développez Utilisateurs et groupes locaux, puis sélectionnez Groupes.

  4. Double-cliquez sur le groupe Administrateurs .

  5. Dans la boîte de dialogue Propriétés de Administrateurs, sélectionnez le bouton Ajouter.

  6. Entrez CORP\Install come utilisateur, puis sélectionnez OK.

  7. Sélectionnez OK pour fermer la boîte de dialogue Propriétés de Administrateurs.

Créer une connexion sur chaque machine virtuelle SQL Server pour le compte d’installation

Utilisez le compte d’installation (CORP\Install) pour configurer le groupe de disponibilité. Ce compte doit être membre du rôle serveur fixe sysadmin pour chaque machine virtuelle SQL Server. Les étapes suivantes créent une connexion pour le compte d’installation. Effectuez-les sur les deux machines virtuelles SQL Server.

  1. Connectez-vous au serveur via RDP en utilisant le compte <MachineName>\DomainAdmin.

  2. Ouvrez SQL Server Management Studio et connectez-vous à l'instance locale de SQL Server.

  3. Dans l’Explorateur d’objets, sélectionnez Sécurité.

  4. Cliquez avec le bouton droit sur Connexions. Sélectionnez Nouvelle connexion.

  5. Dans Nouvelle connexion, sélectionnez Rechercher.

  6. Sélectionner Emplacements.

  7. Entrez les informations d’identification réseau de l’administrateur de domaine. Utilisez le compte d’installation (CORP\Install).

  8. Définissez la connexion à un membre du rôle serveur fixe sysadmin.

  9. Sélectionnez OK.

Configurer les autorisations du compte système

Pour créer un compte système et accorder les autorisations appropriées, effectuez les étapes suivantes sur chaque instance SQL Server :

  1. Utilisez le script suivant pour créer un compte pour [NT AUTHORITY\SYSTEM] :

    USE [master]
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
    GO 
    
  2. Accordez les autorisations suivantes à [NT AUTHORITY\SYSTEM] :

    • ALTER ANY AVAILABILITY GROUP
    • CONNECT SQL
    • VIEW SERVER STATE

    Le script suivant accorde ces autorisations :

    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 
    

Définir les comptes de service SQL Server

Sur chaque machine virtuelle SQL Server, effectuez les étapes suivantes pour définir le compte de service SQL Server. Utilisez les comptes que vous avez créés lors de la configuration des comptes de domaine.

  1. Ouvrez le Gestionnaire de configuration SQL Server.
  2. Cliquez avec le bouton droit sur le service SQL Server, puis sélectionnez Propriétés.
  3. Définissez le compte et le mot de passe.

Pour les groupes de disponibilité SQL Server, chaque machine virtuelle SQL Server doit s’exécuter en tant que compte de domaine.

Crée un équilibrage de charge Azure

Un équilibreur de charge est nécessaire dans la région distante pour prendre en charge le groupe de disponibilité SQL Server. Cet équilibreur de charge stocke les adresses IP des écouteurs de groupe de disponibilité et du cluster de basculement Windows Server. Cette section indique comment créer l’équilibrage de charge dans le portail Azure.

L’équilibreur de charge doit :

  • Être dans les mêmes réseau et sous-réseau que la nouvelle machine virtuelle.
  • Avoir une adresse IP statique pour l’écouteur du groupe de disponibilité.
  • Inclure un pool principal comprenant uniquement des machines virtuelles situées dans la même région que l’équilibreur de charge.
  • Utilisez une sonde de port TCP propre à l’adresse IP.
  • Avoir une règle d’équilibrage de charge propre à l’instance SQL Server dans la même région.
  • Être un équilibreur de charge standard si les machines virtuelles du pool de back-ends ne font pas partie d’un seul groupe à haute disponibilité ou d’un groupe de machines virtuelles identiques. Pour plus d’informations, consultez Qu’est-ce qu’Azure Load Balancer ?.
  • Être un équilibreur de charge standard si les deux réseaux virtuels dans deux régions différentes sont appairés sur l’appairage de réseaux virtuels mondial. Pour plus d’informations, consultez FAQ sur les réseaux virtuels Azure.

Les étapes de création de l’équilibreur de charge sont les suivantes :

  1. Dans le portail Azure, accédez au groupe de ressources où se trouve votre instance SQL Server, puis sélectionnez + Ajouter.

  2. Recherchez Équilibrage de charge. Choisissez l’équilibreur de charge publié par Microsoft.

  3. Sélectionnez Create (Créer).

  4. Configurez les paramètres suivants pour l’équilibreur de charge :

    Paramètre Valeur
    Abonnement Utilisez le même abonnement que la machine virtuelle.
    Groupe de ressources Utilisez le même groupe de ressources que la machine virtuelle.
    Nom Utilisez un nom textuel pour l’équilibreur de charge (par exemple, remoteLB).
    Région Utilisez la même région que la machine virtuelle.
    Référence (SKU) Sélectionnez Standard.
    Type sélectionnez Interne.

    Le volet du portail Azure doit ressembler à ceci :

    Screenshot of the Azure portal that shows basic information for creating a load balancer.

  5. Sélectionnez Suivant : Configuration de l’adresse IP front-end.

  6. Sélectionnez + Ajouter une configuration IP front-end.

    Screenshot of the Azure portal that shows the button for adding a frontend IP configuration.

  7. Configurez l’adresse IP front-end avec les valeurs suivantes :

    • Nom : utilisez un nom qui identifie la configuration IP front-end.
    • Réseau virtuel : utilisez le même réseau que les machines virtuelles.
    • Sous-réseau : utilisez le même sous-réseau que les machines virtuelles.
    • Affectation : sélectionnez Statique.
    • Adresse IP : utilisez une adresse disponible à partir du réseau. Utilisez cette adresse pour l’écouteur de votre groupe de disponibilité. Cette adresse est différente de l’adresse IP de votre cluster.
    • Zone de disponibilité : choisissez une zone de disponibilité dans laquelle déployer votre adresse IP (facultatif).

    Screenshot of the Azure portal that shows the dialog for adding a frontend IP configuration.

  8. Sélectionnez Ajouter.

  9. Sélectionnez Vérifier + Créer pour valider la configuration, puis sélectionnez Créer pour créer l’équilibreur de charge et l’adresse IP front-end.

Pour configurer l’équilibreur de charge, vous devez créer un pool de back-ends, créer une sonde et définir les règles d’équilibrage de charge.

Ajouter un pool principal pour l’écouteur de groupe de disponibilité

  1. Dans le portail Azure, accédez à votre groupe de disponibilité. Vous devrez peut-être actualiser l’affichage pour voir l’équilibrage de charge tout juste créé.

  2. Sélectionnez l’équilibreur de charge, sélectionnez Pools de back-ends, puis sélectionnez + Ajouter.

  3. Pour Nom, indiquez un nom pour le pool de back-ends.

  4. Pour Configuration du pool de back-ends, sélectionnez Carte réseau.

  5. Sélectionnez Ajouter pour associer le pool back-end à la machine virtuelle SQL Server nouvellement créée.

  6. Sous Machine virtuelle, choisissez la machine virtuelle qui hébergera le réplica du groupe de disponibilité.

  7. Sélectionnez Ajouter pour ajouter la machine virtuelle au pool back-end.

  8. Sélectionnez Enregistrer.

Configurer la sonde

  1. Dans le portail Azure, sélectionnez l’équilibreur de charge, sélectionnez Sondes d’intégrité, puis sélectionnez + Ajouter.

  2. Définissez la sonde d’intégrité de l’écouteur comme suit :

    Paramètre Description Exemple
    Nom Texte SQLAlwaysOnEndPointProbe
    Protocole Choisissez TCP. TCP
    Port Tout port inutilisé. 59999
    Intervalle Intervalle de temps entre les tentatives de la sonde, en secondes. 5
  3. Sélectionnez Ajouter.

Définir les règles d’équilibrage de charge

  1. Dans le portail Azure, sélectionnez l’équilibreur de charge, sélectionnez Règles d’équilibrage de charge, puis sélectionnez + Ajouter.

  2. Définissez les règles d’équilibrage de charge de l’écouteur comme suit :

    Paramètre Description Exemple
    Nom Texte SQLAlwaysOnEndPointListener
    Frontend IP address (Adresse IP frontale) Choisissez une adresse. Utilisez l’adresse que vous avez créée lorsque vous avez créé l’équilibrage de charge.
    Pool back-end Choisir le pool de back-ends Sélectionnez le pool de back-ends qui contient les machines virtuelles ciblées pour l’équilibreur de charge.
    Protocole Choisissez TCP. TCP
    Port Utiliser le port pour l'écouteur de groupe de disponibilité 1433
    Port principal Ce champ n’est pas utilisé quand vous définissez une IP flottante pour le retour direct du serveur 1433
    Sonde d’intégrité Nom que vous avez spécifié pour la sonde SQLAlwaysOnEndPointProbe
    Persistance de session Liste déroulante Aucun
    Délai d’inactivité Délai en minutes de maintien d’une connexion TCP ouverte 4
    Adresse IP flottante (retour direct du serveur) Activez ce paramètre.

    Avertissement

    Le retour au serveur direct est configuré lors de la création. Vous ne pouvez pas le changer.

  3. Sélectionnez Enregistrer.

Ajouter le clustering de basculement aux machines virtuelles SQL Server

Pour ajouter des fonctionnalités de clustering de basculement, effectuez les étapes suivantes sur les deux machines virtuelles SQL Server :

  1. Connectez-vous à la machine virtuelle SQL Server via RDP en utilisant le compte CORP\Install. Ouvrez le tableau de bord Gestionnaire de serveur.

  2. Sélectionnez le lien du tableau de bord Ajouter des rôles et fonctionnalités.

    Screenshot of the Server Manager dashboard that shows the link for adding roles and features.

  3. Sélectionnez Suivant jusqu’à ce que vous atteigniez la section Fonctionnalités de serveur.

  4. Dans Fonctionnalités, sélectionnez Clustering de basculement.

  5. Ajoutez toutes les fonctionnalités requises.

  6. Sélectionnez Installer.

Notes

Vous pouvez désormais automatiser cette tâche, ainsi que la jonction des machines virtuelles SQL Server au cluster de basculement, à l’aide de l’interface Azure CLI et des modèles de démarrage rapide Azure.

Ajuster les seuils réseau pour un cluster de basculement

Quand vous exécutez des nœuds de cluster de basculement Windows dans des machines virtuelles Azure avec des groupes de disponibilité SQL Server, remplacez le paramètre de cluster par un état de monitoring plus souple. Ce changement rend le cluster plus stable et plus fiable. Pour plus d’informations, consultez IaaS avec SQL Server : Réglage des seuils réseau du cluster de basculement.

Configurer le pare-feu sur chaque machine virtuelle SQL Server

La solution nécessite l'ouverture des ports TCP suivants sur le pare-feu :

  • Machine virtuelle SQL Server : le port 1433 pour une instance SQL Server par défaut.
  • Sonde de l’équilibreur de charge Azure : n’importe quel port disponible. Les exemples utilisent souvent le port 59999.
  • Sonde d’intégrité d’adresse IP d’équilibreur de charge de cluster principal : tout port disponible. Les exemples utilisent souvent le port 58888.
  • Point de terminaison de mise en miroir de bases de données : n’importe quel port disponible. Les exemples utilisent souvent le port 5022.

Les ports du pare-feu doivent être ouverts sur la nouvelle machine virtuelle SQL Server. La méthode d’ouverture des ports dépend de la solution de pare-feu que vous utilisez. Les étapes suivantes montrent comment ouvrir les ports dans le Pare-feu Windows :

  1. Sur l’écran Démarrer de SQL Server, ouvrez le Pare-feu Windows avec fonctions avancées de sécurité.

  2. Dans le volet gauche, sélectionnez Règles de trafic entrant. Dans le volet droit, sélectionnez Nouvelle règle.

  3. Pour Type de règle, sélectionnez Port.

  4. Spécifiez TCP comme port et entrez les numéros de port appropriés. La capture d’écran suivante en donne un exemple :

    Screenshot that shows selections for creating a new inbound rule for a firewall.

  5. Sélectionnez Suivant.

  6. Dans la page Action, gardez Autoriser la connexion sélectionné, puis sélectionnez Suivant.

  7. Dans la page Profil, acceptez les paramètres par défaut, puis sélectionnez Suivant.

  8. Dans la page Nom, spécifiez un nom de règle (par exemple Azure LB Probe) dans la zone Nom, puis sélectionnez Terminer.

Ajouter SQL Server au cluster de basculement Windows Server

La nouvelle machine virtuelle SQL Server doit être ajoutée au cluster de basculement Windows Server qui existe dans votre région locale.

Pour ajouter la machine virtuelle SQL Server au cluster :

  1. Utilisez RDP pour vous connecter à une machine virtuelle SQL Server dans le cluster existant. Utilisez un compte de domaine administrateur sur les machines virtuelles SQL Server et le serveur témoin.

  2. Dans le tableau de bord Gestionnaire de serveur, sélectionnez Outils, puis Gestionnaire du cluster de basculement.

  3. Dans le volet de gauche, cliquez avec le bouton droit sur Gestionnaire du cluster de basculement, puis sélectionnez Se connecter au cluster.

  4. Dans la fenêtre Sélectionner un cluster sous Nom du cluster, choisissez <Cluster sur ce serveur>. Sélectionnez ensuite OK.

  5. Dans l’arborescence du navigateur, cliquez-droit sur le cluster, puis sélectionnez Ajouter un nœud.

  6. Dans l’Assistant d’ajout de nœud, sélectionnez Suivant.

  7. Dans la page Sélectionner des serveurs, ajoutez le nom de la nouvelle instance SQL Server. Entrez le nom du serveur dans Entrer le nom du serveur, sélectionnez Ajouter, puis Suivant.

  8. Dans la page Avertissement de validation, sélectionnez Non. (Dans un scénario de production, vous devez effectuer les tests de validation). Ensuite, sélectionnez Suivant.

  9. Dans la page Confirmation, si vous utilisez des espaces de stockage, décochez la case Ajouter la totalité du stockage disponible au cluster.

    Avertissement

    Si vous ne décochez pas Ajouter la totalité du stockage disponible au cluster, Windows détache les disques virtuels pendant le processus de clustering. Par conséquent, ils n’apparaissent pas dans le Gestionnaire de disque ou dans l’Explorateur tant que le stockage n’est pas supprimé du cluster et rattaché avec PowerShell.

  10. Sélectionnez Suivant.

  11. Sélectionnez Terminer.

    Le Gestionnaire du cluster de basculement indique que votre cluster a un nouveau nœud et l’affiche dans le conteneur Nœuds.

Ajouter l’adresse IP du cluster de basculement Windows Server

Notes

Sur Windows Server 2019, le cluster crée un nom de serveur distribué à la place du nom réseau du cluster. Si vous utilisez Windows Server 2019, passez à Ajouter une adresse IP pour l’écouteur de groupe de disponibilité. Vous pouvez créer un nom réseau de cluster avec PowerShell. Pour plus d’informations, consultez le billet de blog Failover Cluster: Cluster Network Object.

Ensuite, créez la ressource d’adresse IP et ajoutez-la au cluster pour la nouvelle machine virtuelle SQL Server :

  1. Dans le Gestionnaire du cluster de basculement, sélectionnez le nom du cluster. Cliquez avec le bouton droit sur le nom du cluster sous Principales ressources du cluster, puis sélectionnez Propriétés :

    Screenshot of Failover Cluster Manager that shows selections for opening cluster properties.

  2. Dans la boîte de dialogue Propriétés du cluster, sélectionnez Ajouter sous Adresses IP, puis ajoutez l’adresse IP correspondant au nom du cluster à partir de la région du réseau distant. Sélectionnez OK dans la boîte de dialogue Adresse IP, puis sélectionnez OK dans la boîte de dialogue Propriétés du cluster pour enregistrer la nouvelle adresse IP.

    Screenshot that shows the dialogs for creating a cluster IP address.

  3. Ajoutez l’adresse IP en tant que dépendance pour le nom du cluster principal.

    Ouvrez de nouveau la boîte de dialogue Propriétés du cluster et sélectionnez l’onglet Dépendances. Configurez une dépendance OR pour les deux adresses IP.

    Screenshot of the Cluster Properties dialog that shows selections for adding a dependency.

Ajouter une adresse IP pour l’écouteur de groupe de disponibilité

L’adresse IP de l’écouteur dans la région distante doit être ajoutée au cluster. Pour ajouter l’adresse IP :

  1. Dans le Gestionnaire du cluster de basculement, cliquez avec le bouton droit sur le rôle de groupe de disponibilité. Pointez sur Ajouter une ressource, sur Autres ressources, puis sélectionnez Adresse IP.

    Screenshot of Failover Cluster Manager that shows selections for adding an IP address as a resource.

  2. Pour configurer cette adresse IP, cliquez avec le bouton droit sur la ressource sous Autres ressources, puis sélectionnez Propriétés.

    Screenshot of Failover Cluster Manager that shows selections for opening properties for a resource.

  3. Pour Nom, entrez un nom pour la nouvelle ressource. Pour Réseau, sélectionnez le réseau à partir du centre de données distant. Sélectionnez Adresse IP statique, puis dans la zone Adresse, affectez l’adresse IP statique du nouvel équilibreur de charge Azure.

    Screenshot of the dialog for IP address properties, showing assignment of the listener IP in the cluster.

  4. Sélectionnez Apply (Appliquer), puis OK.

  5. Ajoutez la ressource à adresse IP comme une dépendance du cluster (nom de réseau) du point d’accès au client écouteur.

    Cliquez avec le bouton droit sur le point d’accès client de l’écouteur, puis sélectionnez Propriétés. Accédez à l’onglet Dépendances et ajoutez la nouvelle ressource d’adresse IP au point d’accès client de l’écouteur. La capture d’écran suivante illustre une ressource de cluster à adresse IP configurée correctement :

    Screenshot of Failover Cluster Manager that shows configured IP addresses for an availability group.

    Important

    Le groupe de ressources de cluster inclut les deux adresses IP. Ces deux adresses IP sont des dépendances du point d’accès au client écouteur. Utilisez l’opérateur OR dans la configuration de dépendance de cluster.

  6. Définissez les paramètres de cluster dans PowerShell.

    Exécutez le script PowerShell avec le nom réseau du cluster, une adresse IP et un port de sonde que vous avez configurés sur l’équilibrage de charge dans la nouvelle région :

    $ClusterNetworkName = "<MyClusterNetworkName>" # The cluster name for the network in the new region (Use Get-ClusterNetwork on Windows Server 2012 or later to find the name.)
    $IPResourceName = "<IPResourceName>" # The cluster name for the new IP address resource.
    $ILBIP = "<n.n.n.n>" # The IP address of the internal load balancer in the new region. This is the static IP address for the load balancer that you configured in the Azure portal.
    [int]$ProbePort = <nnnnn> # The probe port that you set on the internal load balancer.
    
    Import-Module FailoverClusters
    
    Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
    

Activer des groupes de disponibilité

Ensuite, activez la fonctionnalité Groupes de disponibilité Always On. Effectuez ces étapes sur la nouvelle machine virtuelle SQL Server :

  1. À partir de l’écran Démarrer, ouvrez le Gestionnaire de configuration SQL Server.

  2. Dans l’arborescence du navigateur, sélectionnez Services SQL Server. Cliquez avec le bouton droit sur le service SQL Server (MSSQLSERVER), puis sélectionnez Propriétés.

  3. Sélectionnez l’onglet Haute disponibilité AlwaysOn, puis sélectionnez Activer les groupes de disponibilité AlwaysOn.

    Screenshot of selections for enabling Always On availability groups in SQL Server properties.

  4. Sélectionnez Appliquer. Sélectionnez OK dans la boîte de dialogue de la fenêtre contextuelle.

  5. Redémarrez le service SQL Server.

Ajouter un réplica au groupe de disponibilité

Après le redémarrage de SQL Server sur la machine virtuelle récemment créée, vous pouvez l’ajouter en tant que réplica au groupe de disponibilité :

  1. Ouvrez une session Bureau à distance sur l’instance SQL Server principale dans le groupe de disponibilité, puis ouvrez SQL Server Management Studio (SSMS).

  2. Dans l’Explorateur d’objets dans SSMS, ouvrez Haute disponibilité Always On>Groupes de disponibilité. Cliquez avec le bouton droit sur le nom de votre groupe de disponibilité, puis sélectionnez Ajouter un réplica.

  3. Connectez-vous au réplica existant, puis sélectionnez Suivant.

  4. Sélectionnez Ajouter un réplica et connectez-vous à la nouvelle machine virtuelle SQL Server.

    Important

    Un réplica dans une région Azure distante doit être configuré sur la réplication asynchrone avec basculement manuel.

  5. Dans la page Sélectionner la synchronisation de données initiale, sélectionnez Complète et spécifiez un emplacement réseau partagé. Pour l’emplacement, utilisez le partage de sauvegarde que vous avez créé. Dans l’exemple, il s’agissait de \\<Premier serveur SQL Server>\Backup\. Sélectionnez ensuite Suivant.

    Notes

    La synchronisation complète effectue une sauvegarde complète de la base de données sur la première instance de SQL Server et la restaure sur la deuxième instance. Pour les bases de données volumineuses, nous ne recommandons pas une synchronisation complète car elle peut prendre beaucoup de temps.

    Vous pouvez réduire ce temps en sauvegardant manuellement la base de données et en la restaurant avec NO RECOVERY. Si la base de données est déjà restaurée avec NO RECOVERY sur la deuxième instance SQL Server avant la configuration du groupe de disponibilité, sélectionnez Joindre uniquement. Si vous souhaitez réaliser la sauvegarde une fois le groupe de disponibilité configuré, sélectionnez Ignorer la synchronisation de données initiale.

    Screenshot that shows selection of the option for full data synchronization.

  6. Dans la page Validation, sélectionnez Suivant. Cette page doit ressembler à l’image suivante :

    Screenshot of the page that displays results of availability group validation in SSMS.

    Notes

    Un avertissement concernant la configuration de l’écouteur indique que vous n’avez pas configuré d’écouteur de groupe de disponibilité. Vous pouvez ignorer cet avertissement, car l’écouteur est déjà configuré. Il a été créé après la création de l’équilibreur de charge Azure dans la région locale.

  7. Dans la page Résumé, sélectionnez Terminer, puis patientez le temps que l’Assistant configure le nouveau groupe de disponibilité. Dans la page Progression, vous pouvez sélectionner Plus de détails pour afficher la progression détaillée.

    Une fois que l’Assistant a terminé la configuration, examinez la page Résultats pour vérifier que le groupe de disponibilité est créé.

  8. Sélectionnez Fermer pour fermer l’Assistant.

Vérifier le groupe de disponibilité

Dans l’Explorateur d’objets, développez Haute disponibilité Always On, puis Groupes de disponibilité. Cliquez avec le bouton droit sur le groupe de disponibilité et sélectionnez Afficher le tableau de bord.

Screenshot of Object Explorer in SSMS that shows selections for opening a dashboard for an availability group.

Le tableau de bord de votre groupe de disponibilité doit ressembler à celui de la capture d’écran suivante, à présent avec un autre réplica :

Screenshot of the availability group dashboard in SSMS.

Le tableau de bord présente les répliques, le mode de basculement de chaque réplica et l’état de la synchronisation.

Vérifier l’écouteur du groupe de disponibilité

  1. Dans l’Explorateur d’objets, développez Haute disponibilité Always On, Groupes de disponibilité, puis Écouteur de groupe de disponibilité.

  2. Cliquez avec le bouton droit sur le nom de l’écouteur, puis sélectionnez Propriétés. Les deux adresses IP doivent maintenant apparaître pour l’écouteur (une dans chaque région).

    Screenshot of the Availability Group Listener Properties window in SSMS, showing both IP addresses being used for the listener.

Définir la connexion pour plusieurs sous-réseaux

Le réplica dans le centre de données distant fait partie du groupe de disponibilité, mais il se trouve dans un autre sous-réseau. Si ce réplica devient le réplica principal, la connexion d’application peut expirer. Ce comportement est identique à celui d’un groupe de disponibilité local dans un déploiement comportant plusieurs sous-réseaux. Pour autoriser les connexions des applications clientes, mettez à jour la connexion cliente ou configurez la mise en cache de la résolution du nom sur la ressource de nom de réseau de cluster.

De préférence, mettez à jour la configuration du cluster pour définir RegisterAllProvidersIP=1 et les chaînes de connexion du client pour définir MultiSubnetFailover=Yes. Consultez Connexion avec MultiSubnetFailover.

Si vous ne pouvez pas modifier les chaînes de connexion, vous pouvez configurer la mise en cache de la résolution des noms. Consultez Expiration du délai d’attente quand vous vous connectez à un écouteur Always On dans un environnement comportant plusieurs sous-réseaux

Basculer vers la région distante

Pour tester la connectivité de l’écouteur à la région distante, vous pouvez basculer le réplica vers la région distante. Si le réplica est asynchrone, le basculement est vulnérable à la perte potentielle de données. Pour effectuer un basculement sans perte de données, modifiez le mode de disponibilité en synchrone et définissez le mode de basculement automatique. Utiliser les étapes suivantes :

  1. Dans l’Explorateur d’objets, connectez-vous à l’instance de SQL Server qui héberge le réplica principal.

  2. Sous Groupes de disponibilité Always On, cliquez avec le bouton droit sur votre groupe de disponibilité et sélectionnez Propriétés.

  3. Dans la page Général, sous Réplicas de disponibilité, configurez le réplica secondaire sur le site de reprise d’activité pour qu’il utilise le mode de disponibilité Validation synchrone et le mode de basculement Automatique.

    Si vous avez un réplica secondaire dans le même site que le réplica principal pour la haute disponibilité, configurez ce réplica en Validation asynchrone et Manuel.

  4. Sélectionnez OK.

  5. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur le groupe de disponibilité, puis sélectionnez Afficher le tableau de bord.

  6. Dans le tableau de bord, vérifiez que le réplica sur le site de récupération d’urgence est synchronisé.

  7. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur le groupe de disponibilité, puis sélectionnez Basculement. SQL Server Management Studio ouvre un Assistant pour basculer SQL Server.

  8. Sélectionnez Suivant, puis sélectionnez l’instance SQL Server sur le site de reprise d’activité. Sélectionnez Suivant de nouveau.

  9. Connectez-vous à l’instance SQL Server sur le site de reprise d’activité, puis sélectionnez Suivant.

  10. Dans la page Synthèse, vérifiez les paramètres et sélectionnez Terminer.

Après avoir testé la connectivité, replacez le réplica principal dans votre centre de données principal et rétablissez les paramètres de fonctionnement normaux du mode de disponibilité. Le tableau suivant présente les paramètres de fonctionnement normaux de l’architecture décrite dans cet article :

Emplacement Instance de serveur Role Mode de disponibilité Mode de basculement
Centre de données principal SQL-1 Principal Synchrone Automatique
Centre de données principal SQL-2 Secondary Synchrone Automatique
Centre de données secondaire ou distant SQL-3 Secondary Asynchrone Manuel

Pour plus d’informations sur le basculement manuel planifié et forcé, consultez les articles suivants :

Étapes suivantes

Pour en savoir plus, consultez :