Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Verschiedene Möglichkeiten zum Überwachen von SQL Server AlwaysOn-Verfügbarkeitsgruppen

In meinen vorherigen Artikeln habe ich den schrittweisen Prozess zum Bereitstellen einer AlwaysOn-Verfügbarkeitsgruppe auf SQL Server 2017 erläutert. In diesem Artikel werde ich erklären, wie Sie AlwaysOn-Verfügbarkeitsgruppen überwachen.

Lassen Sie uns zunächst die Konfiguration der zuvor bereitgestellten Verfügbarkeitsgruppe überprüfen. Öffnen Sie dazu SQL Server Management Studio  Erweitern Sie Datenbank-Engine aus dem Objekt-Explorer  Erweitern Sie „AlwaysOn High Availability ”  Erweitern Sie “Verfügbarkeitsgruppen. ” Sie können die Verfügbarkeitsgruppe mit dem Namen SQLAAG sehen . Unter dieser Verfügbarkeitsgruppe (SQLAAG) können Sie die Liste der Verfügbarkeitsreplikate, Verfügbarkeitsdatenbanken und Verfügbarkeitsgruppen-Listener anzeigen.

Siehe folgendes Bild:

Sie können die Details anzeigen, indem Sie die folgenden Abfragen ausführen.

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

Es folgt die Ausgabe:

Überwachen einer AlwaysOn-Verfügbarkeitsgruppe

Sie können die AlwaysOn-Verfügbarkeitsgruppe überwachen mit:

  1. AlwaysOn Monitoring-Dashboard in SQL Server Management Studio.
  2. Zähler der Leistungsüberwachung.

Überwachen ing AlwaysOn-Verfügbarkeitsgruppe s über das Dashboard

Um den Zustand einer Verfügbarkeitsgruppe zu überwachen, können Sie das Überwachungsdashboard verwenden. Um das Dashboard zu starten, klicken Sie mit der rechten Maustaste auf den Ordner "Verfügbarkeitsgruppen" und wählen Sie "Anzeigen". Dashboard. ” Siehe folgendes Bild:

Das Dashboard zur Überwachung der AlwaysOn-Verfügbarkeitsgruppe wird in einer neuen Registerkarte geöffnet. Es zeigt zahlreiche Informationen über die konfigurierte Verfügbarkeitsgruppe an. Das Dashboard bietet eine allgemeine Zusammenfassung der Konfiguration. Es enthält den Namen der Verfügbarkeitsgruppe, der primären Instanz und des Failovermodus. Wenn ein Cluster ein Problem hat, wird es unter „Probleme“ angezeigt " Säule. Siehe folgendes Bild:

Klicken Sie nun auf den Namen der Verfügbarkeitsgruppe. Eine neue Registerkarte wird geöffnet, die die Details der ausgewählten Verfügbarkeitsgruppe anzeigt. Siehe folgendes Bild:

Oben im Dashboard sehen Sie den Status der Verfügbarkeitsgruppe, die primäre Instanz, ihren Failovermodus, den Clusterstatus und ihren Typ.

Im Verfügbarkeitsreplikat Abschnitt können Sie die Instanznamen der teilnehmenden Replikate, ihre Rollen, Verfügbarkeitsmodi, Failover-Modi und Synchronisierungsstatus sehen. Sie können auch weitere Informationen überprüfen, indem Sie weitere Spalten hinzufügen. Klicken Sie dazu mit der rechten Maustaste auf eine beliebige Stelle im Raster und wählen Sie die Spalten aus dem Kontextmenü aus. Alternativ können Sie auf „Hinzufügen/“ klicken R entfernen C Spalten “, um die vollständige Liste der Spalten zu erhalten. Siehe folgendes Bild:

