Blog
Monday, 27. July 2020

SQL Server überwachen mit Check_MK – Teil 1

Simon
IT-Consultant

Neben dem Überwachen von großen sowie kleinen Server Systemen und Webhosts, bietet Check_MK auch die Möglichkeit einzelne SQL Server Instanzen zu überwachen. Hierbei wird eine gar endlose Menge an Überwachungsmöglichkeiten geboten. So können beispielsweise allgemeine Zustände einer Instanz sowie enthaltene Datenbanken überwacht werden. Es kann der Zustand eines Backups oder einer Datenbank geprüft werden und überwachen, wie viel Speicher eine Datenbank noch zur Verfügung hat und ob sich diese sich beispielsweise in einem Notfall Zustand befindet. Auf die genaue Anzahl der möglichen Checks werden wir im späteren Verlauf dieses Beitrags noch näher eingehen.

Vorerst wollen wir uns aber genauer erläutern, wie wir Check_MK zum Überwachen unserer SQL Server Instanzen vorbereiten und einrichten können.

Das mssql-Plugin

Um mithilfe von Check_MK einzelne SQL Server Instanzen überwachen zu können, muss vorerst das mssql-Plugin installiert werden. Dieses bringt dann die einzelnen Checks mit, die die gewünschte Instanz gezielt überwachen können.

Schritt 1: Den Agenten installieren

Als erster Schritt muss der Check_MK Agent auf dem Host der gewünschten SQL Server Instanz installiert werden. Dieser ist auf der Check_MK Local Site unter Monitoring Agents zu finden:

Mainzer Datenfabrik - SQL Server überwachen mit Check_MK – Teil 1

Schritt 2: Das Plugin installieren

Nachdem der Check_MK Agent erfolgreich auf dem Host der SQL Server Instanz installiert wurde, kann das mssql-Plugin installiert werden.

Check_MK bietet eine Vielzahl von verschiedenen Plugins an und liefert die nötigen Ressourcen für deren Installation direkt mit dem Agenten mit. Nach erfolgreicher Installation des Agenten sind diese für gewöhnlich unter C:\Program Files (x86)\checkmk\service\plugins zu finden.

Hier befindet sich auch das benötigte mssql-Plugin:

Mainzer Datenfabrik - SQL Server überwachen mit Check_MK – Teil 1

Neben diesem Ordner existiert auch noch ein zweiter Ordner mit dem Namen Plugins. Während der ersterer lediglich alle benötigten Ressourcen der einzelnen Plugins bereitstellt, wird letzterer für die tatsächliche Installation dieser benötigt.

Der für die Installation benötigte Ordner ist allerdings verborgen und muss vorerst sichtbar gemacht werden. Hierfür sind folgende Schritte notwendig:

  • Systemeinstellungen öffnen
  • Update und Sicherheit auswählen
  • Anschließend unter Für Entwickler einen Haken bei Ausgeblendete Dateien und Systemdateien anzeigen setzen

Nun ist der benötigte Ordner sichtbar und kann für gewöhnlich unter C:\ProgramData\checkmk\agent\plugins gefunden werden. Für die Installation muss nun lediglich die mssql.vbs Datei in den Plugins Ordner kopiert werden:

Mainzer Datenfabrik - SQL Server überwachen mit Check_MK – Teil 1

Die Aufnahme in Check_MK

Nachdem nun das mssql-Plugin erfolgreich installiert worden ist, sind wir nicht mehr weit von der Überwachung unserer SQL Server Instanz entfernt. Um damit zu beginnen müssen wir nun den Host der Instanz, auf dem wir den Check_MK Agenten sowie das benötigte Plugin installiert haben, in unsere Überwachung aufnehmen. Hierfür gehen wir wie folgt vor:

  • Unter WATO-Configuration Hosts auswählen
  • Anschließend New Host auswählen
  • Hier muss nun lediglich unter Hostname der Computer Name des Hosts angegeben werden (dieser kann im Server Manager des Hosts eingesehen werden)
  • Nun auf Safe and go to Services klicken
  • Als letzter Schritt müssen die vorgenommenen Änderungen gespeichert werden, hierfür auf den roten Button Change im oberen linken Bereich klicken
  • Anschließend Activate Effected auswählen

