Créer un ICF avec un partage de fichiers premium (SQL Server sur les machines virtuelles Azure)

S’applique à : SQL Server sur machine virtuelle Azure

Cet article explique comment créer une instance de cluster de basculement (ICF) avec SQL Server sur des machines virtuelles (VM) Azure à l’aide d’un partage de fichiers premium.

Les partages de fichiers premium s’appuient sur des disques SSD. Ils fournissent en permanence des partages de fichiers à faible latence entièrement pris en charge pour une utilisation avec des instances de cluster de basculement pour SQL Server 2012 ou version ultérieure sur Windows Server 2012 ou version ultérieure. Les partages de fichiers Premium vous offrent une plus grande flexibilité, ce qui vous permet de redimensionner et de mettre à l’échelle un partage de fichiers sans temps d’arrêt.

Pour plus d’informations, consultez une présentation de ICF avec SQL Server sur les machines virtuelles Azure et les meilleures pratiques de cluster.

Notes

Il est maintenant possible d’effectuer un lift-and-shift de votre solution d’instance de cluster de basculement vers SQL Server sur des machines virtuelles Azure à l’aide d’Azure Migrate. Pour en savoir plus, consultez Migrer une instance de cluster de basculement.

Prérequis

Avant de suivre les instructions décrites dans cet article, vous devez déjà disposer des éléments suivants :

Conseil

Simplifiez votre déploiement et éliminez le recours à Azure Load Balancer et à un nom de réseau distribué (DNN) pour votre instance de cluster de basculement en créant vos machines virtuelles SQL Server dans plusieurs sous-réseaux au sein du même réseau virtuel Azure.

Monter le partage de fichiers Premium

Pour monter votre partage de fichiers premium, procédez comme suit :

  1. Connectez-vous au portail Azure et accédez à votre compte de stockage.

  2. Accédez à Partages de fichiers sous Stockage de données, puis sélectionnez le partage de fichiers Premium que vous souhaitez utiliser pour votre stockage SQL.

  3. Sélectionnez Connecter pour afficher la chaîne de connexion de votre partage de fichiers.

  4. Dans la liste déroulante, sélectionnez la lettre de lecteur que vous souhaitez utiliser, choisissez la Clé de compte de stockage comme méthode d’authentification, puis copiez le bloc de code dans un éditeur de texte tel que Notepad.

    Capture d’écran montrant comment copier la commande PowerShell à partir du portail de connexion au partage de fichiers.

  5. Utilisez le protocole bureau distant (RDP) pour établir une connexion à la machine virtuelle SQL Server à l’aide du compte que votre instance de cluster de basculement SQL Server utilisera pour le compte de service.

  6. Ouvrez une console de commande PowerShell d’administration.

  7. Exécutez la commande que vous avez copiée dans votre éditeur de texte sur le portail de partage de fichiers.

  8. Accédez au partage avec l’Explorateur de fichiers ou la boîte de dialogue Exécuter (Windows+R sur votre clavier). Utilisez le chemin d’accès réseau \\storageaccountname.file.core.windows.net\filesharename. Par exemple : \\sqlvmstorageaccount.file.core.windows.net\sqlpremiumfileshare

  9. Créez au moins un dossier sur le partage de fichiers auquel vous venez de vous connecter afin d’y placer vos fichiers de données SQL.

  10. Répétez ces étapes sur chaque machine virtuelle SQL Server qui fera partie du cluster.

Important

Envisagez d’utiliser un partage de fichiers distinct pour les fichiers de sauvegarde pour préserver les opérations d’entrée/sortie par seconde (IOPS) et d’espace de ce partage pour les fichiers de données et les fichiers journaux. Vous pouvez utiliser un partage de fichiers Premium ou Standard pour les fichiers de sauvegarde.

Créer un cluster de basculement Windows

Les étapes de création de votre cluster de basculement Windows Server diffèrent entre un sous-réseau unique et des environnements multi-sous-réseaux. Suivez les étapes indiquées dans le tutoriel du scénario à plusieurs sous-réseaux ou celui du scénario à un seul sous-réseau. Même si ces tutoriels créent un groupe de disponibilité, la procédure de création du cluster est la même pour une instance de cluster de basculement.

Configurer un quorum

Le témoin cloud est la solution de quorum recommandée pour ce type de configuration de cluster pour SQL Server sur machines virtuelles Azure.

