Checkmk
to checkmk.com

1. Einleitung

1.1. Was genau sind Dashboards?

Dashboards sind in Checkmk die zentralen Ansichten für Ihr Monitoring. Sie liefern Ihnen sowohl Übersichten als auch detaillierte Einsichten in bestimmte Bereiche. Sie können etwa den allgemeinen Status ganzer Netzwerksegmente visualisieren, aber auch schlicht auflisten, welche Services just für eine Aus- oder Überlastung bestimmter Systemressourcen sorgen. Checkmk bringt einige Standard-Dashboards mit sich, so für Probleme, Checkmk-Server-Statistiken und natürlich einen Gesamtüberblick. Sie dürfen aber völlig individuelle Dashboards von Grund auf selbst gestalten.

Welche Werkzeuge dafür zur Verfügung stehen und wie genau Sie damit eigene Übersichten aufbauen, lesen Sie in diesem Artikel. Zunächst zeigen wir Ihnen, wie Dashboards grundsätzlich funktionieren und wie Sie damit arbeiten. Anschließend beleuchten wir die Grundlagen für Layout und Konfiguration, um darauf aufbauend ein komplettes, einfaches Beispiel-Dashboard Schritt für Schritt zu kreieren. Weiter geht es mit der Vorstellung aller bereits eingebauten Dashboards und Widgets — den einzelnen Bausteinen für Übersichten. Den Abschluss bilden Tipps zum Umgang mit Fehlern und Problemen.

Das auffälligste Dashboard sehen Sie übrigens direkt auf der Startseite von Checkmk, allerdings können Dashboards wie sonstige Ansichten behandelt und ganz einfach über die Navigationsleiste und die Seitenleiste aufgerufen werden.

Und natürlich eignen sich Dashboards bestens, um sie separat auf einzelne Monitore zu legen, sei es für einen großen Leitstand, als Info-Display für Server-Räume oder als schlichtes Kiosk-Display für den Konferenzsaal.

1.2. Das können Dashboards

Das Besondere an Checkmk-Dashboards ist unser hauseigenes Anchored Layout: Über einen intelligenten Algorithmus passen sich Dashboards automatisch an die Dimensionen des Displays beziehungsweise des Browserfensters an. Dabei können Sie für alle einzelnen Elemente des Dashboards, die Widgets, festlegen, wie genau sie sich verhalten und in welche Richtungen sie sich bei Bedarf ausdehnen.

Seit Version 2.5.0 gibt es in den kommerziellen Editionen zudem ein alternatives Responsive Layout: Hier gestalten Sie Ihr Layout einfach per Drag&Drop, die Anpassung an unterschiedliche Displays geschieht automatisch.

Eine Gegenüberstellung der beiden Systeme und nähere Details lesen Sie im Kapitel Layout.

Für den Inhalt stehen Widgets unterschiedlicher Kategorien zur Verfügung: Reguläre Ansichten, Graphen, Metriken, vorgefertigte Elemente für diverse Statistiken und Zeitleisten sowie Kästen für statische Texte und beliebige URLs. Eine Übersicht aller Widgets finden Sie weiter unten.

Einige der Widgets gibt es exklusiv in den kommerziellen Editionen.

Ein wichtiges Feature bei der Dashboard-Nutzung: Über Filter können selbst Dashboards, die Werte für alle Hosts oder Services im Netzwerk anzeigen, auf bestimmte Bereiche heruntergebrochen werden. Dashboards sind also nicht bloß starre Anzeigen, sondern echte Werkzeuge zum Auffinden und Analysieren von Problemen und Zuständen.

1.3. Dashboards im Einsatz

Main-Dashboard interpretieren

Auf der Startseite von Checkmk sehen Sie das Main-Dashboard, das Sie im Monitor-Menü und auch im Snapin Views jeweils unter Overview > Main dashboard finden.

Checkmk Community und kommerzielle Editionen kommen mit unterschiedlichen Standard-Dashboards, hier zunächst ein Blick auf die Variante der kommerziellen Editionen:

Das Standard-Dashboard der kommerziellen Editionen mit Nummern für die detaillierte Beschreibung.
Standard-Dashboard einer kommerziellen Edition mit Host-Overview
Nr. Titel Funktion

1

Filter

Runtime-Filter aufrufen

2

Sharing

Status und Einstellungen für Dashboard-Sharing

3

Settings

Einstellungen für Dashboards und Vorgabe-Filter

4

Edit widgets

Layout-Modus ein-/ausschalten

5

Host statistics

Aktueller Zustand der Hosts

6

Total host problems

Zeitleiste der Host-Probleme

7

Service statistics

Aktueller Zustand der Services

8

Total service problems

Zeitleiste der Service-Probleme

9

Problem notifications

Zeitleiste der Alarmierungen

10

Percentage of total service problems

Zeitleiste aktiver Services

11

Host overview

Per Mausrad zoombare Visualisierung von Problemen auf Hosts

12

Top alerters (last 7 days)

Für Alarmierungen verantwortliche Services

Wenn Sie mit dem Mauszeiger über die Graphen oder die Host-Symbole im Widget Host overview fahren, bekommen Sie sofort weitere Detailinformationen via Tooltipp.

Über die verlinkten Titelzeilen der Widgets gelangen Sie zu ausführlicheren Darstellungen.

Bei CRE Checkmk Community ist das Haupt-Dashboard auf der Startseite hingegen das Problem Dashboard, welches auch in den kommerziellen Editionen in der Hauptnavigation über Monitor > Problems > Problems dashboard aufrufbar ist und ganz klassisch unerledigte Probleme und aktuelle Events in Listenform zeigt:

Das Checkmk Community Standard-Dashboard mit Nummern für die detaillierte Beschreibung.
Dashboard der Open-Source-Version mit Service-Problemen
Nr. Titel Funktion

1

Filter

Filter aufrufen

2

Sharing

