Share via


Utiliser le Portail Azure pour configurer un groupe de disponibilité à plusieurs sous-réseaux pour SQL Server sur des machines virtuelles Azure

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

Conseil

Il existe de nombreuses méthodes pour déployer un groupe de disponibilité. Simplifiez votre déploiement pour éviter d’utiliser un équilibreur de charge Azure ou un nom de réseau distribué (DNN) pour votre groupe de disponibilité Always On, et créez vos machines virtuelles SQL Server dans plusieurs sous-réseaux au sein du même réseau virtuel Azure. Si vous avez déjà créé votre groupe de disponibilité dans un seul sous-réseau, vous pouvez le migrer vers un environnement multi-sous-réseau.

Cet article explique comment utiliser le portail Azure pour configurer un groupe de disponibilité pour SQL Server sur des machines virtuelles Azure dans plusieurs sous-réseaux en créant :

  • De nouvelles machines virtuelles avec SQL Server.
  • Un cluster de basculement Windows.
  • Un groupe de disponibilité.
  • Un écouteur.

Remarque

Cette méthode de déploiement prend en charge SQL Server 2016 et versions ultérieures sur Windows Server 2016 et versions ultérieures.

Le déploiement d’une groupe de disponibilité à plusieurs sous-réseaux par le biais du portail procure une expérience de bout en bout simplifiée aux utilisateurs. Cela configure les machines virtuelles en suivant les bonnes pratiques en matière de haute disponibilité et de reprise d’activité (HADR).

Bien que cet article utilise le portail Azure pour la configuration de l’environnement du groupe de disponibilité, vous pouvez également effectuer l’opération manuellement.

Notes

Il est possible d’effectuer un lift-and-shift de votre solution de groupe de disponibilité vers SQL Server sur les machines virtuelles Azure à l’aide d’Azure Migrate. Pour plus d’informations, consultez Migrer un groupe de disponibilité.

Prérequis

Pour configurer un groupe de disponibilité Always On à l’aide du portail Azure, vous devez disposer des prérequis suivants :

Remarque

Ce tutoriel suppose que le serveur DNS et le contrôleur de domaine se trouvent sur la même machine virtuelle. Si le serveur DNS est configuré sur une machine virtuelle différente de celle de la machine virtuelle du contrôleur de domaine, la latence lors de la synchronisation d’objets peut entraîner des problèmes de déploiement automatisés.

Choisir une image de la Place de marché Azure

Utilisez la Place de marché Azure pour choisir l’une des images préconfigurées dans la galerie. Il existe deux points d’entrée pour démarrer un déploiement d’un groupe de disponibilité dans le portail Azure :

La première option consiste à rechercher la Place de marché Azure « Haute disponibilité SQL Server » et à rechercher la vignette SQL Server avec haute disponibilité :

Capture d’écran du Portail Azure montrant la vignette de la Place de marché pour SQL Server avec haute disponibilité.

Sélectionnez Créer sur la vignette pour continuer.

La deuxième option consiste à accéder à Azure SQL dans le portail Azure. Si Azure SQL ne figure pas dans votre liste de menus, sélectionnez Tous les services, tapez Azure SQL dans la zone de recherche, puis sélectionnez le résultat.

  1. Sélectionnez + Créer pour ouvrir le volet Sélectionner l’option de déploiement SQL.

  2. Sous Machines virtuelles SQL, cochez la case Haute disponibilité. Dans la zone Image, tapez la version de SQL Server qui vous intéresse (par exemple 2019), puis choisissez une image SQL Server (par exemple Licence SQL Server gratuite : SQL 2019 Developer sur Windows Server 2019).

    Une fois que vous avez coché la case Haute disponibilité, le portail affiche les versions de SQL Server prises en charge, à partir de SQL Server 2016.

    Capture d’écran du portail Azure montrant la page de sélection d’une option de déploiement SQL Server, avec la haute disponibilité sélectionnée.

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

Choisir les paramètres de base