Ebenso können Sie weitere Informationen zu den "Verfügbarkeitsdatenbanken" einsehen durch Hinzufügen weiterer Spalten. Klicken Sie dazu mit der rechten Maustaste auf den Abschnitt Verfügbarkeitsdatenbank und wählen Sie die Spalten aus dem Kontextmenü aus. Sie können auch auf „Hinzufügen/“ klicken R entfernen C Spalten “, um die vollständige Liste der Spalten zu erhalten. Siehe folgendes Bild:

Im G gruppieren nach finden Sie die Liste der “Verfügbarkeitsdatenbanken” innerhalb der Verfügbarkeitsreplikate. Sie können das G anpassen gruppieren nach Abschnitt, indem Sie eine der Gruppierungsmethoden auswählen, die im Abschnitt „Gruppieren nach verfügbar sind " Dropdown-Liste. Siehe folgendes Bild:

Wenn wir die AlwaysOn-Verfügbarkeitsgruppen bereitstellen, erstellt SQL Server eine erweiterte Ereignissitzung mit dem Namen „AlwaysOn_Health “ auf der SQL Server-Instanz. Dieses erweiterte Ereignis kann verwendet werden, um die Ereignisse und die Leistung von Verfügbarkeitsgruppen zu überwachen. Sie können die erweiterten Ereignisse öffnen, indem Sie auf „AlwaysOn anzeigen klicken H Gesundheit E Öffnungen. ” Siehe folgendes Bild:

Es werden alle AlwaysOn-Integritätsereignissitzungen angezeigt, die zum Überwachen der Integrität der Verfügbarkeitsgruppe verwendet werden können.

Sie können die Cluster-Quorum-Informationen anzeigen, indem Sie auf „Cluster-Quorum-Informationen anzeigen“ klicken “. Im Dialogfeld Informationen zum Cluster-Quorum können Sie den Namen des Clusters, den Mitgliedstyp, den Status und die Anzahl der Stimmen sehen. Siehe folgendes Bild:

Überwachen ing AlwaysOn-Verfügbarkeitsgruppe s mit das Leistungsüberwachung

Wir können Verfügbarkeitsgruppen mithilfe integrierter Leistungsindikatoren im Leistungsmonitor überwachen. Hier hat Microsoft zwei Objekte mit verschiedenen Leistungsindikatoren hinzugefügt. Die Objekte sind wie folgt:

  1. SQLServer:Verfügbarkeitsreplikat
  2. SQLServer:Datenbankreplikat

SQLServer:Verfügbarkeitsreplikat -Objekt stellt Leistungsindikatoren bereit, die zum Überwachen der Leistung von AlwaysOn-Verfügbarkeitsreplikaten verwendet werden.

Es folgt die Beschreibung der Zähler:

Zählername Beschreibung
Vom Replikat empfangene Bytes/s Zeigt die Anzahl der von der Replik empfangenen Bytes pro Sekunde an.
An Replica gesendete Bytes/s Zeigt die Anzahl der Bytes an, die pro Sekunde an das Remote-Replikat gesendet werden. Auf dem primären Replikat wird die Anzahl der an das sekundäre Replikat gesendeten Bytes angezeigt. Auf dem sekundären Replikat wird die Anzahl der an das primäre Replikat gesendeten Bytes angezeigt.
An Transport gesendete Bytes/s Zeigt die tatsächliche Anzahl von Bytes an, die pro Sekunde über das Netzwerk an das Remote-Replikat gesendet werden. Auf dem primären Replikat wird die Anzahl der an das sekundäre Replikat gesendeten Bytes angezeigt. Auf dem sekundären Replikat wird die Anzahl der an das primäre Replikat gesendeten Bytes angezeigt.
Empfang von Replikat/Sek. Zeigt die Anzahl der vom Replikat empfangenen AlwaysOn-Nachrichten an.
Neueste Nachrichten/Sek. Zeigt die Anzahl der AlwaysOn-Nachrichten an, die in der letzten Sekunde erneut gesendet wurden.
Sendet an Replica/s Zeigt die Anzahl der an das Replikat gesendeten AlwaysOn-Nachrichten an.
Sendet an Transport/s Zeigt die tatsächliche Anzahl von AlwaysOn-Nachrichten an, die pro Sekunde über das Netzwerk an das Remoteverfügbarkeitsreplikat gesendet werden. Auf dem primären Replikat wird die Anzahl der Nachrichten angezeigt, die an das sekundäre Replikat gesendet wurden. Auf dem sekundären Replikat wird die Anzahl der Nachrichten angezeigt, die an das primäre Replikat gesendet wurden.

