In mijn vorige artikelen heb ik het stapsgewijze proces uitgelegd voor het implementeren van een AlwaysOn-beschikbaarheidsgroep op SQL Server 2017. In dit artikel ga ik uitleggen hoe u AlwaysOn-beschikbaarheidsgroepen controleert.
Laten we eerst eens kijken naar de configuratie van de beschikbaarheidsgroep die we eerder hadden geïmplementeerd. Open hiervoor SQL Server Management Studio Vouw database-engine uit vanuit de objectverkenner Vouw “AlwaysOn High Availability . uit ” Vouw “Beschikbaarheidsgroepen uit ” U kunt de beschikbaarheidsgroep zien met de naam SQLAAG . Onder deze beschikbaarheidsgroep (SQLAAG) ziet u de lijst met beschikbaarheidsreplica's, beschikbaarheidsdatabases en beschikbaarheidsgroeplisteners.
Zie de volgende afbeelding:
U kunt de details bekijken door de volgende zoekopdrachten uit te voeren.
DECLARE @HADRSERVERNAME VARCHAR(25) SET @HADRSERVERNAME = @@SERVERNAME SELECT CLUSTERNODES.GROUP_NAME AS [AVAILABILITY GROUP NAME], CLUSTERNODES.REPLICA_SERVER_NAME AS [AVAILABILITY REPLICA NAME], CLUSTERNODES.NODE_NAME AS [AVAILABILITY NODE], RS.ROLE_DESC AS [ROLE], DB_NAME(DRS.DATABASE_ID) AS [AVAILABILITY DATABASE], DRS.SYNCHRONIZATION_STATE_DESC AS [SYNCHRONIZATION STATUS], DRS.SYNCHRONIZATION_HEALTH_DESC AS [SYNCHRONIZATION HEALTH] FROM SYS.DM_HADR_AVAILABILITY_REPLICA_CLUSTER_NODES CLUSTERNODES JOIN SYS.DM_HADR_AVAILABILITY_REPLICA_CLUSTER_STATES CLUSTERSTATS ON CLUSTERNODES.REPLICA_SERVER_NAME = CLUSTERSTATS.REPLICA_SERVER_NAME JOIN SYS.DM_HADR_AVAILABILITY_REPLICA_STATES RS ON RS.REPLICA_ID = CLUSTERSTATS.REPLICA_ID JOIN SYS.DM_HADR_DATABASE_REPLICA_STATES DRS ON RS.REPLICA_ID = DRS.REPLICA_ID WHERE CLUSTERNODES.REPLICA_SERVER_NAME <> @HADRSERVERNAME
Hieronder volgt de uitvoer:
Een AlwaysOn-beschikbaarheidsgroep bewaken
U kunt de AlwaysOn-beschikbaarheidsgroep controleren met:
- AlwaysOn Monitoring-dashboard in SQL Server Management Studio.
- Prestatiemonitor-tellers.
Bewaking ing AlwaysOn-beschikbaarheidsgroep s het dashboard gebruiken
Om de status van een beschikbaarheidsgroep te bewaken, kunt u het Monitoring Dashboard gebruiken. Om het dashboard te starten, klikt u met de rechtermuisknop op de map Beschikbaarheidsgroepen en selecteert u "Toon Dashboard. ” Zie de volgende afbeelding:
Het AlwaysOn-dashboard voor het bewaken van de beschikbaarheidsgroep wordt geopend in een nieuw tabblad. Het geeft veel informatie weer over de geconfigureerde beschikbaarheidsgroep. Het dashboard biedt een overzicht op hoog niveau van de configuratie. Het bevat de naam van de beschikbaarheidsgroep, het primaire exemplaar en de failovermodus. Als een cluster een probleem heeft, wordt dit weergegeven in de "Problemen ” kolom. Zie de volgende afbeelding:
Klik nu op de naam van de beschikbaarheidsgroep. Er wordt een nieuw tabblad geopend met de details van de geselecteerde beschikbaarheidsgroep. Zie de volgende afbeelding:
Bovenaan het dashboard ziet u de status van de beschikbaarheidsgroep, de primaire instantie, de failover-modus, de clusterstatus en het type.
In de Beschikbaarheidsreplica sectie kunt u de instantienamen van de deelnemende replica's, hun rollen, beschikbaarheidsmodi, failover-modi en synchronisatiestatussen zien. U kunt ook meer informatie bekijken door andere kolommen toe te voegen. Om dat te doen, klikt u met de rechtermuisknop ergens in het raster en selecteert u de kolommen in het contextmenu. U kunt ook klikken op "Toevoegen/ R verwijder C oliën ” om de volledige lijst met kolommen te krijgen. Zie de volgende afbeelding:
Op dezelfde manier kunt u meer informatie bekijken over de “beschikbaarheidsdatabases” door andere kolommen toe te voegen. Om dat te doen, klikt u met de rechtermuisknop op het gedeelte beschikbaarheidsdatabase en selecteert u de kolommen in het contextmenu. U kunt ook klikken op "Toevoegen/ R verwijder C oliën ” om de volledige lijst met kolommen te krijgen. Zie de volgende afbeelding:
In de G ronde per sectie, kunt u de lijst met “Beschikbaarheidsdatabases” . zien binnen de beschikbaarheidsreplica's. U kunt de G . aanpassen ronde per door een van de groeperingsmethoden te kiezen die beschikbaar zijn in de "Groeperen op " laten vallen. Zie de volgende afbeelding:
Wanneer we de AlwaysOn-beschikbaarheidsgroepen implementeren, maakt SQL Server een uitgebreide gebeurtenissessie met de naam "AlwaysOn_Health ” op het SQL Server-exemplaar. Deze uitgebreide gebeurtenis kan worden gebruikt om de gebeurtenissen en prestaties van beschikbaarheidsgroepen te bewaken. U kunt de uitgebreide evenementen openen door te klikken op "Bekijk AlwaysOn H ealth E ventilatieopeningen. ” Zie de volgende afbeelding:
Het toont alle sessies van AlwaysOn-gezondheidsgebeurtenissen die kunnen worden gebruikt om de status van de beschikbaarheidsgroep te controleren.
U kunt de clusterquoruminformatie bekijken door te klikken op "Clusterquoruminformatie bekijken ”. In het dialoogvenster met informatie over het clusterquorum ziet u de naam van het cluster, het lidtype, de staat en het aantal stemmen. Zie de volgende afbeelding:
Bewaking ing AlwaysOn-beschikbaarheidsgroep s met de Prestatiemonitor
We kunnen beschikbaarheidsgroepen bewaken met behulp van ingebouwde tellers in de prestatiemonitor. Hier heeft Microsoft twee objecten met verschillende prestatiemeteritems toegevoegd. De objecten zijn als volgt:
- SQLServer:Beschikbaarheidsreplica
- SQLServer:databasereplica
SQLServer:Beschikbaarheidsreplica object biedt prestatiemeteritems die worden gebruikt om de prestaties van AlwaysOn-beschikbaarheidsreplica's te controleren.
Hieronder volgt de beschrijving van de tellers:
Tellernaam | Beschrijving |
Bytes ontvangen van replica/sec | Toont het aantal bytes dat per seconde van de replica is ontvangen. |
Bytes verzonden naar replica/sec | Toont het aantal bytes dat per seconde naar de externe replica wordt verzonden. Op de primaire replica wordt het aantal bytes weergegeven dat naar de secundaire replica is verzonden. Op de secundaire replica wordt het aantal bytes weergegeven dat naar de primaire replica is verzonden. |
Bytes verzonden naar transport/sec | Toont het werkelijke aantal bytes dat per seconde via het netwerk naar de externe replica wordt verzonden. Op de primaire replica wordt het aantal bytes weergegeven dat naar de secundaire replica is verzonden. Op de secundaire replica wordt het aantal bytes weergegeven dat naar de primaire replica is verzonden. |
Ontvangt van replica/sec | Toont het aantal AlwaysOn-berichten dat van de replica is ontvangen. |
Recente berichten/sec | Toont het aantal AlwaysOn-berichten dat in de vorige seconde opnieuw is verzonden. |
Verzendt naar replica/sec | Toont het aantal AlwaysOn-berichten dat naar de replica is verzonden. |
Verzendt naar transport/sec | Toont het werkelijke aantal AlwaysOn-berichten dat per seconde via het netwerk naar de replica voor beschikbaarheid op afstand wordt verzonden. Op de primaire replica wordt het aantal berichten weergegeven dat naar de secundaire replica is verzonden. Op de secundaire replica wordt het aantal berichten weergegeven dat naar de primaire replica is verzonden. |
SQLServer:databasereplica object heeft een lijst met items die worden gebruikt om de prestaties van de secundaire replica's van een beschikbaarheidsgroep te bewaken. De SQLServer:Database Replica object wordt alleen gebruikt voor SQL Server-databases die worden gehost op een secundaire replica.
Hieronder volgt de beschrijving van de tellers:
Tellernaam | Beschrijving | Kan worden bekeken op |
Bestandsbytes ontvangen/sec | Toont de hoeveelheid FILESTREAM-gegevens die in de laatste seconde zijn ontvangen door de secundaire database van de secundaire replica. | Op secundaire replica |
Logbytes ontvangen/sec | Toont het aantal logboekrecords dat in de laatste seconde door de database in de secundaire replica is ontvangen. | Op secundaire replica |
Resterend logbestand om ongedaan te maken | Toont de hoeveelheid logboek die overblijft om de ongedaanmakingsfase te voltooien. Het logbedrag wordt weergegeven in kilobytes. | Op secundaire replica |
Verzendwachtrij loggen | Toont het aantal logboekrecords in de logboekbestanden van de primaire database (in kilobytes) die niet naar de secundaire replica zijn verzonden. De grootte van de wachtrij omvat geen FILESTREAM-bestanden die naar een secundaire replica worden verzonden. | Op secundaire replica |
Gespiegelde schrijftransactie/sec | Toont het aantal transacties dat in de laatste seconde naar de gespiegelde database is geschreven en wacht op het logboek dat naar de spiegel is verzonden om de vastlegging uit te voeren. | Op primaire replica |
Herstelwachtrij | Toont het aantal logrecords in de logbestanden van de secundaire replica die nog niet opnieuw zijn gedaan. | Op secundaire replica |
Resterende bytes opnieuw uitvoeren | Toont de hoeveelheid logboek die nog moet worden overgedaan om de herstelfase te voltooien. De loggrootte wordt weergegeven in kilobytes. | Op secundaire replica |
Bytes/sec opnieuw gedaan | Toont het aantal logboekrecords dat in de laatste seconde opnieuw is gedaan in de secundaire database. | Op secundaire replica |
Totaal logboek vereist ongedaan maken | Toont de totale grootte van het logboek dat ongedaan moet worden gemaakt. De grootte van het logboek wordt weergegeven in kilobytes. | Op secundaire replica |
Transactie vertraging | Toont de vertraging in het wachten op onafgesloten commit-bevestiging. De tijd wordt weergegeven in milliseconden. | Op secundaire replica |
Samenvatting
In dit artikel heb ik de verschillende manieren uitgelegd om AlwaysOn-beschikbaarheidsgroepen te controleren. In mijn volgende artikel zal ik het geplande handmatige en automatische failoverproces demonstreren met behulp van SQL Server Management Studio, T-SQL Script en PowerShell.
Blijf op de hoogte..!