Sous l’onglet De base, sélectionnez l’abonnement et le groupe de ressources. Fournissez également les détails relatifs aux instances SQL que vous créez pour votre groupe de disponibilité.

  1. Dans les listes déroulantes, choisissez l’abonnement et le groupe de ressources qui contient votre contrôleur de domaine ainsi que l’emplacement où vous comptez déployer votre groupe de disponibilité.

    Capture d’écran du portail Azure qui montre les zones permettant de spécifier un abonnement et un groupe de ressources.

  2. Utilisez le curseur afin de sélectionner le nombre de machines virtuelles à créer pour le groupe de disponibilité. La valeur minimale est 2 et la valeur maximale est 9. Les noms de machines virtuelles sont préremplis, mais vous pouvez les modifier en sélectionnant Modifier les noms.

    Capture d’écran du portail Azure qui montre un curseur permettant de sélectionner le nombre de machines virtuelles, ainsi que l’option de modification des noms.

  3. Pour Région, sélectionnez une région. Toutes les machines virtuelles seront déployées sur la même région.

  4. Concernant les Options de disponibilité, sélectionnez Zone de disponibilité ou Groupe à haute disponibilité. Pour plus d’informations sur les options de disponibilité, consultez Disponibilité. Lorsque vous choisissez une zone de disponibilité, chaque machine virtuelle est affectée à une zone de la région, mais elle peut être personnalisée ultérieurement dans les options de mise en réseau.

  5. Pour Type de sécurité, sélectionnez Standard ou Lancement fiable.

  6. Dans la liste d’Images, sélectionnez l’image avec la version de SQL Server et le système d’exploitation que vous souhaitez. Utilisez la liste déroulante pour modifier l’image à déployer. Sélectionnez Configurer la génération de machine virtuelle pour choisir la génération de machine virtuelle. Si vous avez sélectionné le Lancement approuvé pour le type de sécurité, la génération de machine virtuelle doit être Gen 2.

  7. Sélectionnez Voir toutes les tailles pour la taille des machines virtuelles. Toutes les machines virtuelles créées ont la même taille. Pour les charges de travail de production, consultez les tailles de machine et la configuration recommandées dans l’article Meilleures pratiques relatives aux performances de SQL Server sur les machines virtuelles Azure.

  8. Sous Compte d’administrateur de machine virtuelle, indiquez un nom d’utilisateur et un mot de passe. Le mot de passe doit contenir au moins 12 caractères et satisfaire aux exigences de complexité définies. Ce compte est celui de l’administrateur de la machine virtuelle.

  9. Dans Licences, vous avez la possibilité d’activer Azure Hybrid Benefit pour apporter votre licence Windows Server existante à Azure. Cette option est disponible uniquement si vous êtes client Software Assurance.

    Sélectionnez Oui si vous souhaitez activer Azure Hybrid Benefit, puis confirmez que vous disposez de Software Assurance en cochant la case. Cette option n’est pas disponible si vous avez sélectionné l’une des images SQL Server gratuites, telles que l’édition Développeur.

  10. Sous Licence SQL Server, vous avez la possibilité d’activer Azure Hybrid Benefit afin d’importer votre propre licence SQL Server pour économiser sur le coût des licences. Cette option est disponible uniquement si vous êtes client Software Assurance.

    Sélectionnez Oui si vous souhaitez activer Azure Hybrid Benefit, puis confirmez que vous disposez de Software Assurance en cochant la case. Cette option n’est pas disponible si vous avez sélectionné l’une des images SQL Server gratuites, par exemple l’édition Développeur.

    Capture d’écran du portail Azure qui montre des informations sur les licences SQL Server et Azure Hybrid Benefit.

  11. Sélectionnez Suivant : Réseau.

Choisir les paramètres réseau

