Always On Availability Groups in SQL Server zijn behoorlijk krachtig voor hoge beschikbaarheid, toch? Als je ooit dat vervelende gevoel hebt gehad dat de database plotseling offline gaat of de failover niet naar wens verloopt, dan kan inzicht in de configuratie en het oplossen van problemen je een hoop kopzorgen besparen. Het is misschien wat vreemd, maar de configuratie is een combinatie van SQL Server-configuraties, Windows failover-clusters en wat machtigingen. Zodra alles werkt, zou het vanaf dat moment op de achtergrond moeten draaien en je bedrijfscontinuïteit moeten waarborgen. Maar als er iets misgaat, maakt het een wereld van verschil om te weten wat je moet controleren. Deze handleiding behandelt de essentiële stappen, van clusterconfiguratie tot SQL Server-instellingen, en wat je moet doen als niets meer soepel lijkt te verlopen.
Hoe u veelvoorkomende problemen met Always On-beschikbaarheidsgroepen in SQL Server kunt oplossen
Een Windows-failovercluster correct configureren: dat is stap één.
De eerste hindernis is dus ervoor zorgen dat uw Windows failover-cluster stabiel is. Voor hoge beschikbaarheid vertrouwt SQL Server op WSFC, wat nogal gevoelig kan zijn als de machtigingen of netwerkinstellingen niet helemaal correct zijn. Kortom, al uw knooppunten (waarschijnlijk virtuele machines of fysieke servers) moeten deel uitmaken van een cluster, waarbij Cluster Manager overal groene lampjes laat zien.
- Gebruik Server Manager of PowerShell:
Install-WindowsFeature –Name Failover-Clustering –IncludeManagementTools. - Start Failover Cluster Manager (
FailoverClusters. SnapInHelper.msc), maak een cluster aan en voeg uw knooppunten toe (testnode1/testnode2). - Geef tijdens de wizard de naam van uw cluster op (bijvoorbeeld ClusterAG ), selecteer een netwerk en een IP-adres. DNS regelt de rest automatisch.
- Bij het instellen van een quorum moet je voorzichtig zijn. Omdat het maar om twee knooppunten gaat, werkt een meerderheidsmechanisme ( Node Majority) of een bestandsshare-witness het beste. Maak voor de witness een gedeelde map aan op een externe server en zorg ervoor dat de knooppunten in je cluster de juiste machtigingen hebben (NTFS-toegang!).
Voordat je op OK klikt, houd er rekening mee dat als je foutmeldingen krijgt over machtigingen, dit waarschijnlijk komt doordat het account dat de clusterservice uitvoert geen rechten heeft voor die map. Meestal lost het aanpassen van de NTFS-machtigingen of het uitvoeren van de cluster onder een domeinaccount dit op. En ja, Windows maakt de installatie iets ingewikkelder dan nodig, maar zo is het nu eenmaal.
Schakel ‘Altijd ingeschakeld’ in SQL Server in — Sla deze stappen niet over.
Zodra uw cluster in goede staat verkeert, moet u vervolgens ‘Always On’ inschakelen voor elke SQL Server-instantie. Open SQL Server Configuration Manager, zoek de service, klik er met de rechtermuisknop op en selecteer ‘Eigenschappen ‘.Schakel onder het tabblad ‘Vlaggen’ of in het eigenschappenvenster ‘ Always On Availability Groups inschakelen’ in. Start de SQL-service opnieuw op – ja, zelfs als u denkt dat alles in orde is.
Sommige mensen vergeten deze stap en vragen zich af waarom de wizard hun databases niet ziet of waarom de functie niet beschikbaar is. Zorg er ook voor dat SQL Server onder een geldig domeinaccount draait en niet onder LocalSystem, anders kan het cluster geen machtigingen beheren of het listener-object in Active Directory aanmaken.
Wanneer u verbinding maakt via SQL Server Management Studio ( SSMS ), zoek dan in de Objectverkenner naar ‘Always On High Availability’.Als u dit ziet, is dat een goed teken dat uw server klaar is voor de installatiewizard.
Het daadwerkelijk aanmaken van de Always On-beschikbaarheidsgroep — Let op mogelijke problemen met machtigingen
Start de wizard voor het aanmaken van een nieuwe beschikbaarheidsgroep. Geen zorgen, de wizard begeleidt je stap voor stap. Geef je groep een naam, selecteer je databases en voeg replica’s toe door verbinding te maken met je tweede server. Hier wordt het lastig: als je machtigingen niet correct zijn, kan de wizard mogelijk mislukken bij het aanmaken van de listener of bij het uitvoeren van een failover.
Zorg ervoor dat uw SQL Server-serviceaccounts de juiste machtigingen hebben. Het moeten domeinaccounts zijn met delegatierechten om objecten in Active Directory te maken. Als u fouten ziet zoals ‘De resource met de clusternetwerknaam kon het bijbehorende computerobject in het domein niet maken’, dan is dat een probleem met de machtigingen of delegatie. Soms lost het toekennen van de benodigde rechten aan het computeraccount van het cluster om objecten in Active Directory te maken het probleem op.
Ik heb goede ervaringen met het handmatig toevoegen van listeners als de automatische aanmaak mislukt. Klik met de rechtermuisknop op uw beschikbaarheidsgroep (AG) en selecteer ‘ Listener toevoegen’. Geef de naam, het IP-adres, de poort en de DNS-server van de listener op. Daarna zou de listener in de console moeten verschijnen. Controleer ook de netwerkbeveiligingsgroepen en firewalls als de listener of de eindpunten zich niet gedragen zoals verwacht.
Controleer de werking en voer een failover uit — dan weet je zeker dat het werkt.
Zodra alles is ingesteld, is de eenvoudigste manier om te testen door naar het dashboard in SSMS te kijken. Als alle statussen groen zijn, is alles in orde. Om failover handmatig te testen, klikt u met de rechtermuisknop op de AG in SSMS, selecteert u Failover en verplaatst u de primaire rol van het ene knooppunt naar het andere. Houd het logboek in de gaten; de overschakeling zou zonder problemen moeten verlopen.
In de praktijk moet je mogelijk storingen simuleren: het SQL-proces beëindigen of het primaire knooppunt uitschakelen. Als de failover in werking treedt en je applicatie blijft werken, dan is de configuratie in orde. Houd wel netwerkvertragingen of toegangsrechten in de gaten; die zijn vaak de oorzaak van problemen bij een soepele overgang.
Onthoud dat als clients na een failover geen verbinding kunnen maken via de listener, u uw DNS- en netwerkconfiguratie moet controleren. Soms blokkeren de DNS-cache of firewalls de verbinding. In sommige configuraties moet u mogelijk de DNS-cache leegmaken of de netwerkservices opnieuw starten om alles te synchroniseren.
Dat is het zo’n beetje — het is absoluut een proces met meerdere stappen, maar als je deze onderdelen goed aanpakt, verloopt failover en hoge beschikbaarheid op de lange termijn veel soepeler. Soms gaat het er alleen maar om de juiste machtigingen te regelen, ervoor te zorgen dat de clusterstatuscontroles slagen en dat je configuraties overeenkomen. Succes!