Status und Einstellungen für Dashboard-Sharing

3

Settings

Dashboard-Einstellungen

4

Edit widgets

Layout-Modus ein-/ausschalten

5

Host statistics

Aktueller Zustand der Hosts

6

Service statistics

Aktueller Zustand der Services

7

Host Problems

Liste unbehandelter Host-Probleme

8

Service Problems

Liste unbehandelter Service-Probleme

9

Events of recent 4 hours

Ereignisse der letzten vier Stunden

Tip

Hinweis zum Edit widgets-Link zum Umschalten in den Layout-Modus: Bei den eingebauten Dashboards sehen Sie diesen Link standardmäßig zunächst nicht! Er taucht erst, und dann dauerhaft, auf, wenn Sie das Dashboard über das Menü Settings oder in der Dashboard-Liste klonen. Verstehen Sie dies einfach als kleine Schutzmaßnahme, denn es ist ratsam, eingebaute Dashboards zu klonen Symbol für das Klonen. und dann die Klone anzupassen.

Dashboards filtern

Wie Sie später sehen werden, lassen sich Dashboards von vornherein für eine bestimmte Auswahl von Hosts oder Services erstellen. Über Runtime filters können Sie aber jedes Dashboard temporär auf eine Auswahl beschränken:

  1. Filterfunktion über Symbol eines Filters. aufrufen.

  2. Filter über Add filter hinzufügen — beispielsweise Host name (regex).

  3. Filter konfigurieren — beispielsweise myhost.

Der dritte Schritt ist von Filter zu Filter unterschiedlich. Wichtig ist hier vor allem die Handhabung eingegebener Suchbegriffe, also beispielsweise für Host-Namen: Wie üblich wertet Checkmk diese als reguläre Ausdrücke. Ein Filter nach myhost würde daher sowohl den Host myhost finden als auch 2myhost und myhost2. Wenn Sie nur myhost im Dashboard sehen wollen, müssen Sie als Suchbegriff entsprechend ^myhost$ verwenden, um Anfang und Ende der Zeile einzubeziehen und so einen exakten Match zu provozieren.

Natürlich lassen sich auch mehrere Filter miteinander kombinieren, die die Treffermenge dann per UND-Verknüpfung reduzieren. Innerhalb eines Filters dürfen Sie ODER-Verknüpfungen mit den Mitteln der regulären Ausdrücke verwenden, also beispielsweise myhost1|db_server.

2. Layout-Systeme

Checkmk stellt zwei komplett unterschiedliche Layout-Systeme für Dashboards zur Verfügung: Unser traditionelles, hauseigenes Anchored layout und in den kommerziellen Editionen seit Version 2.5.0 ein alternatives Responsive layout.

CEE Das Responsive-System gibt es exklusiv in den kommerziellen Editionen. Es ist etwas intuitiver und verhält sich standardkonform: Sie platzieren und skalieren Widgets manuell per Maus. Ändert sich der Viewport, wird die Darstellung automatisch angepasst — Widgets werden also passend zur Ansichtsgröße automatisch angeordnet und skaliert. Praktisch ist das zum Beispiel für ausgefallene Displaygrößen oder für die Anzeige auf wechselnden Geräten, etwa bei Dashboards, die mal auf dem Desktop, mal auf Mobilgeräten angezeigt werden sollen.

Das Anchored-System setzt den Fokus der Dynamik direkt auf die Widgets statt auf das ganze Dashboard: Widgets können mit fixer Höhe und Breite angelegt werden, sie können aber auch automatisch in beiden Dimensionen wachsen, um das Dashboard immer optimal auszufüllen — Widgets werden also gemäß Ihren Präferenzen skaliert, die Anordnung hingegen bleibt erhalten.

Welches der beiden Layout-Systeme Sie verwenden wollen, legen Sie direkt im ersten Schritt beim Anlegen eines neuen Dashboards fest — und zwar endgültig, ändern lässt sich diese Wahl später nicht mehr. Inhaltlich gibt es übrigens keine Unterschiede, in beiden Layout-Systemen stehen alle Widgets zur Verfügung.

Im Folgenden sehen Sie, wie sich die unterschiedlichen Systeme in der Praxis verhalten. Aber die beste Möglichkeit, die Dynamiken und Unterschiede zu verstehen, bleibt: Ausprobieren!

2.1. Responsive-Layout

Dieses Layout-System ist vollkommen intuitiv: Sie platzieren Widgets per Drag&Drop und skalieren über den Anfasser in der rechten, unteren Ecke. Hier ein Beispiel, der Einfachheit halber mit acht Versionen desselben Site overview-Widgets:

Responsive-Layout mit manuell gesetzten Widgets.
Responsive-Layout mit manuell gesetzten Widgets

Wenn dieses Dashboard nun zum Beispiel auf einem mobilen Gerät landet oder man schlicht, wie hier zur Demonstration, das Browserfenster etwas schmaler zieht, passen sich Anordnung und Skalierung der Widgets an:

Responsive-Layout mit automatisch angepasstem Layout.
Responsive-Layout mit automatisch platzierten und skalierten Widgets

Der große Vorteil: Alles geschieht ganz automatisch. Der Preis dafür: Wenn Sie ein bestimmtes Widget, beispielsweise einen Graph mit Zeitleiste, immer über die volle Breite anzeigen lassen wollen, ist das mit diesem System nicht möglich.

2.2. Anchored-Layout

Das Prinzip ist simpel: Eine beliebige Ecke eines Widgets wird als Anker festgelegt. Von diesem Fixpunkt aus kann das Widget dann in Höhe und/oder Breite wachsen, sobald mehr Platz zur Verfügung steht, also zum Beispiel schlicht auf einem größeren Bildschirm, aber auch, wenn sich die Position oder Größe anderer Widgets verändert.