Sous l’onglet Réseau, configurez vos options pour le réseau :

  1. Sélectionnez le réseau virtuel dans la liste déroulante. La liste est préremplie en fonction de la région et du groupe de ressources que vous avez choisis sous l’onglet De base. Le réseau virtuel sélectionné doit contenir la machine virtuelle contrôleur de domaine.

    Attention

    Si le contrôleur de domaine n’existe pas dans le réseau virtuel sélectionné, le déploiement échoue.

  2. Sous Groupe de sécurité réseau de la carte réseau, sélectionnez un groupe de sécurité de base ou le groupe de sécurité Avancé. Le choix de l’option de base vous permet de sélectionner des ports d’entrée pour la machine virtuelle SQL Server. Sélectionner l’option Avancé vous permet de choisir un groupe de sécurité réseau existant ou d’en créer un.

  3. Configurez les Ports d’entrée publics, si nécessaire, en sélectionnant Autoriser les ports sélectionnés. Utilisez ensuite la liste déroulante pour sélectionner les ports communs autorisés.

  4. Choisissez un type pour la Référence SKU de l’IP publique. Toutes les machines utiliseront ce type d’IP publique.

  5. Chaque machine virtuelle que vous créez doit se trouver dans son propre sous-réseau.

    Sous Créer des sous-réseaux, sélectionnez Gérer la configuration du sous-réseau pour ouvrir le volet Sous-réseaux du réseau virtuel. Ensuite, créez un sous-réseau (+Sous-réseau) pour chaque machine virtuelle, ou vérifiez qu’un sous-réseau est disponible pour chaque machine virtuelle que vous souhaitez créer pour le groupe de disponibilité.

    Lorsque vous avez terminé, utilisez le X pour fermer le volet de gestion des sous-réseaux et revenir à la page de déploiement du groupe de disponibilité.

    Capture d’écran du portail Azure qui montre le volet de gestion des sous-réseaux pour un réseau virtuel.

  6. Utilisez les listes déroulantes pour affecter le sous-réseau, l’adresse IP publique et l’adresse IP de l’écouteur à chaque machine virtuelle que vous créez. Si vous utilisez une image Windows Server 2016, vous devez également affecter l’adresse IP de cluster. Si vous avez sélectionné la zone de disponibilité sous l’onglet Informations de base comme option de disponibilité, chaque machine virtuelle a été affectée à une autre zone. Si nécessaire, réaffectez chaque machine virtuelle à une zone, mais notez que les machines virtuelles ne peuvent pas être placées dans la même zone de disponibilité.

    Lorsque vous affectez un sous-réseau à une machine virtuelle, les zones de l’écouteur et du cluster sont prérenseignées avec des adresses IP disponibles. Placez votre curseur dans la zone si vous souhaitez modifier l’adresse IP. Sélectionnez Créer si vous devez créer une adresse IP.

    Capture d’écran du portail Azure qui montre la page de configuration des sous-réseaux et des adresses IP.

  7. Si vous souhaitez supprimer l’adresse IP publique et la carte réseau créées lorsque vous supprimez la machine virtuelle, cochez la case.

  8. Sélectionnez Suivant : WSFC et informations d’identification.

Choisir les paramètres du cluster de basculement

Sous l’onglet WSFC et informations d’identification, indiquez les informations de compte permettant de configurer et gérer le cluster de basculement Windows Server et SQL Server.

Attention

Pour que le déploiement fonctionne, tous les comptes doivent déjà être présents dans Active Directory pour la machine virtuelle du contrôleur de domaine. Si vous fournissez un compte non valide, ce processus de déploiement ne crée aucun compte et entraîne un échec. Pour plus d’informations sur les autorisations nécessaires, consultez Configurer les comptes de cluster dans Active Directory.

  1. Sous Détails du cluster de basculement Windows, indiquez le nom à utiliser pour le cluster de basculement.

  2. Dans la liste déroulante, sélectionnez le compte de stockage que vous souhaitez utiliser pour le témoin cloud. S’il n’en existe pas, sélectionnez Créer un compte de stockage.

  3. Sous Détails du domaine Windows Active Directory :

    • Pour Nom d’utilisateur de jonction de domaine et Mot de passe de jonction de domaine, entrez les informations d’identification du compte qui crée le nom du cluster de basculement Windows Server dans Active Directory et joint les machines virtuelles au domaine. Ce compte doit disposer des autorisations Créer des objets ordinateur.

    • Pour Nom de domaine complet, entrez un nom de domaine complet, tel que contoso.com.

    Capture d’écran du portail Azure qui montre les détails du domaine Windows Active Directory.

  4. Dans la section Détails de SQL Server, fournissez les détails du compte pour le service SQL Server. Plusieurs options sont disponibles :

    a. Utilisez le même compte joint au domaine qui crée le cluster et joint les machines virtuelles au domaine en choisissant Identique au compte joint au domaine. Il s’agit du même compte que ci-dessus.

    b. En sélectionnant le compte de service administré de groupe (GMSA), nous allons installer tous les outils et services requis sur les machines virtuelles créées, notamment l’installation de l’outil ADDS, la jonction des machines virtuelles au groupe de sécurité GMSA et l’installation du service GMSA. Pour que le déploiement GMSA réussisse, l’utilisateur joint à un domaine doit disposer, au moins, d’une autorisation d’écriture sur le groupe AD GMSA.

    c. Vous pouvez également sélectionner Personnalisé et fournir différents détails de compte à utiliser avec le compte de service SQL Server.

    Capture d’écran du portail Azure qui montre des informations sur un compte de service SQL Server.

  5. Sélectionnez Suivant : Disques.