Si vous avez un nombre pair de votes dans le cluster, configurez la Solution de quorum qui correspond le mieux aux besoins de votre entreprise. Pour plus d’informations, consultez Quorum avec les machines virtuelles SQL Server.

Valider le cluster

Validez le cluster sur l’une des machines virtuelles avec l’interface utilisateur du Gestionnaire du cluster de basculement ou PowerShell.

Pour valider le cluster à l’aide de l’interface utilisateur, procédez comme suit sur l’une des machines virtuelles :

  1. Dans Gestionnaire de serveur, sélectionnez Outils, puis Gestionnaire du cluster de basculement.

  2. Cliquez avec le bouton droit sur le cluster dans le Gestionnaire du cluster de basculement, sélectionnez Valider le cluster pour ouvrir l’Assistant validation d’une configuration.

  3. Dans l’Assistant validation d’une configuration, sélectionnez Suivant.

  4. Dnas la page Sélectionner des serveurs ou un cluster, entrez le nom des deux machines virtuelles.

  5. Sur la page Options de test, sélectionnez Exécuter uniquement les tests que je sélectionne.

  6. Cliquez sur Suivant.

  7. Dans la page Sélection des tests, sélectionnez tous les tests à l’exception de Stockage et Espaces de stockage direct :

    Capture d’écran montrant comment sélectionner des tests de validation de cluster.

  8. Cliquez sur Suivant.

  9. Dans la page Confirmation, sélectionnez Suivant. L’assistant Valider une configuration exécute les tests de validation.

Pour valider le cluster avec PowerShell, exécutez le script suivant à partir d’une session PowerShell d’administrateur sur l’une des machines virtuelles :

Test-Cluster –Node ("<node1>","<node2>") –Include "Inventory", "Network", "System Configuration"

Tester le basculement de cluster

Testez le basculement de votre cluster. Dans le Gestionnaire du cluster de basculement, cliquez avec le bouton droit sur votre cluster et sélectionnez Autres actions>Déplacer une ressource de cluster principale>Sélectionner le nœud et sélectionnez l’autre nœud du cluster. Déplacez la ressource de cluster principale vers chaque nœud du cluster, puis replacez-la sur le nœud principal. Si vous parvenez à déplacer le cluster vers chaque nœud, vous êtes prêt à installer SQL Server.

Capture d’écran montrant comment tester le basculement d'un cluster en déplaçant la ressource principale vers les autres nœuds.

Créer l’instance de cluster de basculement SQL Server

Après avoir configuré le cluster de basculement et tous les composants du cluster, notamment le stockage, vous pouvez créer l’instance de cluster de basculement SQL Server.

Créer un premier nœud dans l’instance de cluster de basculement SQL

