In de moderne IT-landschap is hoge beschikbaarheid en robuust herstel na noodgevallen essentieel voor het functioneren van kritieke systemen. Microsoft SQL Server 2016 biedt hierbij de functie AlwaysOn beschikbaarheidsgroepen, die bedoeld is om de beschikbaarheid van databases te maximaliseren en failover-scenario’s te faciliteren. Voor organisaties die gebruik maken van SQL Server 2016, is het opzetten en inrichten van AlwaysOn beschikbaarheidsgroepen een cruciale stap in het bouwen van een betrouwbare infrastructuur. Dit artikel biedt een overzicht van de essentiële stappen, vereisten, configuratieopties en beheertips voor het succesvol implementeren van AlwaysOn beschikbaarheidsgroepen in SQL Server 2016.
Inleiding
AlwaysOn beschikbaarheidsgroepen zijn een oplossing voor hoge beschikbaarheid en herstel na noodgevallen die speciaal ontworpen zijn voor SQL Server 2016. Deze functie vervangt databasespiegeling en biedt een betrouwbaardere en flexibelere manier om databases beschikbaar te houden. Door meerdere databases te groeperen en deze synchroon te houden tussen primaire en secundaire replica's, zorgt AlwaysOn beschikbaarheidsgroepen voor een betere bescherming tegen downtime en dataverlies.
Het opzetten van AlwaysOn beschikbaarheidsgroepen vereist zorgvuldige planning, technische kennis en het begrijpen van de vereisten. Binnen dit artikel worden de belangrijkste aspecten van het inrichten van AlwaysOn beschikbaarheidsgroepen behandeld, inclusief de benodigde machtigingen, de configuratie via SQL Server Management Studio (SSMS), en de integratie met andere systemen zoals Configuration Manager en Reporting Services.
Vereisten en voorwaarden voor AlwaysOn beschikbaarheidsgroepen
Voor het inrichten van AlwaysOn beschikbaarheidsgroepen zijn er een aantal fundamentele vereisten en voorwaarden die moeten worden voldaan. Deze omvatten zowel technische voorwaarden als beveiligingsaspecten.
1. SQL Server 2016 Enterprise Edition
De functie AlwaysOn beschikbaarheidsgroepen is enkel beschikbaar in de Enterprise Edition van SQL Server 2016. De Standard Edition ondersteunt een beperkte versie van AlwaysOn, namelijk Basic Availability Groups, die enkel voor één database beschikbaar is en minder geavanceerde opties biedt.
2. Windows Server Failover Clustering (WSFC)
AlwaysOn beschikbaarheidsgroepen werken op basis van een Windows Server Failover Clustering (WSFC)-omgeving. Dit betekent dat een cluster moet zijn ingesteld met meerdere knopen (replica's) die beschikbaar zijn voor failover. Deze replica's kunnen primaire of secundaire zijn, afhankelijk van de configuratie.
3. Machtigingen
Om AlwaysOn beschikbaarheidsgroepen in te richten en te beheren, zijn bepaalde machtigingen vereist. Deze omvatten:
- CONNECT: Verbinding maken met de SQL Server-instantie.
- VIEW SERVER STATE: Toegang tot de statusinformatie van de server.
- VIEW ANY DEFINITION: Toegang tot de definities van databases en beschikbaarheidsreplica's.
Deze machtigingen zijn nodig om het AlwaysOn-dashboard in SSMS te gebruiken, waarin een overzicht wordt gegeven van de beschikbaarheidsgroep, replica's en databases. Het dashboard is een essentieel hulpmiddel bij het beheren en bewaken van AlwaysOn beschikbaarheidsgroepen.
4. Netwerkconfiguratie
De communicatie tussen de replica's moet worden gegarandeerd via een betrouwbaar en snel netwerk. De communicatie vindt plaats via een AlwaysOn-listener, een virtuele naam en IP-adres die clients gebruiken om verbinding te maken met de primaire replica.
5. Grootte en naam van databases
Voor het toevoegen van een database aan een beschikbaarheidsgroep moeten de namen van de primaire en secundaire databases overeenkomen. Daarnaast dient het systeem waarop de database wordt geplaatst, voldoende schijfruimte te hebben voor de secundaire databases.
Het AlwaysOn-dashboard in SQL Server Management Studio
Het AlwaysOn-dashboard is een krachtig hulpmiddel in SQL Server Management Studio (SSMS) dat databasebeheerders helpt bij het overzichtelijk beheren van beschikbaarheidsgroepen. Het dashboard biedt een visuele representatie van de status van de beschikbaarheidsgroep, inclusief de primaire en secundaire replica's, synchronisatie- en failoveropties, en prestatieindicators.
1. Het dashboard starten
Om het AlwaysOn-dashboard te openen:
- Maak verbinding met een SQL Server-instantie via de Objectverkenner.
- Vouw het knooppunt Always On High Availability uit.
- Klik met de rechtermuisknop op Beschikbaarheidsgroepen en kies Dashboard weergeven.
2. Dashboardopties
Het dashboard biedt diverse opties voor het aanpassen van het gedrag:
- Automatisch vernieuwen inschakelen: Het dashboard kan worden ingesteld om automatisch te vernieuwen met een bepaald interval, wat handig is bij het continu bewaken van de beschikbaarheidsgroep.
- Door de gebruiker gedefinieerd AlwaysOn-beleid inschakelen: Hiermee kan het beleid voor het dashboard worden aangepast aan de eisen van de organisatie.
3. Informatie op het dashboard
Het dashboard toont de volgende informatie:
- Naam van de beschikbaarheidsgroep
- Primaire instantie
- Status van de synchronisatie (synchronisch of asynchronisch)
- Geschatte hersteltijd (RTO)
- Details van de databasereplica’s
- Logboekhersteltijd (RPO)
Deze informatie is essentieel om operationele beslissingen te nemen, zoals het kiezen van een replica voor failover of het inschatten van gegevensverlies bij een forcerende failover.
Het voorbereiden van databases voor AlwaysOn beschikbaarheidsgroepen
Voor het toevoegen van een database aan een AlwaysOn beschikbaarheidsgroep zijn twee belangrijke stappen vereist: het herstellen van een back-up en het koppelen van de database aan de beschikbaarheidsgroep.
1. Back-up en herstel
De primaire database moet worden gereserveerd met back-ups van het logboek, die vervolgens moeten worden hersteld op elk serverexemplaar dat als host fungeert voor de secundaire replica. De herstelbewerking moet worden uitgevoerd met de optie RESTORE WITH NORECOVERY, die de database in een herstelmodus plaatst en klaar maakt voor synchronisatie.
2. Toevoegen aan de beschikbaarheidsgroep
Nadat de database is hersteld, kan deze worden toegevoegd aan de beschikbaarheidsgroep. In SSMS is dit mogelijk via het AlwaysOn-dashboard of door gebruik te maken van Transact-SQL of PowerShell.
3. Migratie van bestaande configuraties
Als een bestaande configuratie voor logboekverzending is ingesteld, kan deze worden geconverteerd naar een AlwaysOn beschikbaarheidsgroep. Dit betekent dat een primaire database voor logboekverzending kan worden gebruikt als primaire replica, samen met één of meer secundaire databases als secundaire replica's.
Integratie met andere systemen
AlwaysOn beschikbaarheidsgroepen kunnen worden geïntegreerd met andere systemen zoals Microsoft Configuration Manager en SQL Server Reporting Services. Dit vergroot de flexibiliteit en het herstelvermogen van kritieke IT-systemen.
1. Configuration Manager en AlwaysOn
Microsoft Configuration Manager ondersteunt het gebruik van AlwaysOn beschikbaarheidsgroepen voor de sitedatabase. Dit helpt bij het garanderen van de hoge beschikbaarheid van de Configuration Manager-site. De configuratie kan worden uitgevoerd zowel op primaire sites als op de centrale beheersite.
Voor het gebruik van AlwaysOn met Configuration Manager zijn enkele belangrijke stappen vereist:
- Het maken van een beschikbaarheidsgroep
- Het configureren van de site om gebruik te maken van de beschikbaarheidsgroep
- Het toevoegen of verwijderen van synchrone replicaleden aan de beschikbaarheidsgroep
Wanneer AlwaysOn wordt gebruikt in combinatie met Microsoft Azure, kan de beschikbaarheid van de sitedatabase worden verder verhoogd door Azure-beschikbaarheidssets te gebruiken.
2. Reporting Services en AlwaysOn
Het gebruik van SQL Server Reporting Services (SSRS) met AlwaysOn beschikbaarheidsgroepen vereist enkele aanpassingen, omdat het Reporting Services-punt niet ondersteuning biedt voor het gebruik van de virtuele naam van de listener van de beschikbaarheidsgroep. Daarom is het nodig om de naam van de sitedatabaseserver aan te passen om te verwijzen naar een computernaam en een exemplaar van een replica.
Als rapportage moet worden geoffload naar secundaire replica’s om de beschikbaarheid te verbeteren, kunnen meerdere Reporting Services-punten op elk replicaknooppunt worden geïnstalleerd. Elke Reporting Services-server kan zo worden geconfigureerd om verbinding te maken met een actieve replica, wat leidt tot een betere prestatie en betere beschikbaarheid.
Beveiligingsaspecten
Het gebruik van AlwaysOn beschikbaarheidsgroepen vereist een aantal beveiligingsmaatregelen om het beheer van databases en replica’s veilig te maken.
1. BitLocker en AlwaysOn
Als BitLocker-herstelgegevens worden versleuteld in de database, zijn aanvullende stappen vereist wanneer AlwaysOn wordt gebruikt. De documentatie van SQL Server bevat instructies voor het omgaan met deze situatie, inclusief het beheren van sleutels en het garanderen van beveiligde communicatie tussen replica's.
2. Toegangscontrole
De machtigingen voor AlwaysOn beschikbaarheidsgroepen moeten worden beheerd met zorg. Gebruikers die toegang hebben tot het AlwaysOn-dashboard, moeten beperkt worden tot de benodigde machtigingen om te voorkomen dat ongeoorloofde acties worden uitgevoerd. Dit helpt bij het verkleinen van het beveiligingsrisico en het beveiligen van kritieke databases.
Beheer en bewaking van AlwaysOn beschikbaarheidsgroepen
Na de inrichting van een AlwaysOn beschikbaarheidsgroep is het belangrijk om deze regelmatig te beheren en te bewaken om ervoor te zorgen dat de databases beschikbaar blijven en de synchronisatie correct verloopt.
1. Bewaking van prestaties en synchronisatie
Het AlwaysOn-dashboard biedt een overzicht van de prestaties van de replica's en databases. Hierin kunnen databasebeheerders de synchronisatiestatus, hersteltijd, en logboekhersteltijd controleren. Door deze prestatieindicators te bewaken, kunnen mogelijke problemen worden opgespoord voordat ze leiden tot downtime of dataverlies.
2. Handmatige en automatische failover
Het dashboard stelt databasebeheerders in staat om handmatige failover uit te voeren naar een secundaire replica. Dit is handig bij onderhoudswerkzaamheden of wanneer de primaire replica tijdelijk offline moet worden gesteld.
Een forcerende failover kan worden gebruikt wanneer de primaire replica niet langer beschikbaar is. In dit geval wordt de failover uitgevoerd zonder dat de data wordt gesynchroniseerd, wat kan leiden tot dataverlies. Daarom is het belangrijk om te begrijpen wanneer en hoe failover moet worden uitgevoerd.
3. Back-up en herstel
Hoewel AlwaysOn beschikbaarheidsgroepen beter zijn dan databasespiegeling in termen van hoge beschikbaarheid, is het toch belangrijk om regelmatige back-ups uit te voeren. Dit is vooral van toepassing op secundaire replica's, waarop back-ups kunnen worden uitgevoerd zonder de primaire database te beïnvloeden.
Conclusie
Het opzetten en inrichten van AlwaysOn beschikbaarheidsgroepen in SQL Server 2016 is een essentieel onderdeel van het bouwen van een betrouwbare en hoge beschikbaarheidssysteem. Door het gebruik van AlwaysOn beschikbaarheidsgroepen kan een organisatie ervoor zorgen dat kritieke databases beschikbaar blijven, zelfs bij onverwachte storingen of falen van hardware of netwerk.
De implementatie vereist een duidelijke planning, zorgvuldige configuratie en een goed begrip van de vereisten, zoals het gebruik van WSFC, machtigingen, en de integratie met andere systemen zoals Configuration Manager en Reporting Services. Bovendien is het belangrijk om het AlwaysOn-dashboard effectief te gebruiken voor het beheren en bewaken van de beschikbaarheidsgroep.
Met de juiste kennis en benadering kan AlwaysOn beschikbaarheidsgroepen worden geïmplementeerd als een robuuste oplossing voor hoge beschikbaarheid en herstel na noodgevallen, wat essentieel is voor elke organisatie die haar IT-infrastructuur wil versterken.