Delen via


Exemplaren van failoverclusters met SQL Server op virtuele Azure-machines

Van toepassing op:SQL Server op Azure VM-

In dit artikel worden functieverschillen geïntroduceerd wanneer u werkt met failoverclusterexemplaren (FCI) voor SQL Server op Azure Virtual Machines (VM's).

Als u aan de slag wilt gaan, u de vmvoorbereiden.

Overzicht

SQL Server op Azure-VM's maakt gebruik van Windows Server Failover Clustering (WSFC) functionaliteit om lokale hoge beschikbaarheid te bieden via redundantie op server-instantie: een failoverclusteromgeving. Een FCI is één exemplaar van SQL Server dat is geïnstalleerd op WSFC-knooppunten (of gewoon de clusterknooppunten) en, mogelijk, over meerdere subnetten. In het netwerk lijkt een FCI één exemplaar van SQL Server te zijn dat op één computer wordt uitgevoerd. Maar de FCI biedt failover van het ene WSFC-knooppunt naar het andere als het huidige knooppunt niet beschikbaar is.

De rest van het artikel is gericht op de verschillen voor failoverclusterexemplaren wanneer ze worden gebruikt met SQL Server op Azure-VM's. Zie voor meer informatie over de technologie voor failoverclustering:

Notitie

Het is nu mogelijk om uw oplossing voor failoverclusterinstanties te verplaatsen naar SQL Server op Azure-VM's met Azure Migrate. Zie instantie van failovercluster migreren voor meer informatie.

Quorum

Failoverclusterexemplaren met SQL Server op Azure Virtual Machines ondersteunen het gebruik van een schijfgetuige, een cloudgetuige of een bestandsdelinggetuige voor het clusterquorum.

Voor meer informatie, zie Best practices voor Quorum met SQL Server-VM's in Azure.

Opslag

In traditionele on-premises geclusterde omgevingen maakt een Windows-failovercluster gebruik van een SAN (Storage Area Network) dat toegankelijk is voor alle knooppunten als gedeelde opslag. SQL Server-bestanden worden gehost op de gedeelde opslag en alleen het actieve knooppunt heeft tegelijkertijd toegang tot de bestanden.

SQL Server op Azure-VM's biedt verschillende opties als een oplossing voor gedeelde opslag voor een implementatie van SQL Server-failoverclusterexemplaren:

gedeelde Azure-schijven Premium-bestandsdelen Storage Spaces Direct (S2D) Azure Elastische SAN
minimale versie van het besturingssysteem Alle Windows Server 2012 Windows Server 2016 Windows Server 2022
minimale SQL Server-versie Alle SQL Server 2012 SQL Server 2016 SQL Server 2022
ondersteunde VM-beschikbaarheid Premium SSD LRS-: beschikbaarheidssets met of zonder nabijheidsplaatsingsgroep
Premium SSD ZRS-: Beschikbaarheidszones
Ultra-schijven: dezelfde beschikbaarheidszone
Beschikbaarheidssets en beschikbaarheidszones Beschikbaarheidssets Beschikbaarheidszones
ondersteunt FileStream- Ja Nee Ja Nee
ondersteunt MSDTC- Ja Nee Nee Nee

De rest van deze sectie bevat de voordelen en beperkingen van elke opslagoptie die beschikbaar is voor SQL Server op Azure-VM's.

Gedeelde Azure-schijven

gedeelde Azure-schijven zijn een functie van door Azure beheerde schijven. Windows Server Failover Clustering biedt ondersteuning voor het gebruik van gedeelde Azure-schijven met een failovercluster-exemplaar.

ondersteund besturingssysteem: alle
Ondersteunde SQL-versie: Alle

Voordelen:

  • Handig voor toepassingen die naar Azure willen migreren en tegelijkertijd hun HADR-architectuur (High Availability and Disaster Recovery) behouden blijft.
  • Kan geclusterde toepassingen, zoals ze zijn, naar Azure migreren vanwege ondersteuning voor SCSI-Persistentiereserveringen (SCSI PR).
  • Biedt ondersteuning voor gedeelde Azure Premium SSD- en Azure Ultra Disk-opslag.
  • Kan één gedeelde schijf gebruiken of meerdere gedeelde schijven stripen om een gedeelde opslaggroep te maken.
  • Ondersteunt FILESTREAM.
  • Premium SSD's ondersteunen beschikbaarheidssets.
  • Premium SSD's Zone Redundant Storage (ZRS) ondersteunt beschikbaarheidszones. VM's die deel uitmaken van FCI kunnen in verschillende beschikbaarheidszones worden geplaatst.
  • Ondersteunt Microsoft Distributed Transaction Coordinator (MSDTC) vanaf Windows Server 2019.

Notitie

Hoewel gedeelde Azure-schijven ook ondersteuning bieden voor Standard SSD-grootten, raden we u niet aan Standard SSD's te gebruiken voor SQL Server-workloads vanwege de prestatiebeperkingen.

beperkingen:

  • Premium SSD-schijfcaching wordt niet ondersteund.
  • Ultraschijven bieden geen ondersteuning voor beschikbaarheidssets of zone-redundante opslag (ZRS).
  • Beschikbaarheidszones worden ondersteund voor Ultra Disks, maar de VM's moeten zich in dezelfde beschikbaarheidszone bevinden, waardoor de beschikbaarheid van de virtuele machine tot 99,9%wordt verminderd.

Zie Failoverclusterexemplaren configureren met gedeelde Azure-schijvenom aan de slag te gaan.

Opslagruimten Direct

Storage Spaces Direct is een Windows Server-functie die wordt ondersteund met failoverclustering op virtuele Azure-machines. Het biedt een virtueel SAN op basis van software.

ondersteund besturingssysteem: Windows Server 2016 en hoger
ondersteunde SQL-versie: SQL Server 2016 en hoger

Voordelen:

  • Voldoende netwerkbandbreedte maakt een robuuste en zeer goed presterende oplossing voor gedeelde opslag mogelijk.
  • Biedt ondersteuning voor Azure Blob Cache, zodat leesbewerkingen lokaal vanuit de cache kunnen worden verwerkt. (Updates worden gelijktijdig gerepliceerd naar beide knooppunten.)
  • Ondersteunt FileStream.

Beperkingen:

  • Alleen beschikbaar voor Windows Server 2016 en hoger.
  • Beschikbaarheidszones worden niet ondersteund.
  • Vereist dezelfde schijfcapaciteit die is gekoppeld aan beide virtuele machines.
  • Hoge netwerkbandbreedte is vereist om hoge prestaties te bereiken vanwege continue schijfreplicatie.
  • Vereist een grotere VM-grootte en dubbele betaling voor opslag, omdat opslag aan elke VIRTUELE machine is gekoppeld.
  • Microsoft Distributed Transaction Coordinator (MSDTC) wordt niet ondersteund.

Zie Failoverclusterexemplaren configureren met Storage Spaces Directom aan de slag te gaan.

Premium-bestandsdeling

Premium-bestandsshares zijn een functie van Azure Files. Premium-bestandsshares worden aangedreven door SSD's en hebben een consistent lage latentie. Ze worden volledig ondersteund voor gebruik met failoverclusterexemplaren voor SQL Server 2012 of hoger op Windows Server 2012 of hoger. Premium-bestandsshares bieden u meer flexibiliteit, omdat u het formaat van een bestandsshare kunt wijzigen en schalen zonder uitvaltijd.

ondersteund besturingssysteem: Windows Server 2012 en hoger
Ondersteunde SQL-versie: SQL Server 2012 en hoger

Voordelen:

  • Gedeelde opslagoplossing voor virtuele machines verspreid over meerdere beschikbaarheidszones.
  • Volledig beheerd bestandssysteem met latentie van enkele milliseconden en burstbare I/O-prestaties.
  • Niet alle SQL Server-functies worden ondersteund, zoals momentopnamen van databases, filestream en CHECKDB zonder TABLOCK. Bekijk beperkingen voor meer informatie.

Beperkingen:

  • Alleen beschikbaar voor Windows Server 2012 en hoger.
  • FileStream wordt niet ondersteund.
  • Microsoft Distributed Transaction Coordinator (MSDTC) wordt niet ondersteund.

Zie Failoverclusterexemplaren configureren met Premium-bestandsshareom aan de slag te gaan.

Elastische SAN van Azure

Azure Elastic SAN is een netwerk-verbonden opslagoplossing die klanten een flexibele en schaalbare oplossing biedt met het potentieel om kosten te verlagen via opslagconsolidatie. Azure Elastic SAN biedt een rendabele, krachtige en betrouwbare blokopslagoplossing die verbinding maakt met verschillende Azure-rekenservices via het iSCSI-protocol. Elastisch SAN maakt een naadloze overgang mogelijk van een bestaande SAN-opslagomgeving naar de cloud zonder dat u de toepassingsarchitectuur hoeft te herstructureren.

Ondersteund besturingssysteem: Windows Server 2019 en hoger
ondersteunde SQL-versie: SQL Server 2022 en hoger

Voordelen:

  • Elastisch SAN wordt niet beperkt door doorvoerlimieten voor VM-schijven. Dit betekent dat u kosten kunt besparen door een gewenste doorvoer met kleinere VM's te bereiken.
  • Opslagconsolidatie en dynamisch delen van prestaties: het is mogelijk om kosten te besparen door lage tot middelgrote workloads met SQL Server-workloads te consolideren, omdat de opslaggroep is ingericht op SAN-niveau en de prestaties worden gedeeld tussen workloads.
  • Biedt ondersteuning voor permanente SCSI-reserveringen (SCSI PR), wat betekent dat u geclusterde toepassingen naar Azure kunt migreren.
  • Kan één gedeeld volume gebruiken of meerdere gedeelde volumes stripen om een gedeelde opslaggroep te maken.
  • Elastische SAN-zone-redundante opslag ondersteunt beschikbaarheidszones. VM's die deel uitmaken van een failovercluster, kunnen in verschillende beschikbaarheidszones worden geplaatst.

Beperkingen:

  • Cloudwitness wordt momenteel niet ondersteund.
  • Biedt geen ondersteuning voor latentieworkloads van submilliseconden.
  • Filestream wordt niet ondersteund.
  • Microsoft Distributed Transaction Coordinator (MSDTC) wordt niet ondersteund.

Partner

Er zijn partnerclusteroplossingen met ondersteunde opslag.

ondersteund besturingssysteem: alle
Ondersteunde SQL-versie: alle

In één voorbeeld wordt SIOS DataKeeper gebruikt als opslag. Zie het blogbericht Failoverclustering en SIOS DataKeepervoor meer informatie.

iSCSI en ExpressRoute

U kunt ook een gedeelde blokopslag voor iSCSI-doel beschikbaar maken via Azure ExpressRoute.

ondersteund besturingssysteem: alle
ondersteunde SQL-versie: alle

NetApp Private Storage (NPS) maakt bijvoorbeeld een iSCSI-doel beschikbaar via ExpressRoute met Equinix naar Azure-VM's.

Neem voor gedeelde opslag- en gegevensreplicatieoplossingen van Microsoft-partners contact op met de leverancier voor eventuele problemen met betrekking tot toegang tot gegevens bij failover.

Connectiviteit

Om de on-premises ervaring te evenaren bij het verbinden met uw failover-clusterexemplaren, implementeert u uw SQL Server-VM's in meerdere subnetten binnen hetzelfde virtuele netwerk. Als u meerdere subnetten hebt, hoeft u geen extra afhankelijkheid te hebben van een Azure Load Balancer of een gedistribueerde netwerknaam (DNN) om uw verkeer naar uw FCI te routeren.

Als u uw SQL Server-VM's implementeert in één subnet, kunt u een naam van een virtueel netwerk (VNN) en een Azure Load Balancer of een gedistribueerde netwerknaam (DNN) configureren om verkeer naar uw failoverclusterexemplaren te routeren. Controleer de verschillen tussen de twee en implementeer vervolgens een gedistribueerde netwerknaam of een virtuele netwerknaam voor uw failoverclusterexemplaren.

De gedistribueerde netwerknaam wordt aanbevolen, indien mogelijk, omdat failover sneller is en de overhead en kosten voor het beheer van de load balancer worden geëlimineerd.

De meeste SQL Server-functies werken transparant met FCI's bij het gebruik van de DNN, maar er zijn bepaalde functies waarvoor speciale aandacht nodig kan zijn. Zie FCI- en DNN-interoperabiliteitvoor meer informatie.

Notitie

Als u meerdere AG's of FCI's op hetzelfde cluster hebt en u een DNN- of VNN-listener gebruikt, heeft elke AG of FCI een eigen onafhankelijk verbindingspunt nodig.

Beperkingen

Beperkte ondersteuning voor extensies

Op dit moment ondersteunen exemplaren van SQL Server-failoverclusters op virtuele Azure-machines die zijn geregistreerd bij de SQL IaaS Agent-extensie alleen een beperkt aantal functies ondersteunen die beschikbaar zijn via basisregistratie, en niet die waarvoor de agent is vereist, zoals automatische back-up, patching, Microsoft Entra-verificatie en geavanceerd portalbeheer. Zie de tabel met voordelen voor meer informatie.

Als uw SQL Server-VM al is geregistreerd bij de SQL IaaS Agent-extensie en u alle functies hebt ingeschakeld waarvoor de agent is vereist, moet u de extensie verwijderen uit de SQL Server-VM door de virtuele SQL-machine te verwijderen resource voor de bijbehorende VM's en deze vervolgens opnieuw te registreren bij de SQL IaaS Agent-extensie. Wanneer u de virtuele SQL-machine resource verwijdert met behulp van Azure Portal, schakelt u het selectievakje naast de juiste virtuele machine uit om te voorkomen dat de virtuele machine wordt verwijderd.

MSDTC

Azure Virtual Machines ondersteunt Microsoft Distributed Transaction Coordinator (MSDTC) op Windows Server 2019 met opslag op CSV's (Clustered Shared Volumes) en Azure Standard Load Balancer of op SQL Server-VM's die gebruikmaken van gedeelde Azure-schijven.

Op virtuele Azure-machines wordt MSDTC niet ondersteund voor Windows Server 2016 of eerder met geclusterde gedeelde volumes, omdat:

  • De geclusterde MSDTC-resource kan niet worden geconfigureerd voor het gebruik van gedeelde opslag. Als u in Windows Server 2016 een MSDTC-resource maakt, worden er geen gedeelde opslag weergegeven die beschikbaar is voor gebruik, zelfs niet als opslag beschikbaar is. Dit probleem is opgelost in Windows Server 2019.
  • De basic load balancer verwerkt geen RPC-poorten.