Pour créer le premier nœud dans l’instance de cluster de basculement SQL Server, procédez comme suit :

  1. Connectez-vous à la première machine virtuelle avec RDP ou Bation.

  2. Dans le Gestionnaire du cluster de basculement, vérifiez que toutes les ressources principales du cluster se trouvent sur la première machine virtuelle. Si nécessaire, déplacez toutes les ressources vers cette machine virtuelle.

  3. Si la version du système d’exploitation est Windows Server 2019 et que le cluster Windows a été créé à l’aide du nom de réseau DNN (Distributed Network Name) par défaut, l’installation de la technologie FCI pour SQL Server 2017 et les versions antérieures échoue en affichant ce message d’erreur The given key was not present in the dictionary.

    Lors de l’installation, la configuration SQL Server recherche le nom de réseau virtuel (VNN) existant et ne reconnaît pas le cluster DNN Windows. Le problème a été résolu dans la configuration SQL Server 2019. Pour SQL Server 2017 et les versions antérieures, suivez ces étapes pour éviter l’erreur d’installation :

    • Dans le Gestionnaire de cluster de basculement, connectez-vous au cluster, cliquez avec le bouton droit sur Rôles, puis sélectionnez Créer un rôle vide.
    • Faites un clic droit sur le rôle vide nouvellement créé, sélectionnez Ajouter une ressource, puis sélectionnez Point d’accès client.
    • Entrez un nom et effectuez l’Assistant pour créer le Point d’accès client.
    • Une fois l’installation du FCI SQL Server terminée, le rôle contenant le Point d’accès client temporaire peut être supprimé.
  4. Recherchez le support d’installation. Si la machine virtuelle utilise l’une des images Azure Marketplace, le support se situe sous C:\SQLServer_<version number>_Full.

  5. Sélectionnez Configuration.

  6. Dans le Centre d’installation SQL Server, sélectionnez Installation.

  7. Sélectionnez Installation du nouveau cluster de basculement SQL Server, puis suivez les instructions dans l’assistant pour installer l’ICF SQL Server.

  8. Sur la page Configuration réseau du cluster, l’adresse IP à indiquer varie selon que vos machines virtuelles SQL Server ont été déployées sur un seul ou plusieurs sous-réseaux.

    1. Pour un environnement à un seul sous-réseau, indiquez l’adresse IP que vous prévoyez d’ajouter à l’instance Azure Load Balancer.
    2. Pour un environnement à plusieurs sous-réseaux, indiquez l’adresse IP secondaire dans le sous-réseau de la première machine virtuelle SQL Server que vous aviez désignée comme adresse IP du nom réseau de l’instance de cluster de basculement :

    Capture d’écran de l’adresse IP secondaire dans le sous-réseau de la première machine virtuelle.

  9. Dans une Configuration de moteur de base de données, les répertoires de données doivent se trouver sur le partage de fichiers premium. Entrez le chemin d’accès complet du partage, sous la forme suivante : \\storageaccountname.file.core.windows.net\filesharename\foldername. Un avertissement s’affiche, vous indiquant que vous avez spécifié un serveur de fichiers comme répertoire de données. Cet avertissement est attendu. Vérifiez que le compte d’utilisateur avec lequel vous avez accédé par RPD à la machine virtuelle lorsque vous avez conservé le partage de fichiers est celui que le service SQL Server utilise pour éviter d’éventuelles défaillances.

    Capture d’écran montrant comment utiliser le partage de fichiers en tant que répertoires de données SQL.

  10. Une fois que vous avez terminé les étapes de l’assistant, le programme d’installation installe une instance de cluster de basculement SQL Server sur le premier nœud.

Ajouter des nœuds supplémentaires à l’instance de cluster de basculement SQL

Pour ajouter un nœud supplémentaire à l’instance de cluster de basculement SQL Server, procédez comme suit :

  1. Une fois l’instance de cluster de basculement installée sur le premier nœud, connectez-vous au deuxième nœud à l’aide du protocole RDP ou de Bastion.

  2. Dans le Centre d’installation SQL Server, sélectionnez Installation.

  3. Sélectionnez Ajouter un nœud à un cluster de basculement SQL Server. Suivez les instructions de l’Assistant pour installer SQL Server et ajouter le nœud à l’instance de cluster de basculement.

  4. Pour un scénario à plusieurs sous-réseaux : dans Configuration réseau du cluster, entrez l’adresse IP secondaire dans le sous-réseau de la deuxième machine virtuelle SQL Server que vous aviez désignée comme adresse IP du nom réseau de l’instance de cluster de basculement

    Capture d’écran de l’entrée de l’adresse IP secondaire dans le sous-réseau du deuxième sous-réseau de machine virtuelle SQL Server.

    Lorsque vous sélectionnez Suivant dans Configuration réseau du cluster, le programme d’installation affiche une boîte de dialogue indiquant que l’installation de SQL Server a détecté plusieurs sous-réseaux (cf. image d’exemple). Sélectionnez Oui pour confirmer.

    Capture d’écran montrant la confirmation de plusieurs sous-réseaux.

  5. Une fois les instructions de l’Assistant suivies, le programme d’installation ajoute le deuxième nœud FCI SQL Server.

  6. Répétez ces étapes sur les autres nœuds que vous voulez ajouter à l’instance du cluster de basculement du SQL Server.

Notes

Les images de la galerie de la Place de marché Azure sont fournies avec SQL Server Management Studio. Si vous n’avez pas utilisé une image de la place de marché, téléchargez SQL Server Management Studio (SSMS).

S’inscrire avec l’extension Agent IaaS SQL

Pour gérer votre machine virtuelle SQL Server à partir du portail, inscrivez-la avec l’extension Agent IaaS SQL.

Remarque

