Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Diversi modi per monitorare i gruppi di disponibilità AlwaysOn di SQL Server

Nei miei articoli precedenti ho spiegato il processo passo passo per la distribuzione di un gruppo di disponibilità AlwaysOn su SQL Server 2017. In questo articolo spiegherò come monitorare i gruppi di disponibilità AlwaysOn.

Innanzitutto, esaminiamo la configurazione del gruppo di disponibilità che avevamo distribuito in precedenza. Per farlo, apri SQL Server Management Studio  Espandi motore di database da Esplora oggetti  Espandi "AlwaysOn High Availability ”  Espandi “Gruppi di disponibilità. ” Puoi vedere il gruppo di disponibilità denominato SQLAAG . In questo gruppo di disponibilità (SQLAAG), puoi visualizzare l'elenco delle repliche di disponibilità, dei database di disponibilità e dei listener del gruppo di disponibilità.

Vedi l'immagine seguente:

Puoi vedere i dettagli eseguendo le seguenti query.

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

Di seguito è riportato l'output:

Monitoraggio di un gruppo di disponibilità AlwaysOn

Puoi monitorare il gruppo di disponibilità AlwaysOn utilizzando:

  1. Dashboard di monitoraggio AlwaysOn in SQL Server Management Studio.
  2. Contatori Performance Monitor.

Monitoraggio ing Gruppo di disponibilità AlwaysOn s utilizzando la dashboard

Per monitorare l'integrità di un gruppo di disponibilità, puoi utilizzare il dashboard di monitoraggio. Per avviare la dashboard, fai clic con il pulsante destro del mouse sulla cartella Gruppi di disponibilità e seleziona "Mostra Cruscotto. ” Vedi l'immagine seguente:

Il dashboard di monitoraggio del gruppo di disponibilità AlwaysOn verrà aperto in una nuova scheda. Visualizza molte informazioni sul gruppo di disponibilità configurato. Il dashboard fornisce un riepilogo di alto livello della configurazione. Include il nome del gruppo di disponibilità, dell'istanza primaria e della modalità di failover. Se un cluster presenta un problema, verrà visualizzato nella sezione "Problemi colonna ". Vedi l'immagine seguente:

Ora fai clic sul nome del gruppo di disponibilità. Verrà aperta una nuova scheda, che mostra i dettagli del gruppo di disponibilità selezionato. Vedi l'immagine seguente:

Nella parte superiore della dashboard puoi visualizzare lo stato del gruppo di disponibilità, l'istanza primaria, la modalità di failover, lo stato del cluster e il tipo.

Nella Replica disponibilità sezione, puoi vedere i nomi delle istanze delle repliche partecipanti, i loro ruoli, le modalità di disponibilità, le modalità di failover e gli stati di sincronizzazione. Puoi anche rivedere ulteriori informazioni aggiungendo altre colonne. Per farlo, fai clic con il pulsante destro del mouse in un punto qualsiasi della griglia e seleziona le colonne dal menu contestuale. In alternativa, puoi fare clic su "Aggiungi/ R Rimuovi C colonne ” per ottenere l'elenco completo delle colonne. Vedi l'immagine seguente:

Allo stesso modo, puoi consultare ulteriori informazioni sui "database di disponibilità" aggiungendo altre colonne. Per fare ciò, fai clic con il tasto destro sulla sezione del database di disponibilità e seleziona le colonne dal menu contestuale. Puoi anche fare clic su "Aggiungi/ R Rimuovi C colonne ” per ottenere l'elenco completo delle colonne. Vedi l'immagine seguente:

Nel G raggruppa per sezione, puoi vedere l'elenco dei "Banche dati disponibilità" all'interno delle repliche di disponibilità. Puoi personalizzare la G raggruppa per selezionando uno dei metodi di raggruppamento disponibili nella sezione "Raggruppa per " cadere in picchiata. Vedi l'immagine seguente:

Quando distribuiamo i gruppi di disponibilità AlwaysOn, SQL Server crea una sessione di eventi estesa denominata "AlwaysOn_Health ” nell'istanza di SQL Server. Questo evento esteso può essere utilizzato per monitorare gli eventi e le prestazioni dei gruppi di disponibilità. Puoi aprire gli eventi estesi facendo clic su "Visualizza AlwaysOn H Terra E ventilatori. ” Vedi l'immagine seguente:

Verranno visualizzate tutte le sessioni di eventi di integrità AlwaysOn che possono essere utilizzate per monitorare l'integrità del gruppo di disponibilità.