Der Host wurde somit erfolgreich in die Überwachung von Check_MK aufgenommen.

Unter WATO-Configuration kann nun erneut Hosts ausgewählt werden. Hier werden nun alle überwachten Hosts aufgelistet, darunter auch unser eben frisch hinzugefügter Host. Mit einem Linksklick auf diesen können nun dessen Eigenschaften eingesehen werden. Mit einem Klick auf dem Button Services werden nun alle verfügbaren Services und Checks für den ausgewählten Host aufgelistet. Hier sind nun auch alle mssql Checks zu finden. Mit einem Klick auf Monitor können diese nun aktiviert und anschließend mit der Überwachung der SQL Server Instanz begonnen werden.

Zum Schluss noch einmal eine Auflistung aller, mit dem mssql-Plugin mitgelieferten Checks:

Metrik Warnung Alarm Bedeutung
mssql_versions MS SQL Server Ja Nein Version der überwachten SQL Instanz
mssql_transactionlogs MS SQL Nein Ja Verfügbarer Platz im Transaktionslog in Prozent
mssql_tablespaces MS SQL Tablespaces Ja Nein Informationen über Größe
mssql_datafiles MS SQL Ja Nein Größe der Datendateien
mssql_databases MS SQL Database Ja Nein Überwacht Eigenschaften und die Zustände ONLINE, OFFLINE, EMERGENCY und SUSPECT einer Datenbank
mssql_counters.transactions MS SQL Tablespaces Ja Nein Transaktionen pro Sekunde. Wird auf inaktiv gesetzt wenn die überwachte Datenbank OFFLINE ist.
mssql_counters.sqlstats MS SQL Ja Nein SQL Statistik Werte
mssql_counters.pageactivity MS SQL Server Ja Nein Seiten Aktivität
mssql_counters.locks_per_batch MS SQL Server Ja Nein Locks pro Batch
mssql_counters.locks MS SQL Tablespaces Ja Nein Locks pro Sekunde
mssql_counters.file_sizes MS SQL Tablespaces Ja Nein Größe der Log- und Datendateien. Wird inaktiv gesetzt, wenn die überwachte Datenbank OFFLINE ist
mssql_counters.cache_hits Ja Nein Trefferrate im Cache. Wird auf inaktiv gesetzt wenn die überwachte Datenbank OFFLINE ist
mssql_counters MS SQL Database Ja Nein “Dummy”
mssql_connections MS SQL Database Ja Nein Anzahl der Verbindungen
mssql_blocked_sessions Ja Nein Blocked Sessions
mssql_backup.per_type MS SQL Tablespaces Ja Nein Erfolgreiche Backups
mssql_backup Nein Ja Abfrage eines gültigen Backups für alle DBs, außer ReportServerTempDB
check_mk-mssql_instance Nein Ja Status des SQL Server Dienstes
SQL Server Agent Status Nein Ja Status des Agent Prozesses
Listener erreichbar Nein Ja Verbindungseinstieg erreichbar
Free list stalls/sec Ja Nein Anzahl der wartenden Anforderungen einer freien Seite pro Sekunde
Free Pages Ja Nein Mindestanzahl freier Seiten im Buffer CacheSchwere eines System-Ereignisses & Sicherheits-Ereignisses
Event Security System, Event Security Nein Ja Schwere eines System-Ereignisses & Sicherheits-Ereignisses

Im nächsten Artikelsehen wir uns an, wie wir die vom mssql.vbs Plugin mitgelieferten Checks selbst konfigurieren können.

Interesse geweckt?

Unsere Expert:innen stehen Ihnen bei allen Fragen rund um Ihre IT Infrastruktur zur Seite.

Kontaktieren Sie uns gerne über das Kontaktformular und vereinbaren ein unverbindliches Beratungsgespräch mit unseren Berater:innen zur Bedarfsevaluierung. Gemeinsam optimieren wir Ihre Umgebung und steigern Ihre Performance!
Wir freuen uns auf Ihre Kontaktaufnahme!

Taunusstraße 72
55118 Mainz
info@madafa.de
+49 6131 3331612
Bürozeiten
Montag bis Donnerstag:
9:00 - 17:00 Uhr MEZ

Freitags:
9:30 - 14:00 Uhr MEZ