À ce stade, les instances de cluster de basculement SQL Server sur des machines virtuelles Azure inscrites auprès de l’extension SQL IaaS Agent prennent uniquement en charge un nombre limité de fonctionnalités disponibles via l’inscription de base, et non celles qui nécessitent l’agent, telles que la sauvegarde automatisée, la mise à jour corrective, l’authentification Microsoft Entra et la gestion avancée du portail. Pour en savoir plus, consultez le tableau des avantages.

Inscrire une machine virtuelle SQL Server avec PowerShell (-LicenseType peut être PAYG ou AHUB) :

# Get the existing compute VM
$vm = Get-AzVM -Name <vm_name> -ResourceGroupName <resource_group_name>

# Register SQL VM with SQL IaaS Agent extension
New-AzSqlVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName -Location $vm.Location `
   -LicenseType <license_type>

Configurer la connectivité

Si vous avez déployé vos machines virtuelles SQL Server dans plusieurs sous-réseaux, ignorez cette étape. Si vous avez déployé vos machines virtuelles SQL Server sur un seul sous-réseau, vous devez configurer un composant supplémentaire pour acheminer le trafic vers votre instance FCI. Vous pouvez configurer un nom de réseau virtuel avec une instance Azure Load Balancer ou un nom de réseau distribué pour une instance de cluster de basculement. Passez en revue les différences entre les deux, puis déployez un nom de réseau distribué ou un nom de réseau virtuel et Azure Load Balancer pour votre instance de cluster de basculement.

Limites

  • FILESTREAM n’est pas pris en charge pour un cluster de basculement avec un partage de fichiers Premium. Pour utiliser le flux de fichier, déployez votre cluster en utilisant des Espaces de stockage direct ou les Disques partagés Azure à la place.
  • Les captures instantanées de base de données ne sont actuellement pas prises en charge avec Azure Files en raison des limitations liées aux fichiers partiellement alloués.
  • Étant donné que les instantanés de base de données ne sont pas pris en charge, CHECKDB pour les bases de données utilisateur revient à CHECKDB WITH TABLOCK. TABLOCK limite les vérifications effectuées - DBCC CHECKCATALOG n'est pas exécuté sur la base de données et les données Service Broker n’ont pas été validées.
  • DBCC CHECKDB n’est pas pris en charge sur la base de données master et msdb.
  • Les bases de données utilisant la fonctionnalité OLTP en mémoire ne sont pas prises en charge sur une instance de cluster de basculement déployée avec un partage de fichiers Premium. Si votre entreprise a besoin d’OLTP en mémoire, envisagez de déployer votre FCI avec des disques partagés Azure ou des espaces de stockage direct.
  • Microsoft Distributed Transaction Coordinator (MSDTC) n’est pas pris en charge par SQL Server sur les instances de cluster de basculement de machine virtuelle Azure déployées sur des partages de fichiers Premium. Pour plus d’informations, consultez Limitations FCI.
  • Microsoft Distributed Transaction Coordinator (MSDTC) est pris en charge sur les machines virtuelles Azure à partir de Windows Server 2019 lorsqu'elles sont déployées sur des volumes partagés en cluster (CSV) dédiés et à l'aide d'un équilibreur de charge standard. MSDTC n’est pas pris en charge sur Windows Server 2016 ni les versions antérieures.

Prise en charge limitée des extensions

À ce stade, les instances de cluster de basculement SQL Server sur des machines virtuelles Azure inscrites auprès de l’extension SQL IaaS Agent prennent uniquement en charge un nombre limité de fonctionnalités disponibles via l’inscription de base, et non celles qui nécessitent l’agent, telles que la sauvegarde automatisée, la mise à jour corrective, l’authentification Microsoft Entra et la gestion avancée du portail. Pour en savoir plus, consultez le tableau des avantages.

Si votre machine virtuelle SQL Server a déjà été inscrite auprès de l’extension d’agent IaaS SQL et que vous avez activé toutes les fonctionnalités qui nécessitent l’agent, vous devez supprimer l’extension de la machine virtuelle SQL Server en supprimant la ressource de machine virtuelle SQL pour les machines virtuelles correspondantes, puis l’inscrire à nouveau auprès de l’extension d’agent IaaS SQL. Quand vous supprimez la ressource Machine virtuelle SQL à partir du portail Azure, décochez la case à côté de la machine virtuelle appropriée pour éviter de supprimer la machine virtuelle.