Instances de cluster de basculement avec SQL Server sur des machines virtuelles Azure

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

Cet article présente les différences de fonctionnalités lorsque vous utilisez des instances de cluster de basculement (FCI) pour SQL Server sur des machines virtuelles Azure.

Pour commencer, préparez votre machine virtuelle.

Vue d’ensemble

SQL Server sur des machines virtuelles Azure utilise la fonctionnalité WSFC (clustering de basculement Windows Server) pour fournir une haute disponibilité locale via la redondance au niveau de l’instance du serveur : une instance de cluster de basculement. Une instance FCI est une instance unique de SQL Server installée sur les nœuds WSFC (ou tout simplement du cluster) et, éventuellement, sur plusieurs sous-réseaux. Sur le réseau, une instance FCI apparaît comme une instance unique de SQL Server s’exécutant sur un seul ordinateur. Toutefois, l’instance FCI permet le basculement d’un nœud WSFC vers un autre si le nœud actuel devient indisponible.

Le reste de cet article se concentre sur les différences entre les instances de cluster de basculement lorsqu’elles sont utilisées avec SQL Server sur des machines virtuelles Azure. Pour en savoir plus sur la technologie de clustering de basculement, consultez :

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.

Quorum

Les instances de cluster de basculement avec SQL Server sur des machines virtuelles Azure prennent en charge l’utilisation d’un témoin de disque, d’un témoin de cloud ou d’un témoin de partage de fichiers pour le quorum du cluster.

Pour plus d’informations, consultez Meilleures pratiques de quorum avec des machines virtuelles SQL Server dans Azure.

Stockage

Dans les environnements en cluster locaux traditionnels, un cluster de basculement Windows utilise un réseau de zone de stockage (SAN) qui est accessible par les deux nœuds en tant que stockage partagé. Les fichiers SQL Server sont hébergés sur le stockage partagé, et seul le nœud actif peut accéder simultanément aux fichiers.

SQL Server sur les machines virtuelles Azure offre différentes options en tant que solution de stockage partagé pour un déploiement d’instances SQL Server de cluster de basculement :

Disques partagés Azure Partages de fichiers Premium Espaces de stockage direct (S2D)
Version de système d’exploitation minimale Tous Windows Server 2012 Windows Server 2016
Version minimale de SQL Server Tous SQL Server 2012 SQL Server 2016
Disponibilité des machines virtuelles prises en charge SSD Premium LRS : groupes à haute disponibilité avec ou sans groupe de placement de proximité
SSD Premium ZRS : zones de disponibilité
Disques Ultra : même zone de disponibilité
Groupes à haute disponibilité et zones de disponibilité Groupes à haute disponibilité
Prend en charge FileStream Oui Non Oui
Cache d'objets blob Azure Non Non Oui

Le reste de cette section répertorie les avantages et les limitations de chaque option de stockage disponible pour SQL Server sur les machines virtuelles Azure.

Disques partagés Azure

Les disques partagés Azure sont une fonctionnalité des disques managés Azure. Le clustering de basculement Windows Server prend en charge l’utilisation de disques partagés Azure avec une instance de cluster de basculement.

Systèmes d’exploitation pris en charge : Tous
Version de SQL pris en charge : Tous

Avantages :

  • Utile pour les applications qui cherchent à migrer vers Azure tout en conservant leur architecture de haute disponibilité et de récupération d’urgence (HADR) telle quelle.
  • Peut migrer des applications en cluster vers Azure en raison de la prise en charge des réservations persistantes SCSI (SCSI PR).
  • Prend en charge le stockage SSD Premium Azure partagées et Disque Ultra Azure.
  • Peut utiliser un seul disque partagé ou entrelacer plusieurs disques partagés pour créer un pool de stockage partagé.
  • Prend en charge FILESTREAM.
  • Les disques SSD Premium prennent en charge les groupes à haute disponibilité.
  • Les disques SSD Premium avec stockage redondant interzone (ZRS) prennent en charge les zones de disponibilité. Les machines virtuelles qui font partie d’une instance FCI peuvent être placées dans différentes zones de disponibilité.

Notes

Même si les disques partagés Azure prennent également en charge les tailles de disque SSD Standard, nous vous déconseillons d’utiliser des disques SSD Standard pour les charges de travail SQL Server en raison des limitations de performances.

Limitations :

  • La mise en cache des disques SSD Premium n’est pas prise en charge.
  • Les disques Ultra ne prennent pas en charge les groupes à haute disponibilité.
  • Les zones de disponibilité sont prises en charge pour les disques Ultra, mais les machines virtuelles doivent être dans la même zone de disponibilité, ce qui réduit à 99,9 % la disponibilité de la machine virtuelle
  • Les disques Ultra ne prennent pas en charge le stockage redondant interzone (ZRS)

Pour commencer, consultez Instance de cluster de basculement SQL Server avec disques partagés Azure.

Espaces de stockage direct

Espaces de stockage direct est une fonctionnalité Windows Server prise en charge avec le clustering de basculement sur les machines virtuelles Azure. Il fournit un réseau SAN virtuel basé sur logiciel.

Systèmes d’exploitation pris en charge : Windows Server 2016 et versions ultérieures
Version de SQL pris en charge : SQL Server 2016 et versions ultérieures

Avantages :

  • une bande passante réseau suffisante offre une solution de stockage partagé robuste et hautement performante.
  • Prend en charge le cache d’objets blob Azure pour que les lectures puissent être effectuées localement à partir du cache. (Les mises à jour sont répliquées simultanément sur les deux nœuds.)
  • Prend en charge FileStream.