Zur Verdeutlichung hier ein Beispiel mit dem bereits bekannten Site overview-Widget — in der Mitte mit manueller Höhe und Breite sowie dem Anker oben links. Den Anker erkennen Sie an der grünen Ecke, die Einstellungen für aktuelle Höhe und Breite finden Sie in der Mitte der Widgets.

Umrahmt wird es von vier weiteren Widgets, allesamt mit automatischer Höhe, die seitlichen auch mit automatischer Breite — die Widgets oben und unten bekommen die Einstellung Max width. Standardmäßig sitzt der Anker oben links, hier bekommt jedoch das rechte Widget den Anker oben rechts und das untere unten links.

Ein Widget in der Dashboard-Mitte.
Manuell positioniertes und skaliertes Widget

Wenn man nun das mittige Widget zum Beispiel weiter nach links und unten verschiebt, verändern sich die Widgets links, rechts und unten — denn sie wachsen automatisch von ihren Ankern hin zum zentralen Widget.

Das obere Widget hingegen bleibt, wie es ist. Nach unten kann es schließlich nicht wachsen, da die beiden seitlichen Widgets oben verankert sind.

Das zentrale Widget, verschoben nach unten links.
Widgets mit Auto width/height passen sich automatisch an

Schaltet man nun das untere Widget von Max width auf Auto width, geht es nicht mehr über die gesamte Breite — weil die automatische Höhe des rechten Widgets vor der automatischen Breite des unteren Widgets gerendert wird (weil zeilenweise vorgegangen wird).

Das unterste Widgets mit verkürzter Breite.
Eine Frage der Hierarchie: Die automatische Höhe des rechten Widgets wird vor der automatischen Breite des unteren Widgets gesetzt

Wenn Widgets mit automatischen Dimensionen um denselben Raum streiten, können Sie mit der Maximaleinstellung quasi den Gewinner festlegen — aber Vorsicht: Konkurrieren zwei auf Maximum gesetzte Widgets um denselben Raum, kann es zu Überlappungen kommen.

Einfacher zu verstehen ist das ganze Anchored-Layout, wenn Sie sich solch einen Testaufbau selbst anlegen und die Widgets ein wenig herumschubsen.

3. Konfiguration

3.1. Dashboard

Die Dashboard-Konfiguration sehen Sie automatisch beim Anlegen eines neuen Dashboards. Später erreichen Sie sie über die Symbole in der Dashboard-Liste (Customize > Visualization > Dashboards) oder den Menüeintrag Settings > Dashboard settings eines geöffneten Dashboards.

Das Menü 'Settings'.
Layout und Konfiguration lassen sich separat bearbeiten

Die Eigenschaften des Dashboards an sich sind trivial. Hier werden lediglich Metadaten wie Name, Menüeintrag, Sichtbarkeit in Menüs und für Benutzer(-gruppen) gesetzt.

Allgemeine Eigenschaften des Dashboards.
Basiseinstellungen eines Dashboards

3.2. Widgets

Die Konfiguration einzelner Widgets sehen Sie automatisch beim Hinzufügen zu einem Dashboard. Später rufen Sie sie direkt über das Zahnrad-Symbol der Widgets im Layout-Modus auf.

Das Symbol zum Aufruf der Eigenschaften eines Widgets.
Aufruf der Widget-Konfiguration im Anchored Layout

Übrigens: Im Responsive Layout sehen die Widgets minimal anders aus, die Symbole sind aber identisch:

Widget im Responsive-Design.
Ein Widget in der Responsive-Layout-Ansicht

Die Konfiguration der meisten Widgets ist recht simpel. Typischerweise finden Sie Data settings zur Beschränkung und Darstellung von Daten sowie Widget settings mit Optionen für Titel, Verlinkung und so weiter — hier mal am Beispiel des Gauge-Widgets.

Typische Widget-Optionen.
Typische Widget-Optionen am Beispiel Gauge

Bei allen Widgets, die sich auf einige oder einzelne Hosts und Services beziehen, finden Sie zudem entsprechende Filtermöglichkeiten.

Eine genaue Beschreibung der Filter finden Sie im Kapitel Filter, konkrete Beispiele für Widget-Konfigurationen im Kapitel Beispiel-Dashboard.

3.3. Berechtigungen

Auch abseits der Dashboard- und Widget-Konfiguration gibt es in Checkmk wichtige Einstellungen, nämlich die Berechtigungen. Unter Setup > Users > Roles & permissions > Edit role user können Sie einfach nach dashboard filtern, um alle Optionen aufzulisten. Hier lässt sich für eine Rolle detailliert festlegen, welche Standard-Dashboards deren zugewiesene Benutzer sehen und was genau sie mit sonstigen Dashboards anfangen dürfen.

Benutzerrolle mit den Berechtigungen für Dashboards.
Dashboards können sensible Informationen enthalten — nicht jede Benutzerrolle benötigt hier alle Rechte

3.4. Filter

Die Filterung von Dashboards und Widgets ist ein mächtiges Feature, zu finden in mehreren Ausprägungen. Hier zunächst mal eine Übersicht:

  • Dashboard-Konfiguration

    • Default filters

    • Runtime filters - ohne Werte

  • Widget-Konfiguration

    • Widget filters

  • Dashboard-Ansicht

    • Runtime filters - Werte durch Benutzer

Default filters setzen konkrete Vorgaben für das gesamte Dashboard, also beispielsweise den Filter Host name (exact match) mit dem Wert myhost.

Runtime filters in der Dashboard-Konfiguration setzen leere Vorgaben für das gesamte Dashboard, also beispielsweise den Filter Host name (exact match) — und Benutzer müssen diesen dann zur Laufzeit (letztlich also beim Anschauen des Dashboards) selbst setzen. Sind Runtime filters in der Konfiguration gesetzt, wird das Dashboard mit geöffnetem Filter-Dialog gestartet — schließlich müssen Benutzer diese Filter mit Werten füllen.