Choisir les paramètres de disque

Sous l’onglet Disques, configurez les options de disque pour les machines virtuelles ainsi que la configuration du stockage SQL Server :

  1. Sous Type de disque du système d’exploitation, sélectionnez le type de disque que vous voulez pour votre système d’exploitation. Nous recommandons Premium pour les systèmes de production, mais cette option n’est pas disponible pour une machine virtuelle De base. Pour utiliser un disque SSD Premium, changez la taille de la machine virtuelle.

  2. Sélectionnez un Type de chiffrement pour les disques.

  3. Sous Configuration du stockage, sélectionnez Changer la configuration pour ouvrir le volet Configurer le stockage et spécifier les besoins relatifs au stockage. Vous pouvez choisir de conserver les valeurs par défaut, ou modifier manuellement la topologie de stockage en fonction de vos besoins en matière d’opérations d’entrée/sortie par seconde (IOPS). Pour plus d’informations, consultez Configurer le stockage pour les machines virtuelles SQL Server.

    Capture d’écran du portail Azure montrant la configuration de stockage actuelle et le bouton permettant de modifier la configuration.

  4. Sous Stockage de données, choisissez l’emplacement de votre lecteur de données, le type de disque et le nombre de disques. Vous pouvez également cocher la case pour stocker vos bases de données système sur votre lecteur de données plutôt que sur le lecteur C local.

    Capture d’écran du portail Azure qui montre les paramètres de configuration pour le stockage de données.

  5. Sous Stockage du journal, vous pouvez choisir d’utiliser le lecteur de données utilisé pour vos fichiers journaux de transactions, ou sélectionner un lecteur distinct dans la liste déroulante. Vous pouvez également choisir le nom du lecteur, le type de disque et le nombre de disques.

    Capture d’écran du portail Azure qui montre les paramètres de configuration pour le stockage des journaux.

  6. Sous Stockage TempDb, configurez les paramètres de votre base de données tempdb. Les choix incluent l’emplacement des fichiers de base de données, le nombre de fichiers, la taille initiale et la taille de croissance automatique en mégaoctets.

    Actuellement, pendant le déploiement, le nombre maximal de fichiers tempdb est de huit. Toutefois, vous pouvez ajouter d’autres fichiers après le déploiement de la machine virtuelle SQL Server.

    Capture d’écran du portail Azure qui montre les paramètres de configuration pour le stockage tempdb.

  7. Sélectionnez OK pour enregistrer vos paramètres de configuration du stockage.

  8. Sélectionnez Suivant : Paramètres SQL Server.

Choisir les paramètres SQL Server