Limitations :

  • Disponible uniquement pour Windows Server 2016 et versions ultérieures.
  • Non, les Zones de disponibilité ne sont pas prises en charge.
  • Requiert la même capacité de disque attachée aux deux machines virtuelles.
  • Une bande passante réseau élevée est nécessaire pour obtenir des performances élevées en raison d’une réplication de disque continue.
  • Requiert une plus grande taille de machine virtuelle et le double paiement du stockage, car ce dernier est attaché à chaque machine virtuelle.

Pour commencer, consultez Instance de cluster de basculement SQL Server avec espaces de stockage direct.

Partage de fichiers Premium

Les partages de fichiers Premium sont une fonctionnalité d’Azure Files. Les partages de fichiers Premium sont des disques SSD sauvegardés et ont une faible latence. Ils sont entièrement pris en charge pour une utilisation avec les 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é, car vous pouvez redimensionner et mettre à l’échelle un partage de fichiers sans temps d’arrêt.

Systèmes d’exploitation pris en charge : Windows Server 2012 et ultérieur
Version de SQL pris en charge : SQL Server 2012 et versions ultérieures

Avantages :

  • Une solution de stockage partagé pour les machines virtuelles s’étend sur plusieurs zones de disponibilité.
  • Système de fichiers complètement managé avec des latences à un chiffre et des performances d’e/s expansibles.

Limitations :

  • Disponible uniquement pour Windows Server 2012 et versions ultérieures.
  • FileStream n’est pas pris en charge.

Pour commencer, consultez Instance de cluster de basculement SQL Server avec partage de fichiers Premium.

Partenaire

Il existe des solutions de clustering de partenaires avec stockage pris en charge.

Systèmes d’exploitation pris en charge : Tous
Version de SQL pris en charge : Tous

Un exemple utilise le stockage DataKeeper SIOS. Pour plus d’informations, consultez l’entrée de blog Cluster de basculement et DataKeeper SIOS.

iSCSI et ExpressRoute

Vous pouvez également exposer un stockage de bloc partagé cible iSCSI via Azure ExpressRoute.

Systèmes d’exploitation pris en charge : Tous
Version de SQL pris en charge : Tous

Par exemple, NPS (NetApp Private Storage) expose une cible iSCSI via ExpressRoute avec Equinix dans les machines virtuelles Azure.

Pour les solutions de stockage partagé et de réplication de données proposées par des partenaires Microsoft, contactez le fournisseur pour tout problème lié à l’accès aux données lors du basculement.

Connectivité

Pour relier l’expérience locale de connexion à votre instance de cluster de basculement, déployez vos machines virtuelles SQL Server sur plusieurs sous-réseaux au sein du même réseau virtuel. Quand vous avez plusieurs réseaux, vous n’avez pas besoin d’une dépendance supplémentaire sur un équilibreur de charge Azure ou d’un nom de réseau distribué (DNN) pour router votre trafic vers votre FCI.

Si vous déployez vos machines virtuelles SQL Server dans un même sous-réseau, vous pouvez configurer un nom de réseau virtuel (VNN) et un équilibreur de charge Azure, ou un nom de réseau distribué (DNN) pour router le trafic vers votre 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 pour votre instance de cluster de basculement.

Le nom de réseau distribué est recommandé si c’est possible, car le basculement est plus rapide, et la surcharge et le coût de la gestion de l’équilibreur de charge sont éliminés.

La plupart des fonctionnalités de SQL Server fonctionnent de façon transparente avec les FCI lors de l’utilisation du DNN, mais certaines fonctionnalités peuvent nécessiter une attention particulière. Pour plus d’informations, consultez la section sur l’interopérabilité entre FCI et DNN.

Limites

Tenez compte des limitations suivantes pour les instances de cluster de basculement avec SQL Server sur des machines virtuelles Azure.

Prise en charge limitée des extensions

À l’heure actuelle, les instances de cluster de basculement SQL Server sur des machines virtuelles Azure inscrites auprès de l’extension d’agent IaaS SQL ne prennent en charge qu’un nombre limité de fonctionnalités. 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 vous désinscrire de l’extension 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.

Les FCI SQL Server inscrites auprès de l’extension ne prennent pas en charge les fonctionnalités qui nécessitent l’agent, comme la sauvegarde automatisée, la mise à jour corrective et la gestion avancée du portail. Consultez le tableau des avantages.

MSDTC

La solution Machines virtuelles Azure prend en charge Microsoft Distributed Transaction Coordinator (MSDTC) sur Windows Server 2019, avec un stockage sur les volumes partagés en cluster (CSV) et Azure Standard Load Balancer ou sur des machines virtuelles SQL Server qui utilisent des disques partagés Azure.

Concernant Machines virtuelles Azure, MSDTC n’est pas pris en charge pour Windows Server 2016 ou versions antérieures avec des volumes partagés en cluster pour la raison suivante :

  • La ressource MSDTC en cluster n’est pas configurable pour utiliser le stockage partagé. Sur Windows Server 2016, si vous créez une ressource MSDTC, celle-ci n’affiche pas le stockage partagé qui est disponible pour l’utilisation, et cela même si le stockage est disponible. Ce problème a été résolu dans Windows Server 2019.
  • L’équilibreur de charge de base ne gère pas les ports RPC.