Widget filters wiederum werden pro Widget in der jeweiligen Widget-Konfiguration gesetzt. Hier wird nicht nur auf Hosts und Services, sondern bei Bedarf auch zusätzlich auf Metriken (von Services) gefiltert.

Die beiden Dashboard-Filter erreichen Sie vom Dashboard aus über Settings > Filter settings, die Widget-Filter über das Zahnrad-Symbol an Widgets selbst.

Runtime filters stehen aber auch außerhalb der Konfiguration in der regulären Dashboard-Ansicht zur Verfügung — für normale Benutzer. Diese Filter erreichen Sie über den Knopf Symbol eines Filters. Filter direkt neben der Dashboard-Auswahl.

Wichtig ist nun auch das Zusammenspiel dieser Filter: Widget-Filter überschreiben Runtime-Filter überschreiben Default-Filter.

Folgendes Bild illustriert das gesamte Filterspektrum für Hosts (Punkte 3 bis 5):

Konkurrierende Dashboard-Filter.
Drei konkurrierende Host-Filter
Nr. Titel Funktion

1

Service-Filter

Dashboard-weiter Filter auf den Service Memory

2

Metrik-Filter

Widget-spezifischer Filter auf die Metrik RAM usage

3

Host-Filter - Default

Dashboard-weiter Filter auf den Host localhost, fix

4

Host-Filter - Runtime

Dashboard-weiter Filter auf den Host myhost, per Benutzereingabe

5

Host-Filter - Widget

Widget-spezifischer Filter auf den Host raspi_lan, fix — dies ist der aktuell wirksame Filter!

In diesem Dashboard ist also ein Widget vom Typ Metric vorgegeben, das immer die Metrik RAM usage des Services Memory anzeigt — standardmäßig per Default-Filter vom Host localhost, der hier aber überschrieben wird vom Runtime-Filter auf den Host myhost, der wiederum vom Widget-Filter auf den Host raspi_lan überschrieben wird.

Anders ausgedrückt: Beim Erstellen von Dashboards können Sie Dashboard-weite Vorgaben machen, die Benutzer wiederum überschreiben können (Runtime-Filter in der Ansicht) oder müssen (Runtime-Filter in der Konfiguration). Einzelne Widgets können Sie hingegen fix konfigurieren und Benutzern weitere Filter vorenthalten.

3.5. Sharing

Sie haben Stunden in ein mächtiges Dashboard investiert? Es wäre doch schade, dies für sich zu behalten. Daher können Sie Dashboards auch teilen, sowohl intern wie extern.

Sharing-Status im Dashboard
Statusanzeige und Zugriff auf Sharing-Einstellungen

Die zugehörige Konfiguration erreichen Sie im jeweiligen Dashboard über Share > Configure sharing.

Ein interner Link zum Dashboard ist unter Internal access standardmäßig vorhanden — und hat keinen Einfluss auf den Status, den Sie oben im Bild sehen (hier Sharing paused).

Sharing-Konfiguration für Dashboards
Der öffentliche Zugang kann zeitlich begrenzt werden

Der Status bezieht sich allein auf den öffentlichen Link unter Public access, schließlich können Dashboards durchaus kritische Informationen enthalten, die nicht unbedingt für die Öffentlichkeit gedacht sind.

Sobald Sie hier einen Link aktivieren, ändert sich der Status von Sharing disabled auf Sharing enabled. Ist der öffentliche Zugriff aktiv und Sie ändern das Dashboard, sehen Sie den Status Sharing paused. Um das Sharing fortzusetzen, müssen Sie das Dashboard erneut freigeben. Der Sharing-Link selbst ändert sich dabei nicht.

Die einzige Option beim Teilen: Sie können die Freigabe zeitlich begrenzen. In CRE Checkmk Community sind Freigaben auf maximal 30 Tage begrenzt, in den kommerziellen Editionen ist ein Auslaufdatum komplett optional.

Geteilte, öffentliche Dashboards haben aus Sicherheitsgründen ein paar Einschränkungen: Navigation und Menüs sind versteckt, es gibt keine Filtermöglichkeiten, Seitenleistenelemente sind nicht verfügbar. Und in Listenansichten stehen möglicherweise nicht alle Einträge zur Verfügung, weil diese standardmäßig begrenzt sind und die Schaltflächen für die Entgrenzung, abermals aus Sicherheitsgründen, fehlen.

4. Beispiel-Dashboard

Das Beispiel-Projekt führt Sie einmal durch die notwendigen Schritte, um ein Dashboard von Grund auf aufzusetzen. Dabei werden Sie grundsätzlich alle Möglichkeiten exemplarisch zu Gesicht bekommen. Um das Beispiel komplett nachzubauen, benötigen Sie eine der kommerziellen Editionen.

Das Beispiel zeigt vier Widgets, die unterschiedliche Daten(-arten) visualisieren:

Das Widget Graph zeigt die Nutzung eines Dateisystems eines Hosts, Gauge die durchschnittliche CPU-Auslastung der letzten Minute, die Alert timeline visualisiert Alarmierungen für eine Auswahl von Hosts und Services über einer Zeitleiste und die Ansicht Scheduled downtimes listet Wartungszeiten.

Und so wird das fertige Dashboard aussehen:

Das im Folgenden erstellte Beispiel-Dashboard.
Dashboard mit vier Widgets für CPU-Auslastung, Dateisystem, Alert-Statistik und geplante Wartungszeiten

4.1. Beispiel-Dashboard aufsetzen

Dashboard anlegen

Legen Sie zunächst ein Dashboard über Customize > Visualization > Dashboards > Add dashboard an.

Sie landen in einem Dialog mit drei separaten Bereichen.

Grundeinstellungen für neue Dashboards.
Grundeinstellungen für jedes neue Dashboard

