Een FCI maken met een Premium-bestandsshare (SQL Server op Azure-VM's)

Van toepassing op: SQL Server op Azure VM

Fooi

Er zijn veel methoden om een beschikbaarheidsgroep te implementeren. Vereenvoudig uw implementatie en elimineer de noodzaak van een Azure Load Balancer of gedistribueerde netwerknaam (DNN) voor uw AlwaysOn-beschikbaarheidsgroep door uw virtuele SQL Server-machines (VM's) te maken in meerdere subnetten binnen hetzelfde virtuele Azure-netwerk. Als u uw beschikbaarheidsgroep al in één subnet hebt gemaakt, kunt u deze migreren naar een omgeving met meerdere subnetten.

In dit artikel wordt uitgelegd hoe u een exemplaar van een failovercluster (FCI) maakt met SQL Server op Azure Virtual Machines (VM's) met behulp van een Premium-bestandsshare.

Premium-bestandsshares worden ondersteund door SSD en bieden consistent lage latentie bestandsshares die volledig worden ondersteund voor gebruik met failoverclusterexemplaren voor SQL Server 2012 of hoger op Windows Server 2012 of hoger. Premium-bestandsshares bieden u meer flexibiliteit, zodat u het formaat van een bestandsshare kunt wijzigen en schalen zonder uitvaltijd.

Zie een overzicht van FCI met SQL Server op Azure-VM's en aanbevolen procedures voor clusters voor meer informatie.

Notitie

Het is nu mogelijk om uw oplossing voor het failoverclusterexemplaren te verplaatsen naar SQL Server op Azure-VM's met behulp van Azure Migrate. Zie Failoverclusterexemplaren migreren voor meer informatie.

Vereisten

Voordat u de instructies in dit artikel hebt voltooid, hebt u het volgende al nodig:

  • Een Azure-abonnement.
  • Een account met machtigingen voor het maken van objecten op zowel virtuele Azure-machines als in Active Directory.
  • Twee of meer Virtuele Azure-machines voor een FCI in een beschikbaarheidsset of verschillende beschikbaarheidszones.
  • Een Premium-bestandsshare die moet worden gebruikt als het geclusterde station, op basis van het opslagquotum van uw database voor uw gegevensbestanden.
  • De nieuwste versie van PowerShell.

Premium-bestandsshare koppelen

Voer de volgende stappen uit om uw Premium-bestandsshare te koppelen:

  1. Meld u aan bij Azure Portal en ga naar uw opslagaccount.

  2. Ga naar bestandsshares onder Gegevensopslag en selecteer vervolgens de Premium-bestandsshare die u wilt gebruiken voor uw SQL-opslag.

  3. Selecteer Verbinding maken om de verbindingsreeks voor de bestandsshare weer te geven.

  4. Selecteer in de vervolgkeuzelijst de stationsletter die u wilt gebruiken, kies opslagaccountsleutel als verificatiemethode en kopieer het codeblok vervolgens naar een teksteditor, zoals Kladblok.

    Screenshot showing how to copy the PowerShell command from the file share connect portal.

  5. Gebruik Remote Desktop Protocol (RDP) om verbinding te maken met de SQL Server-VM met het account dat uw SQL Server FCI voor het serviceaccount gaat gebruiken.

  6. Open een PowerShell-opdrachtconsole met beheerdersrechten.

  7. Voer de opdracht uit die u eerder hebt gekopieerd naar de teksteditor vanuit de portal voor bestandsshares.

  8. Ga naar de share met behulp van Bestandenverkenner of het dialoogvenster Uitvoeren (Windows + R op het toetsenbord). Gebruik het netwerkpad \\storageaccountname.file.core.windows.net\filesharename. Bijvoorbeeld: \\sqlvmstorageaccount.file.core.windows.net\sqlpremiumfileshare

  9. Maak ten minste één map op de zojuist verbonden bestandsshare om uw SQL-gegevensbestanden in te plaatsen.

  10. Herhaal deze stappen op elke SQL Server-VM die deelneemt aan het cluster.

Belangrijk

Overweeg om een afzonderlijke bestandsshare te gebruiken voor back-upbestanden om de invoer-/uitvoerbewerkingen per seconde (IOPS) en ruimtecapaciteit van deze share voor gegevens en logboekbestanden op te slaan. U kunt een Premium- of Standard-bestandsshare gebruiken voor back-upbestanden.

Windows-failovercluster maken

De stappen voor het maken van uw Windows Server-failovercluster variëren, afhankelijk van of u uw SQL Server-VM's hebt geïmplementeerd in één subnet of meerdere subnetten. Volg de stappen in de zelfstudie voor een scenario met meerdere subnetten of één subnetscenario om uw cluster te maken. Hoewel deze zelfstudies bedoeld zijn voor het maken van een beschikbaarheidsgroep, zijn de stappen voor het maken van het cluster hetzelfde.

Quorum configureren

De cloudwitness is de aanbevolen quorumoplossing voor dit type clusterconfiguratie voor SQL Server op Azure-VM's.

Als u een even aantal stemmen in het cluster hebt, configureert u de quorumoplossing die het beste past bij uw bedrijfsbehoeften. Zie Quorum met SQL Server-VM's voor meer informatie.

Cluster valideren

Valideer het cluster op een van de virtuele machines met behulp van de gebruikersinterface van Failoverclusterbeheer of PowerShell.

Als u het cluster wilt valideren met behulp van de gebruikersinterface, gaat u als volgt te werk op een van de virtuele machines:

  1. Selecteer Onder Serverbeheer Hulpprogramma's en vervolgens Failoverclusterbeheer.

  2. Selecteer onder Failoverclusterbeheer actie en selecteer vervolgens Configuratie valideren.

  3. Selecteer Volgende.

  4. Voer onder Servers of een cluster selecteren de namen van beide virtuele machines in.

  5. Selecteer onder Testopties alleen tests uitvoeren die ik selecteer.

  6. Selecteer Volgende.

  7. Selecteer onder Testselectie alle tests, met uitzondering van Opslag en Opslagruimten Direct, zoals hier wordt weergegeven:

    Screenshot showing how to select cluster validation tests.

  8. Selecteer Volgende.

  9. Selecteer Volgende onder Bevestiging. Met de wizard Een configuratie valideren worden de validatietests uitgevoerd.

Als u het cluster wilt valideren met behulp van PowerShell, voert u het volgende script uit vanuit een PowerShell-sessie van een beheerder op een van de virtuele machines:

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

Testclusterfailover

Test de failover van uw cluster. Klik in Failoverclusterbeheer met de rechtermuisknop op uw cluster, selecteer Meer acties>Verplaatsen kernclusterresource>selecteren knooppunt en selecteer vervolgens het andere knooppunt van het cluster. Verplaats de kernclusterresource naar elk knooppunt van het cluster en verplaats deze vervolgens terug naar het primaire knooppunt. Als u het cluster naar elk knooppunt kunt verplaatsen, kunt u SQL Server installeren.

Screenshot showing how to test cluster failover by moving the core resource to the other nodes.

SQL Server FCI maken

Nadat u het failovercluster hebt geconfigureerd, kunt u de SQL Server FCI maken.

  1. Verbinding maken naar de eerste virtuele machine met behulp van RDP.

  2. Zorg er in Failoverclusterbeheer voor dat alle kernclusterresources zich op de eerste virtuele machine bevinden. Verplaats indien nodig alle resources naar deze virtuele machine.

  3. Als de versie van het besturingssysteem Windows Server 2019 is en het Windows-cluster is gemaakt met de standaard DNN (Distributed Network Name), mislukt de FCI-installatie voor SQL Server 2017 en hieronder mislukt met de fout The given key was not present in the dictionary.

    Tijdens de installatie worden sql Server-installatiequery's uitgevoerd voor de bestaande VN (Virtual Network Name) en wordt de DNN van het Windows-cluster niet herkend. Het probleem is opgelost in de installatie van SQL Server 2019. Voer voor SQL Server 2017 en hieronder de volgende stappen uit om de installatiefout te voorkomen:

    • Maak in Failoverclusterbeheer verbinding met het cluster, klik met de rechtermuisknop op Rollen en selecteer Lege rol maken.
    • Klik met de rechtermuisknop op de zojuist gemaakte lege rol, selecteer Resource toevoegen en selecteer Clienttoegangspunt.
    • Voer een willekeurige naam in en voltooi de wizard om het clienttoegangspunt te maken.
    • Nadat de installatie van SQL Server FCI is voltooid, kan de rol met het tijdelijke clienttoegangspunt worden verwijderd.
  4. Zoek de installatiemedia. Als de virtuele machine gebruikmaakt van een van de Azure Marketplace-installatiekopieën, bevindt de media zich op C:\SQLServer_<version number>_Full.

  5. Selecteer Setup.

  6. Selecteer Installatie in het SQL Server-installatiecentrum.

  7. Selecteer De installatie van een nieuw SQL Server-failovercluster en volg de instructies in de wizard om de SQL Server FCI te installeren.

  8. Op de pagina Clusternetwerkconfiguratie varieert het IP-adres dat u opgeeft, afhankelijk van of uw SQL Server-VM's zijn geïmplementeerd in één subnet of meerdere subnetten.

    1. Geef voor één subnetomgeving het IP-adres op dat u wilt toevoegen aan de Azure Load Balancer
    2. Geef voor een omgeving met meerdere subnetten het secundaire IP-adres op in het subnet van de eerste SQL Server-VM die u eerder hebt aangewezen als het IP-adres van de netwerknaam van het failoverclusterexemplaren:

    Screenshot of the secondary IP address in the subnet of the first VM.

  9. In database-engineconfiguratie moeten de gegevensmappen zich op de Premium-bestandsshare bevinden. Voer het volledige pad van de share in, in deze indeling: \\storageaccountname.file.core.windows.net\filesharename\foldername. Er wordt een waarschuwing weergegeven waarin wordt aangegeven dat u een bestandsserver hebt opgegeven als de gegevensmap. Deze waarschuwing wordt verwacht. Zorg ervoor dat het gebruikersaccount dat u hebt gebruikt voor toegang tot de virtuele machine via RDP wanneer u de bestandsshare hebt behouden, hetzelfde account is dat de SQL Server-service gebruikt om mogelijke fouten te voorkomen.

    Screenshot showing to use file share as SQL data directories.

  10. Nadat u de stappen in de wizard hebt voltooid, installeert Setup een SQL Server FCI op het eerste knooppunt.

  11. Nadat de FCI-installatie op het eerste knooppunt is geslaagd, maakt u verbinding met het tweede knooppunt met behulp van RDP.

  12. Open het SQL Server-installatiecentrum en selecteer vervolgens Installatie.

  13. Selecteer Knooppunt toevoegen aan een SQL Server-failovercluster. Volg de instructies in de wizard om SQL Server te installeren en het knooppunt toe te voegen aan de FCI.

  14. Voor een scenario met meerdere subnetten voert u in clusternetwerkconfiguratie het secundaire IP-adres in het subnet van de tweede SQL Server-VM in die u eerder hebt aangewezen als het IP-adres van de netwerknaam van het failoverclusterexemplaren

    Screenshot entering the secondary IP address in the subnet of the second SQL Server VM subnet.

    Nadat u Volgende in clusternetwerkconfiguratie hebt geselecteerd, wordt in de installatie een dialoogvenster weergegeven dat aangeeft dat sql Server Setup meerdere subnetten heeft gedetecteerd, zoals in de voorbeeldafbeelding. Selecteer Ja om te bevestigen.

    Screenshot showing multi subnet confirmation.

  15. Nadat u de instructies in de wizard hebt voltooid, wordt het tweede SQL Server FCI-knooppunt toegevoegd.

  16. Herhaal deze stappen op andere knooppunten die u wilt toevoegen aan het exemplaar van het SQL Server-failovercluster.

Notitie

Installatiekopieën van de Azure Marketplace-galerie worden geleverd met SQL Server Management Studio geïnstalleerd. Als u geen marketplace-installatiekopieën hebt gebruikt, downloadt u SQL Server Management Studio (SSMS).

Registreren bij sql IaaS Agent-extensie

Als u uw SQL Server-VM vanuit de portal wilt beheren, registreert u deze bij de SQL IaaS Agent-extensie. Er is slechts beperkte functionaliteit beschikbaar op SQL-VM's met failoverclusters van SQL Server (CFA's).

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 registratie van de SQL Server-VM bij de extensie ongedaan maken en opnieuw registreren nadat uw FCI is geïnstalleerd.

Registreer een SQL Server-VM met PowerShell (-LicenseType kan of PAYGAHUB):

# 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>

Connectiviteit configureren

Als u uw SQL Server-VM's in meerdere subnetten hebt geïmplementeerd, kunt u deze stap overslaan. Als u uw SQL Server-VM's hebt geïmplementeerd in één subnet, moet u een extra onderdeel configureren om verkeer naar uw FCI te routeren. U kunt een naam van een virtueel netwerk (VNN) configureren met een Azure Load Balancer of een gedistribueerde netwerknaam voor een failoverclusterexemplaren. Bekijk de verschillen tussen de twee en implementeer vervolgens een gedistribueerde netwerknaam of een naam van een virtueel netwerk en Azure Load Balancer voor uw failoverclusterexemplaren.

Beperkingen

  • Microsoft Distributed Transaction Coordinator (MSDTC) wordt niet ondersteund in Windows Server 2016 en eerder.
  • FILESTREAM wordt niet ondersteund voor een failovercluster met een Premium-bestandsshare. Als u filestream wilt gebruiken, implementeert u uw cluster met behulp van Opslagruimten Direct- of Azure-gedeelde schijven.
  • SQL Server-FCI's die zijn geregistreerd bij de extensie bieden geen ondersteuning voor functies waarvoor de agent is vereist, zoals automatische back-up, patches en geavanceerd portalbeheer. Bekijk de tabel met voordelen.
  • Databasemomentopnamen worden momenteel niet ondersteund met Azure Files vanwege beperkte bestandsbeperkingen.
  • Omdat databasemomentopnamen niet worden ondersteund, valt CHECKDB voor gebruikersdatabases terug naar CHECKDB WITH TABLOCK. TABLOCK beperkt de controles die worden uitgevoerd - DBCC CHECKCATALOG wordt niet uitgevoerd op de database en Service Broker-gegevens worden niet gevalideerd.
  • DBCC CHECKDB ingeschakeld master en msdb database wordt niet ondersteund.
  • Databases die gebruikmaken van de oltp-functie in het geheugen, worden niet ondersteund op een failoverclusterexemplaren die zijn geïmplementeerd met een Premium-bestandsshare. Als uw bedrijf OLTP in het geheugen vereist, kunt u overwegen om uw FCI te implementeren met gedeelde Azure-schijven of Opslagruimten Direct.

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, slechts een beperkt aantal functies. Bekijk de tabel met voordelen.

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 registratie van de extensie ongedaan maken door de RESOURCE van de virtuele SQL-machine voor de bijbehorende VM's te verwijderen en deze vervolgens opnieuw te registreren bij de SQL IaaS Agent-extensie. Wanneer u de resource van de virtuele SQL-machine verwijdert met behulp van Azure Portal, schakelt u het selectievakje naast de juiste virtuele machine uit om te voorkomen dat de VM wordt verwijderd.