Sous l’onglet Paramètres SQL Server, configurez les paramètres et les optimisations spécifiques pour SQL Server et le groupe de disponibilité :

  1. Sous Détails du groupe de disponibilité :

    1. Spécifiez le nom du groupe de disponibilité et de l’écouteur.

    2. Sélectionnez le rôle, Principal ou Secondaire, de chaque machine virtuelle à créer.

    3. Choisissez les paramètres de groupe de disponibilité qui répondent le mieux à vos besoins métier.

    Capture d’écran du portail Azure qui montre les détails du groupe de disponibilité.

  2. Sous Sécurité et Réseau, sélectionnez Connectivité SQL pour accéder à l’instance SQL Server sur les machines virtuelles. Pour plus d’informations sur les options de connectivité, consultez Connectivité.

  3. Si vous avez besoin de l’authentification SQL Server, sélectionnez Activer sous Authentification SQL Server, puis indiquez le nom de connexion et le mot de passe. Ces informations d’identification seront utilisées sur toutes les machines virtuelles que vous déployez. Pour plus d’informations sur les options d’authentification, consultez Authentification.

  4. Pour Azure Key Vault Integration, sélectionnez Activer si vous souhaitez utiliser Azure Key Vault pour stocker les secrets de sécurité à des fins de chiffrement. Ensuite, renseignez les informations demandées. Pour en savoir plus, consultez Intégration du coffre de clés Azure.

  5. Sélectionnez Modifier les paramètres d’instance SQL pour modifier les options de configuration de SQL Server. Ces options incluent le classement du serveur, le degré maximal de parallélisme (MAXDOP), la mémoire minimale et maximale, et si vous souhaitez optimiser pour les charges de travail ad hoc.

    Capture d’écran du portail Azure montrant les paramètres d’instance SQL Server et le bouton permettant de les modifier.

Choisir la validation des composants requis

Pour que le déploiement réussisse, plusieurs composants requis doivent être en place. Pour faciliter la validation de l’exactitude de toutes les autorisations et de tous les composants requis, utilisez le script de composants requis PowerShell disponible en téléchargement sous cet onglet.

Le script sera prérempli avec les valeurs fournies dans les étapes précédentes. Exécutez le script PowerShell en tant qu’utilisateur de domaine sur la machine virtuelle du contrôleur de domaine ou sur une machine virtuelle Windows Server jointe à un domaine.

Une fois le script exécuté et les composants requis validés, cochez la case de confirmation.

Capture d’écran du Portail Azure qui montre l’onglet de validation des composants requis.

  1. Sélectionnez Vérifier + créer.

  2. Sous l’onglet Vérifier + créer, passez en revue la synthèse. Ensuite, sélectionnez Créer pour créer les serveurs SQL, le cluster de basculement, le groupe de disponibilité et l’écouteur.

    Si nécessaire, vous pouvez sélectionner Télécharger un modèle pour l’automatisation.

Vous pouvez surveiller le déploiement à partir du portail Azure. Le bouton Notifications en haut de l’écran montre l’état de base du déploiement.

Une fois le déploiement terminé, vous pouvez accéder à la ressource Machines virtuelles SQL dans le portail. Sous Paramètres, sélectionnez Haute disponibilité pour superviser l’intégrité du groupe de disponibilité. Sélectionnez la flèche en regard du nom de votre groupe de disponibilité pour voir une liste de tous les réplicas.

Capture d’écran du portail Azure montrant l’intégrité d’un groupe de disponibilité qui n’est actuellement pas sain.

Remarque

Intégrité de synchronisation dans la page Haute disponibilité du portail Azure indiquera défectueux jusqu’à ce que vous ajoutiez des bases de données à votre groupe de disponibilité.

Ajouter des bases de données au groupe de disponibilité

Ajoutez des bases de données à votre groupe de disponibilité une fois le déploiement terminé. Les étapes suivantes utilisent SQL Server Management Studio, mais vous pouvez également utiliser Transact-SQL ou PowerShell.

  1. Connectez-vous à l’une de vos machines virtuelles SQL Server à l’aide de la méthode de votre choix, telle que Connexion Bureau à distance (RDP). Utilisez un compte de domaine membre du rôle serveur fixe sysadmin sur toutes les instances SQL.

  2. Ouvrez SQL Server Management Studio.

  3. Connectez-vous à votre instance SQL Server.

  4. Dans Explorateur d’objets, développez Haute disponibilité Always On.

  5. Développez Groupes de disponibilité, cliquez avec le bouton droit sur votre groupe de disponibilité, puis sélectionnez Ajouter une base de données.

    Capture d’écran de SQL Server Management Studio montrant les sélections pour l’ajout d’une base de données à un groupe de disponibilité.

  6. Suivez les invites pour sélectionner la base de données que vous souhaitez ajouter à votre groupe de disponibilité.

  7. Sélectionnez OK pour enregistrer vos paramètres et ajouter la base de données.

  8. Actualisez l’Explorateur d’objets pour confirmer que l’état de votre base de données est synchronized.

