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.
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.
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:
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:
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:
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:
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:
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.
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!