Zunächst bestimmen Sie den Dashboard type. Dieser Typ legt fest, welche Daten dem Dashboard grundsätzlich zur Verfügung stehen. Standard ist hier Unrestricted — es gibt also keinerlei Beschränkungen und Sie oder Dashboard-Benutzer können später bei Bedarf auf einzelne Hosts oder Services filtern.

Der Typ Specific host beschränkt sämtliche Visualisierungen des Dashboards auf einen spezifischen Host. Welcher Host dies ist, legen Sie später fest, hier geht es schlicht um die Beschränkung auf die Datenquelle „einzelner Host“.

Beim Typ Custom dürfen Sie dann tatsächlich ganz genau festlegen, welche Datenquellen dem Dashboard zur Verfügung stehen. Das könnten zum Beispiel bestimmte Hosts, Services und sogar einzelne Objekte wie Docker-Images oder gar Lüfter sein.

Für das Beispiel belassen Sie es bei der Vorgabe Unrestricted. Filtern können Sie zudem auch später noch.

Weiter geht es mit dem Kasten General properties.

Verlangt werden hier lediglich ein Name und eine ID für das Dashboard, wobei die Unique ID auf Wunsch automatisch generiert wird.

Besondere Aufmerksamkeit verlangt jedoch die Option Dashboard layout: An dieser Stelle müssen Sie sich unwiderruflich für eine der beiden Layout-Varianten entscheiden, die Sie im Kapitel Layout kennengelernt haben.

Für unser Beispiel wählen Sie das traditionelle Anchored aus — einfach, weil es hier etwas mehr zu zeigen gibt.

Im Kasten Visibility bestimmen Sie, ob und in welcher Kategorie Ihr neues Dashboard in der Hauptnavigation angezeigt wird. Diese Einstellung können Sie aber auch später noch vornehmen. Zudem erscheint Ihr Dashboard standardmäßig im Dashboard-Drop-down-Menü in jedem Dashboard sowie in dem Dashboard-Seitenleistenelement.

Nach dieser kurzen Initialisierung landen Sie auf dem neuen, leeren Dashboard — wobei leer nicht ganz stimmt. So lange noch kein Widget existiert, bieten Kacheln Schnellzugriff auf die verfügbaren Widgets, die sich auch oben rechts über Add widget erreichen lassen.

Leeres Dashboard mit Schnellzugriffkacheln.
Ein neues, noch leeres Dashboard mit Kacheln als Platzhalter

Dashboard konfigurieren

Bevor das Dashboard nun gefüllt wird, werfen Sie einen Blick in die allgemeinen Dashboard-Einstellungen unter Settings > Dashboard settings. Neben den bereits bekannten Einstellungen aus dem Add dashboard-Dialog sehen Sie hier den Reiter Access, über den Sie genau festlegen können, wer überhaupt auf dieses Dashboard zugreifen darf — standardmäßig nur Sie selbst!

Berechtigungen zur Ansicht von Dashboards.
Wer sieht das Dashboard? Standardmäßig nur Sie selbst!