SQLServer:Datenbankreplikat -Objekt verfügt über eine Liste von Leistungsindikatoren, die zum Überwachen der Leistung der sekundären Replikate einer Verfügbarkeitsgruppe verwendet werden. Das SQLServer:Datenbankreplikat -Objekt wird nur für SQL Server-Datenbanken verwendet, die auf einem sekundären Replikat gehostet werden.

Es folgt die Beschreibung der Zähler:

Zählername

Beschreibung

Kann eingesehen werden auf

Empfangene Dateibytes/Sek.

Zeigt die Menge an FILESTREAM-Daten an, die von der sekundären Datenbank des sekundären Replikats in der letzten Sekunde empfangen wurden.

Auf Sekundäres Replikat

Empfangene Bytes protokollieren/Sek.

Zeigt die Anzahl der Protokolldatensätze an, die in der letzten Sekunde von der Datenbank im sekundären Replikat empfangen wurden.

Auf Sekundäres Replikat

Verbleibendes zum Rückgängigmachen protokollieren

Zeigt die verbleibende Protokollmenge an, um die Undo-Phase abzuschließen. Die Protokollmenge wird in Kilobyte angezeigt.

Auf Sekundäres Replikat

Sendewarteschlange protokollieren

Zeigt die Anzahl der Protokolldatensätze in den Protokolldateien der primären Datenbank (in Kilobyte) an, die nicht an das sekundäre Replikat gesendet wurden. Die Größe der Warteschlange enthält keine FILESTREAM-Dateien, die an ein sekundäres Replikat gesendet werden.

Auf Sekundäres Replikat

Gespiegelte Schreibtransaktion/Sek.

Zeigt die Anzahl der Transaktionen an, die in der letzten Sekunde in die gespiegelte Datenbank geschrieben haben und auf das Protokoll warten, das an den Spiegel gesendet wird, um den Commit auszuführen.

Auf dem primären Replikat

Wiederherstellungswarteschlange

Zeigt die Anzahl der Protokolldatensätze in den Protokolldateien des sekundären Replikats an, die noch nicht wiederhergestellt wurden.

Auf Sekundäres Replikat

Verbleibende Wiederherstellungsbytes

Zeigt die verbleibende Protokollmenge an, die noch einmal erstellt werden muss, um die Wiederherstellungsphase abzuschließen. Die Protokollgröße wird in Kilobyte angezeigt.

Auf Sekundäres Replikat

Wiederholte Bytes/Sek.

Zeigt die Anzahl der Protokolleinträge, die in der letzten Sekunde in der sekundären Datenbank wiederholt wurden.

Auf Sekundäres Replikat

Gesamtprotokoll muss rückgängig gemacht werden

Zeigt die Gesamtgröße des Protokolls an, das rückgängig gemacht werden muss. Die Größe des Protokolls wird in Kilobyte angezeigt.

Auf Sekundäres Replikat

Transaktionsverzögerung

Zeigt die Verzögerung beim Warten auf eine nicht abgeschlossene Commit-Bestätigung. Die Zeit wird in Millisekunden angezeigt.

Auf Sekundäres Replikat

Zusammenfassung

In diesem Artikel habe ich die verschiedenen Möglichkeiten zum Überwachen von AlwaysOn-Verfügbarkeitsgruppen erläutert. In meinem nächsten Artikel werde ich den geplanten manuellen und automatischen Failover-Prozess mit SQL Server Management Studio, T-SQL-Skript und PowerShell demonstrieren.

Bleiben Sie dran..!