È possibile visualizzare le informazioni sul quorum del cluster facendo clic su "Visualizza informazioni sul quorum del cluster ”. Nella finestra di dialogo delle informazioni sul quorum del cluster è possibile visualizzare il nome del cluster, il tipo di membro, lo stato e il conteggio dei voti. Vedi l'immagine seguente:

Monitoraggio ing Gruppo di disponibilità AlwaysOn s utilizzando il Monitoraggio delle prestazioni

Possiamo monitorare i gruppi di disponibilità utilizzando i contatori integrati nel monitoraggio delle prestazioni. Qui, Microsoft ha aggiunto due oggetti con vari contatori delle prestazioni. Gli oggetti sono i seguenti:

  1. SQLServer:Replica disponibilità
  2. SQLServer:Replica database

SQLServer:replica disponibilità l'oggetto fornisce contatori delle prestazioni utilizzati per monitorare le prestazioni delle repliche di disponibilità AlwaysOn.

Di seguito la descrizione dei contatori:

Nome del contatore Descrizione
Byte ricevuti dalla replica/sec Mostra il numero di byte ricevuti dalla replica al secondo.
Byte inviati alla replica/sec Mostra il numero di byte inviati alla replica remota al secondo. Nella replica primaria, mostra il numero di byte inviati alla replica secondaria. Nella replica secondaria, mostra il numero di byte inviati alla replica primaria.
Byte inviati a trasporto/sec Mostra il numero effettivo di byte inviati al secondo sulla rete alla replica remota. Nella replica primaria, mostra il numero di byte inviati alla replica secondaria. Nella replica secondaria, mostra il numero di byte inviati alla replica primaria.
Riceve da replica/sec Mostra il numero di messaggi AlwaysOn ricevuti dalla replica.
Messaggi recenti/sec Mostra il numero di messaggi AlwaysOn reinviati nel secondo precedente.
Invia a Replica/sec Mostra il numero di messaggi AlwaysOn inviati alla replica.
Invia a Trasporto/sec Mostra il numero effettivo di messaggi AlwaysOn inviati al secondo sulla rete alla replica di disponibilità remota. Nella replica primaria, mostra il numero di messaggi inviati alla replica secondaria. Nella replica secondaria, mostra il numero di messaggi inviati alla replica primaria.

SQLServer:replica database oggetto dispone di un elenco di contatori utilizzati per monitorare le prestazioni delle repliche secondarie di un gruppo di disponibilità. SQLServer:Replica database oggetto viene utilizzato solo per i database di SQL Server ospitati su una replica secondaria.

Di seguito la descrizione dei contatori:

Nome del contatore

Descrizione

Può essere visualizzato su

Byte di file ricevuti/sec

Mostra la quantità di dati FILESTREAM ricevuti dal database secondario della replica secondaria nell'ultimo secondo.

Sulla replica secondaria

Byte di registro ricevuti/sec

Mostra il numero di record di log ricevuti dal database nella replica secondaria nell'ultimo secondo.

Sulla replica secondaria

Registro rimanente per l'annullamento

Mostra la quantità di log rimanente per completare la fase di annullamento. L'importo del registro viene visualizzato in kilobyte.

Sulla replica secondaria

Coda di invio registro

Mostra il numero di record di registro nei file di registro del database primario (in kilobyte) che non sono stati inviati alla replica secondaria. La dimensione della coda non include i file FILESTREAM inviati a una replica secondaria.

Sulla replica secondaria

Transazione di scrittura speculare/sec

Mostra il numero di transazioni che hanno scritto nel database con mirroring e sono in attesa che il log inviato al mirror esegua il commit, nell'ultimo secondo.

Sulla replica primaria

Coda di recupero

Mostra il numero di record di registro nei file di registro della replica secondaria che non sono stati ancora rifatti.

Sulla replica secondaria

Ripeti byte rimanenti

Mostra la quantità di registro rimanente da rifare per terminare la fase di ripristino. La dimensione del registro viene visualizzata in kilobyte.

Sulla replica secondaria

Byte rifatti/sec

Mostra il numero di record di log rifatti nel database secondario nell'ultimo secondo.

Sulla replica secondaria

Registro totale che richiede l'annullamento

Mostra la dimensione totale del registro che deve essere annullato. La dimensione del registro viene visualizzata in kilobyte.

Sulla replica secondaria

Ritardo nella transazione

Mostra il ritardo nell'attesa del riconoscimento del commit non terminato. L'ora viene visualizzata in millisecondi.

Sulla replica secondaria

Riepilogo

In questo articolo, ho spiegato i diversi modi per monitorare i gruppi di disponibilità AlwaysOn. Nel prossimo articolo illustrerò il processo di failover manuale e automatico pianificato utilizzando SQL Server Management Studio, T-SQL Script e PowerShell.

Resta sintonizzato..!