Ebenfalls Teil der Grundkonfiguration sollten Filter sein, zu finden über Settings > Filter settings (mehr dazu in einem eigenen Kapitel. Beim Erstellen des Dashboards wurde der Typ Unrestricted gewählt, es stehen Ihnen also alle Daten aus dem Monitoring zur Verfügung.

Für das Beispiel-Dashboard müssen Sie hier nicht zwangsläufig Filter setzen. Sofern Sie in einer Umgebung arbeiten, in der bereits Hunderte Hosts überwacht werden, kann es sich jedoch lohnen, eine Vorauswahl zu treffen, etwa rein auf Windows-Hosts oder Hosts an einem bestimmten Standort. Filter auf individuelle Hosts setzen Sie gleich direkt in den Widgets.

Filtereinstellungen auf Dashboard-Ebene.
Konkrete und benötigte Filter auf Dashboard-Ebene

Widget Graph hinzufügen

Das erste Widget soll nun die Belegung eines Dateisystems in Form eines Graphen anzeigen. Dazu konfigurieren Sie zunächst die gewünschten Daten, anschließend deren Visualisierung.

Starten Sie die Konfiguration auf dem leeren Dashboard über Add widget > Metrics & graphs.

Die Datenauswahl geschieht in drei Schritten: Host, Service, Metrik. Setzen Sie zunächst einen Host-Filter: Für das Beispiel genügt hier ein einziger, konkreter Host myhost unter Host selection > Single host > Widget filters.

Host-Filtereinstellungen auf Widget-Ebene.
Widget-Filter für einen einzelnen Host

Es folgt die Angabe des gewünschten Service, hier beispielsweise Filesystem C:/.

Service-Filtereinstellungen auf Widget-Ebene.
Widget-Filter für einen konkreten Service

Im dritten Schritt wählen Sie nun die gewünschte Metrik unter Metric selection > Metric (single) > Service metric (required), hier Used space %. Dieses Drop-down-Menü ist gefiltert gemäß Ihrer Auswahl von Host und Service, es stehen also nur passende Metriken zur Verfügung.

Achtung: Der Filter unter der Service-Metrik-Auswahl dient nur der Filterung des Drop-down-Menüs und ersetzt nicht die zuvor getätigte Auswahl von Host und Service — ohne Filter wäre es viele Hundert Einträge lang!

Metrik-Filtereinstellungen auf Widget-Ebene.
Widget-Filter für die finale Metrik

Weiter geht es nun mit einem Klick auf Next step: Visualization ganz oben in der Datenkonfiguration oder eine beliebige Visualisierung ganz unten.

Auf die Metrik Used space % würden mehrere Visualisierungstypen passen. Hier soll es der Graph sein, um die Belegung auch über die Zeit sehen zu können.

Auswahl und Vorschau der Visualisierung.
Visualisierung als Graph, samt Live-Vorschau

Unter der Vorschau finden Sie nun zunächst zwei Kästen mit Einstellungen, die Ihnen bei vielen Widgets begegnen: Data settings, hier zur Eingrenzung der Zeitachse, sowie Widget settings zur Konfiguration von Titel, Links und Aussehen. Setzen Sie eine Time range, die ein paar sinnvolle Daten aufzeigt.

Tipp: Häufig lohnt es sich, den Titel von Widgets um den Eintrag $HOSTNAME$ zu erweitern, damit klar ist, zu welchem Host das jeweilige Datum überhaupt gehört.

Widget-Einstellungen für Zeitachse und Darstellung.
Grundkonfiguration der Visualisierung

Letztlich folgt eine Graph-spezifische Konfiguration, die den allgemeinen Graphing-Funktionen entspricht und natürlich rein optional ist.

Graph-spezifische Einstellungen.
Feintuning für die Graph-Darstellung

Wenn Sie mit der Darstellung zufrieden sind, kann es über Add & place widget weitergehen.

Das neue Widget lässt sich nun platzieren und skalieren wie im Kapitel Layout beschrieben. Für das oben gezeigte Beispiel-Dashboard bieten sich hier Manual height und Auto width an: Sie bestimmen die gewünschte Höhe, der Algorithmus sorgt für die automatische Ausdehnung vom Anker (oben links) aus nach rechts bis zum nächsten Widget, beziehungsweise hier bis zum Dashboard-Rand.

Platzierung und Ausdehnung des Widgets.
Wichtig ist der grüne Anchor als Ausgangspunkt für Ausdehnung

Widget Gauge hinzufügen

Das Gauge-Widget steht nur in den kommerziellen Editionen zur Verfügung und visualisiert Werte wie die CPU-Auslastung in Anlehnung an einen Tachometer.

Die Konfiguration unterscheidet sich kaum von der des eben erzeugten Graphen, wieder filtern Sie auf myhost und jetzt auf den Service CPU load. Und wieder werden beide Werte automatisch in den Metric selection-Kasten übernommen. Als Metrik wählen Sie CPU load average of last 15 minutes.

Metrikauswahl für das Widget 'Gauge'.
Wieder werden nur Metriken angeboten, die zu Host und Service passen

Das Gauge-Widget bietet einige spannende Daten-Einstellungen. Die Beschränkung auf eine Zeitspanne haben Sie bereits kennengelernt. Für diese Art der Visualisierung bietet sich aber auch eine Beschränkung der Datenspanne an — bei prozentualen Angaben funktioniert die Vorgabe von 0 bis 100. Es sind aber Alternativen denkbar: Sie könnten hier auch den maximalen Wert eintragen, bevor der Service von OK auf CRIT wechselt, um größere Ausschläge im Normalbetrieb zu sehen. Für unser Beispiel kommen noch die Optionen Show colored status label und Show colored metric background hinzu, um für maximale Aufmerksamkeit zu sorgen

Darstellungsoptionen für das Widget 'Gauge'.
Das Gauge-Widget zeigt nicht nur die Metrik, sondern auch den Status des zugehörigen Service

Nach dem Speichern landen Sie wieder im Layout-Modus und können das Widget unterhalb des Dateisystem-Graphen platzieren (der zunächst vom neuen Widget überlagert wird!). Hier bieten sich manuelle Breite und Höhe an. Die gewünschte Größe bestimmen Sie durch Ziehen mit der Maus an den Widget-Rändern. An dieser Stelle könnten Sie nun auch das Graphen-Widget auf automatische Höhe setzen und die Höhe dann schlicht durch die Platzierung des neuen Gauge-Widgets bestimmen lassen.

Das Widget 'Gauge' im Layout-Modus des Dashboards.
Sobald das Gauge-Widget platziert ist, könnte das Graph-Widget auch auf automatische Höhe gesetzt und durch die Gauge-Platzierung indirekt skaliert werden

Widget Alert Timeline hinzufügen

Als drittes Widget folgt nun die Alert timeline — ebenfalls exklusiv in den kommerziellen Editionen zu finden — zur Darstellung der Alarmierungen auf einer Zeitachse.

In diesem Widget sollen nun Daten mehrerer Hosts und Services landen — daher auch oben der Verzicht auf eine Dashboard-weite Vorabfilterung. Bei diesem Widget bietet sich häufig der komplette Verzicht auf Filter an, um alle Hosts auszuwerten. Präziser wird es mit dem Host-Filter Host name (regex), den Sie zunächst aus der linken Filterliste hinzufügen. Hier dürfen Sie wie gewohnt mit regulären Ausdrücken arbeiten. Um etwa alle Alarmierungen aller Hosts zu bekommen, die mit my anfangen, setzen Sie den Filter für den Host-Namen auf ^my. Für unser Beispiel soll es ein wenig konkreter sein, daher beschränken wir hier auf Hostnamen, die myhost oder localhost beinhalten, in der Notation myhost|localhost.

Zur Erinnerung: Egal, welche Default- oder Runtime-Filter gesetzt sind, die Widget-Filter haben Vorrang.

Kontextfilter des Widgets 'Alert timeline'.
Reguläre Ausdrücke ermöglichen Graphen mit präzise gefilterten Metriken mehrerer Hosts

Für das Beispiel-Widget wird die gegebene Darstellung Barplot beibehalten.

Eigenschaften des Widgets 'Alert timeline'.
Für die Alert timeline bietet sich vor allem das Balkendiagramm an

Beim Zeitraum kommt es freilich auf die Größe Ihres Projekts an, für unser Beispiel sollen es The last 35 days sein. Neu ist hier die Time resolution, letztlich also die Skala für die X-Achse, hier ganze Tage.

Datenkonfiguration des Widgets 'Alert timeline'.
Alarmierungen pro Tag über einen Zeitraum von 35 Tagen als Balkendiagramm

Nach dem Speichern platzieren Sie das Widget wieder auf dem Dashboard. Hier bietet sich eine automatische Breite mit manueller Höhe an, um die Zeile mit dem Widget Gauge zu füllen.

Das Widget 'Alert timeline' im Layout-Modus des Dashboards.
In diesem Setup würde max width im Alert-Widget denselben Effekt haben

Widget per Ansicht hinzufügen

Auch bereits existierende Tabellenansichten können als Widget genutzt werden. Das funktioniert etwa über Add widget > Views > Link to existing view. Alternativ lassen sich hier auch Kopien von Ansichten nutzen oder komplett neue Ansichten erstellen. Für unser Beispiel soll es aber der eleganteste Weg sein: über die Ansichten selbst.

Um die Ansicht der Wartungszeiten einzufügen, rufen Sie diese zum Beispiel über Monitor > Overview > Scheduled downtimes auf. Anschließend fügen Sie die Ansicht Ihrem Dashboard über Export > Add to dashboard hinzu.

Das Menü 'Export' der Tabellenansicht 'Scheduled downtimes'.
Alle Tabellenansichten in Checkmk lassen sich in Dashboards exportieren

Wählen Sie Ihr Dashboard aus.

Auswahl des Dashboards für die Ansicht.
Dashboard-Auswahl nach Name/ID — wieder ein Anreiz, sprechende Namen zu verwenden

Platzieren Sie das Widget als letzte Zeile. Hier bieten sich nun automatische Höhe und Breite an, um leere Bereiche zu vermeiden.

Wenn Sie nun die Symbol für die Eigenschaften. Eigenschaften des Widgets aus dem Layout-Modus heraus aufrufen, stehen Ihnen die aus Ansichten bekannten Einstellungen zur Verfügung, um das Widget beispielsweise ein wenig schlanker zu gestalten. Ein Klick auf den Widget-Titel führt Sie schließlich sowieso zur vollständigen Ansicht der Wartungszeiten.

Damit wäre Ihr Beispiel-Dashboard fertig, hier nochmal komplett im Layout-Modus:

Das komplette Beispiel-Dashboard im Layout-Modus.
Die exportierte Ansicht Scheduled downtimes füllt den Rest des Dashboards

5. Eingebaute Dashboards und Widgets

5.1. Eingebaute Dashboards

Eine Liste aller individuell angelegten sowie eingebauten Dashboards finden Sie über Customize > Visualization > Dashboards. Für die manuell angelegten Dashboards können Sie über Symbol für das Bearbeiten. die Eigenschaften aufrufen und über Symbol des Layout-Modus für Dashboards. den Layout-Modus. Die werksseitig vorgegebenen Dashboards können Sie nicht direkt aus der Liste heraus bearbeiten, jedoch über Symbol für das Klonen. klonen und dann anpassen.

Tip

Nicht alle Dashboards sind in allen Editionen von Checkmk integriert. Die Cloud-Anbieter-spezifischen Dashboards finden Sie nur in Checkmk Ultimate. Checkmk Community beschränkt sich auf einige Basis-Dashboards.

Hier ein Auszug der eingebauten Dashboards:

Name/ID Monitor-Menüeintrag Inhalt

aws_ec2_overview

Cloud > AWS EC2 instances

Übersicht der EC2-Instanzen

azure_vm_overview

Cloud > Azure VM instances

Übersicht für Azure-VMs

checkmk

System > Checkmk dashboard

Checkmk-Server und -Instanzen

gcp_gce_overview

Cloud > GCP GCE instances

Übersicht für GCP-VMs

kubernetes_overview

Applications > Kubernetes

Übersicht der Cluster, Ressourcen, Nodes etc.

main

Overview > Main dashboard

Gesamtübersicht

ntop_alerts

Network statistics > Alerts

Alerts in ntopng

problems

Problems > Problems dashboard

Probleme und Statistiken aller Hosts und Services. Das Problems dashboard ist in Checkmk Community das Main dashboard.

simple_problems

Problems > Host & service problems

Probleme aller Hosts und Services

site

-

Übersicht einer Instanz

5.2. Widgets

Hier sehen Sie zunächst alle Widgets in der Übersicht. Anschließend zeigen wir Ihnen noch ein paar Besonderheiten, die im obigen Beispiel-Dashboard nicht mit abgehandelt wurden.

Kategorie Name Checkmk Community Funktion

Views

View

ja

Reguläre Ansichten als Widgets

Custom graph

Custom graph

nein

Manuell erstellte Freiformgraphen

HW/SW Inventory

HW/SW Inventory of host

nein

Daten aus dem Inventar

Events

Event statistics

ja

Gesamtstatistik Event-Zustand

Metrics & graphs

Single metric graph

nein

Graph für einzelne Metriken über Zeitachse

Performance graph

ja

Vorgegebene Performance-Graphen für einzelne Hosts/Services

Combined graph

nein

Graphen mit mehreren Metriken

Scatterplot

nein

Metriken diverser Hosts/Services als Streudiagramm

Barplot

nein

Balkendiagramm für einzelne Services

Gauge

nein

Einzelne Metrik als Tachometer

Single

nein

Einzelne Metrik als Zahl

Top list

nein

Rangliste einer einzelnen Metrik von mehreren Hosts/Services

Host & site overview

Host state

nein

Zustand eines einzelnen Hosts

Host state summary

nein

Zusammenfassung einzelner Zustände

Host statistics

ja

Gesamtstatistik Host-Zustand

Site overview

nein

Hosts/Sites als Zustand-Hexagons

Service overview

Service state

nein

Zustand eines einzelnen Services

Service state summary

nein

Zusammenfassung einzelner Zustände

Service statistics

ja

Gesamtstatistik Service-Zustand

Alerts & notifications

Alert overview

nein

Hosts als Alarmierungs-Hexagons

Alert timeline

nein

Alarmierungen über Zeitleiste

Notification timeline

nein

Benachrichtigungen über Zeitleiste

Percentage of service problems

nein

Prozentsatz Service-Probleme über Zeitleiste

Ntop (sofern vorhanden)

Alerts

nein

Alerts in ntopng

Flows

nein

Datenflüsse in ntopng

Top talkers

nein

Hosts in ntopng, die den meisten Netzwerkverkehr verursachen

Other elements

Embed URL

ja

Interne/externe URLs

Static text

ja

Statischer Text für Hinweise

Sidebar widget

ja

Beliebige Sidebar-Widgets

User messages

ja

Benutzerbenachrichtigungen

Wie genau Sie die Graphen in den Graphing-Widgets gestalten, ist etwas komplexer und wird im Graphing-Artikel ausführlich erläutert.

Eine besondere Rolle spielt das Widget Embed URL. Theoretisch können Sie über die simple Angabe einer Adresse externe Webseiten oder Ressourcen einbinden. In der Praxis scheitert das oft an Sicherheitsmaßnahmen der Betreiber und Browser. Freilich funktioniert das sehr wohl mit Checkmk-eigenen Ressourcen, beispielsweise anderen Dashboards. So ließen sich etwa mehrere Host-spezifische Dashboards zu einer großen Übersicht verknüpfen. Was Sie — mit ein wenig Experimentierfreude — ebenso einbinden können, sind interne Ressourcen des Checkmk-Servers; beispielsweise jegliche Art von Webanwendungen, sei es ein Wiki oder ein kleines Chat-Programm.

Das Widget Site overview hat zwei Funktionen: In den Erläuterungen zum Layout oben sehen Sie es als Übersicht der Hosts — Standard auf einer normalen, einzelnen Checkmk-Instanz. Im verteilten Monitoring zeigt dieses Widget hingegen eine Übersicht der zusammengeschlossenen Instanzen.

Ein wenig mehr, als Sie vielleicht vermuten würden, kann auch das Widget Static text: Es eignet sich für Hinweise und simple Beschriftungen, kann aber auch zum Verlinken sonstiger Dashboards oder anderer Checkmk-Bereiche verwendet werden, wie Sie auch im folgenden Beispiel für ein Top-Down-Dashboard sehen.

6. Dashboard-Beispiele

6.1. Top-Down-Dashboard

Sie kennen nun also alle verfügbaren Widgets und fertigen Dashboards, wissen, wo deren Konfigurationen und Layout-Optionen zu erreichen sind und wie man ein komplettes Dashboard zusammenbaut. Dashboards müssen aber nicht unbedingt ganz allein für sich stehen, sondern können auch aufeinander aufbauen — beispielsweise, um von einer großen Übersicht bis ins kleinste Detail zu navigieren.

Im Grunde funktionieren viele Widgets bereits genau so: Die Host statistics visualisieren die Host-Zustände, und ein Klick auf einen der Zustände leitet zu einer Ansicht weiter, die die zugehörigen Hosts auflistet. Von dort geht es wiederum weiter zu den einzelnen Services eines einzelnen Hosts.

Bei eigenen Dashboards können Sie auch Links auf andere Dashboards setzen, indem Sie die Titelzeile von Widgets via Widget settings > Interaction > Link title to in den Widget-Eigenschaften verlinken. Mal als konkretes Beispiel: Hier sehen Sie ein Dashboard, das Informationen zu CPU, RAM und Dateisystem mehrerer Hosts zeigt.

Beispiel-Dashboard aller Hosts, die mit 'my' beginnen.
Top-Down-Dashboards werden über Links umgesetzt, hier im Graph-Titel

Der Titel des CPU-Graphen verlinkt hier ein weiteres Dashboard, welches die CPU-Informationen für jeden Host einzeln visualisiert. In diesem Dashboard gibt es wiederum ganz oben einen Link zurück zur Übersicht, einfach realisiert über ein Widget Static text.

Link zur Rückkehr in das aufrufende Dashboard.
Der Rückweg zum Top-Down-Dashboard läuft über händisch gesetzte Textlinks

Mit solchen Querverlinkungen können Sie komplexe Recherchewerkzeuge über Dashboards realisieren. Dabei sind Sie übrigens nicht auf die Titelzeile beschränkt. Als statischen Text können Sie durchaus HTML-Code verwenden und so ganze Navigationen einbauen. Denken Sie etwa an verteiltes Monitoring und Pfade wie Gesamtübersicht > Instanzübersicht > Host-Übersicht > Container-Übersicht > Services > Probleme.

7. Fehlerbehebung

7.1. Fehlende Filter

Es kann vorkommen, dass Sie bei einem Widget lediglich folgende Meldung sehen:

Enter runtime filter to load data

In diesem Fall soll das Widget Informationen für nur einen Host und/oder Service anzeigen — für den aber kein Filter gesetzt wurde. Um das zu beheben, setzen Sie passende Runtime-Filter.

7.2. Leere Widgets

Für gänzlich leere Widgets bei ausbleibenden Fehlermeldungen kann es mehrere Gründe geben. In der Regel handelt es sich um eine Fehlkonfiguration des Widgets.

Beispiel: Sie erstellen ein Widget für die CPU-Auslastung mit der Metrik und dem gefilterten Service CPU load. Später ändern Sie den Filter der Service-Beschreibung auf etwa Check_MK Discovery, belassen die gewählte Metrik aber auf CPU load. Beim Anlegen eines Widgets kann Ihnen das nicht passieren, da nach dem Filter auf die CPU-Auslastung gar keine Auswahl einer unpassenden Metrik möglich ist — beim Umkonfigurieren von Widgets wird die ursprünglich gewählte Metrik jedoch beibehalten.

Die Lösung ist trivial: Passen Sie Service-Filter und gewählte Metrik in der Widget-Konfiguration an. Das gilt natürlich auch für alle anderen Widget-Varianten.


Letzte Änderung: Fri, 24 Apr 2026 12:31:21 GMT via Commit a0b039203
Auf dieser Seite