Après avoir ajouté des bases de données, vous pouvez vérifier votre groupe de disponibilité dans le portail Azure et confirmer que l’état est Sain.

Capture d’écran du portail Azure montrant l’intégrité du groupe de disponibilité, qui est actuellement sain.

Modifier le groupe de disponibilité

Une fois votre groupe de disponibilité déployé via le portail, tous les changements apportés à celui-ci doivent être effectués manuellement. Si vous souhaitez supprimer un réplica, vous pouvez effectuer l’opération via SQL Server Management Studio ou Transact-SQL, et supprimer ensuite la machine virtuelle via le portail Azure. Si vous souhaitez ajouter un réplica, vous devez déployer la machine virtuelle manuellement sur le groupe de ressources, la joindre au domaine et ajouter le réplica comme vous le faites habituellement dans un environnement local classique.

Supprimer un cluster

Vous pouvez supprimer un cluster à l’aide de la dernière version d’Azure CLI ou de PowerShell.

Commencez par supprimer toutes les machines virtuelles SQL Server du cluster :

# Remove the VM from the cluster metadata
# example: az sql vm remove-from-group --name SQLVM2 --resource-group SQLVM-RG

az sql vm remove-from-group --name <VM1 name>  --resource-group <resource group name>
az sql vm remove-from-group --name <VM2 name>  --resource-group <resource group name>

Si les machines virtuelles SQL Server que vous avez supprimées étaient les seules machines virtuelles du cluster, le cluster sera détruit. S’il reste d’autres machines virtuelles dans le cluster, elles ne seront pas supprimées et le cluster ne sera pas détruit.

Ensuite, supprimez les métadonnées relatives au cluster de l’extension SQL IaaS Agent :

# Remove the cluster from the SQL VM RP metadata
# example: az sql vm group delete --name Cluster --resource-group SQLVM-RG

az sql vm group delete --name <cluster name> --resource-group <resource group name>

Dépanner

Si vous rencontrez des problèmes, vous pouvez vérifier l’historique de déploiement et passer en revue les erreurs courantes ainsi que leurs résolutions.

Les modifications apportées au cluster et au groupe de disponibilité via le portail sont appliquées par le biais de déploiements. L’historique de déploiement peut fournir plus de détails en cas de problème lors de la création ou de l’intégration du cluster, ou lors de la création du groupe de disponibilité.

Pour afficher les journaux du déploiement et vérifier l’historique de déploiement :

  1. Connectez-vous au portail Azure.

  2. Accédez à votre groupe de ressources.

  3. Sous Paramètres, sélectionnez Déploiements.

  4. Sélectionnez le déploiement qui vous intéresse pour en savoir plus sur celui-ci.

    Capture d’écran du portail Azure qui montre un échec de déploiement de groupe de disponibilité dans une liste de déploiements.

Si le déploiement échoue et que vous souhaitez redéployer à l’aide du portail, vous devez nettoyer manuellement les ressources, car le déploiement par le biais du portail n’est pas idempotent (reproductible). Ces tâches de nettoyage incluent la suppression de machines virtuelles et la suppression d’entrées dans Active Directory et/ou DNS. Toutefois, si vous utilisez le portail Azure pour créer un modèle afin de déployer votre groupe de disponibilité, puis que vous utilisez ce modèle pour l’automatisation, le nettoyage des ressources n’est pas nécessaire, car le modèle est idempotent.

Étapes suivantes

Une fois le groupe de disponibilité déployé, envisagez d’optimiser les paramètres HADR pour SQL Server sur les machines virtuelles Azure.

Pour en savoir plus, consultez :