Home > Fünf Checkmk-Plug-ins für das Linux-Server-Monitoring

Fünf Checkmk-Plug-ins für das Linux-Server-Monitoring

Heike Jurzik
By Heike Jurzik on Jul 01, 2020

Linux ist auf Servern sehr populär – schließlich gilt das Open-Source-Betriebssystem als besonders stabil und zuverlässig. Dennoch möchte man als Systemadministrator von einem oder mehreren Linux-Servern den Zustand und die Leistung der Maschinen überwachen – und wenn nötig Benachrichtigungen erhalten.

Checkmk unterstützt verschiedene Linux-Distributionen. Die Serverkomponente ist als Installationspaket (.dep und .rpm) als virtuelle Appliance oder als Docker-Container verfügbar. Die Linux-Version des Checkmk-Agenten ist ebenfalls einfach zu installieren, da es sich hierbei um ein einfaches Shell-Skript (/usr/bin/check_mk_agent) handelt. Es führt verschiedene Befehle aus, etwa df, mount, ps, etc., um so die benötigten Daten über das Dateisystem, die CPU oder Netzwerkgeräte etc. zu erhalten.

Es ist außerdem möglich, die Funktionalität des Agenten mit zusätzlichen Plug-ins zu erweitern. In diesem Artikel wollen wir fünf Checkmk-Plug-ins vorstellen, die äußerst nützlich für das Monitoring von Linux-Servern sind.

Plug-ins zu Ihren Diensten

Checkmk-Plug-ins sind kleine Skripe oder Programme, die der Agent abruft, um zusätzliche Daten über das überwachte Objekt abzurufen. Es gibt zwei Arten von Plug-ins:

  • Check-Plug-in
  • Agenten-Plug-in

Derzeit umfasst Checkmk über 1.700 Plug-ins, das heißt, sie befinden sich auf dem Server. Zusätzlich zu den Check-Plug-ins gibt es noch 100 weitere Agenten-Plug-ins. Diese müssen installiert werden, um das System überwachen zu können. Bei den in diesem Artikel genannten Plug-ins handelt es sich um Agenten-Plug-ins. Einige von ihnen benötigten eine Konfigurationsdatei (in/etc/check_mk), damit sie korrekt funktionieren. Andere arbeiten wiederum out of the box. Daher ist es nötig, dass Sie sich immer auch die Dokumentation sowie den Quellcode des jeweiligen Plug-ins anschauen, um die Konfigurationsoptionen herauszufinden.

Wenn Sie die Checkmk Raw Edition (CRE) verwenden, können Sie das Plug-in installieren, indem sie es in den Plug-in-Ordner des Linux-Agenten kopieren (/usr/lib/check_mk_agent/plugins). Bitte denken Sie daran, die Dateien ausführbar zu machen (chmod +x). Da einige Plug-ins eine lange Laufzeit haben und nicht jede Minute refreshed werden müssen, können Sie diese in Unterordnern ablegen, die nach der Sekundenanzahl benannt sind, um diese asynchron auszuführen.

Nutzer der Checkmk Enterprise Edition (CEE) können die Agenten Bakery für die Installation des Plug-ins und der automatischen Erstellung der Konfigurationsdatei(n) benutzen.

Kommen wir nun zu den Top Five unserer Plug-ins für das Monitoring von Linux-Servern mit Checkmk.


1. Package-Management

Ihr Linux-Distributor veröffentlicht regelmäßig Softwareupdates und -patches, um Bugs oder Sicherheitsschwachstellen zu beheben. Es ist wichtig, diese Updates zu installieren, um das Betriebssystem möglichst sicher zu halten. Statt jeden Server manuell nach Updates zu überprüfen, können Sie auch Checkmk nutzen, um das Package-Management-System Ihrer Linux-Distribution zu überwachen.

Wenn Sie Debian-basierte Server verwenden, können sie das Plug-in mk-apt verwenden, um den APT Package Manager zu überwachen. Das Plug-in mk_zypper überprüft Updates für zypper auf „SUSE Linux Enterprise Server“- und openSUSE-Systemen. Und wenn Sie ein Yum-Anwender auf Red-Hat-basierten Systemen sind, können Sie dieses Plug-in verwenden.

 apt-updates

Alle drei Plug-ins zeigen den Status WARN bei einem normalen Update und den Status CRIT bei einem Sicherheitsupdate an.

Tipp: Es ist eine gute Idee, die Plug-ins mit einer asynchronen Ausführung zu installieren, da es nicht nötig ist, mehr als einmal am Tag nach einem Update zu suchen.

2. Inventory

Die HW/SW-Inventur von Checkmk sammelt alle Informationen zur Hardware und zur installierten Software auf Ihren Hosts. Das Plug-in mk_inventory liefert nicht nur Informationen über die existierende Hardware und Software auf Ihrem Linux-Server(n), etwa wie viel RAM/Swap hat die Maschine? Wie viele CPUs und Cores gibt es? Welche meiner Server haben ein spezielles Paket installiert? Es kann auch nach Änderungen feststellen.

Dazu müssen Sie einfach nur mk_inventory.linux auf Ihren Linux-Plattformen installieren und den Inventory-Check mit einer neuen Regel in der WATO festlegen. Für jeden ausgewählten Host sehen Sie einen neuen Check namens Checkmk HW/SW Inventory. Die Ergebnisse können Sie via Show Hardware/Software inventory for this host einsehen: Sie haben die Möglichkeit, sich durch die Baumstruktur zu klicken, das Inventory zu einer individuellen Ansicht hinzuzufügen oder es in einem anderen Format zu exportieren. Ferner können Sie Schwellenwerte für den Check festlegen, sodass Checkmk sie benachrichtigt, wenn es eine Änderung feststellt.

inventory-tree

 

3. Dateisystem-Aktivitäten

Manchmal ist es außerdem gut, bestimme Dateiaktivitäten auf Ihrem Linux-Server zu überwachen. So bekommen Sie eine Benachrichtigung, wenn jemand oder etwas eine Datei erstellt, modifiziert, darauf zugreift oder löscht. Das Plug-in mk_inotify überwacht bestimmte Dateien oder Ordner für Sie.

Die Pfade und Operations konfigurieren Sie unter /etc/check_mk/mk_inotify.cfg – wir liefern aber mit ~/share/check_mk/agents/cfg_examples/mk_inotify.cfg eine Beispiel-Konfigurationsdatei, die Sie einfach nach Ihren Anforderungen anpassen können.

4. Anzahl der eingeloggten Nutzer

Wenn Sie die Anzahl der eingeloggten Nutzer überwachen wollen, installieren Sie das Plug-in mk_logins. Es kombiniert die beiden Befehle „who“ und „wc -l”, um Informationen zu den angemeldeten Anwendern zu erhalten.

In der Standardkonfiguration gibt das Plug-in eine Warnung, wenn die Anzahl 20 übersteigt. Ein kritischer Status ist ab 30 eingeloggten Nutzern erreicht. Sie haben jedoch auch die Möglichkeit, die Regel anzupassen und die Schwellenwerte nach Ihren Bedürfnissen zu definieren. Sie können beispielsweise den Schwellenwert für einen Server, auf dem sich normalerweise niemand einloggt, auf 1 setzen. Es ist außerdem möglich, Zeiträume und verschiedene WARN/CRIT-Schwellenwerte festzulegen.

Tipp: Auf einem meiner Server habe ich das Plug-in so modifiziert, dass es meine eigene IP-Adresse der Dial-up-Verbindung ausschließt. Hierfür habe ich ein einfaches grep-Kommando hinzugefügt:

#!/bin/bash
[...]
if type who >/dev/null; then
    echo "<<<logins>>>"
    who | grep -v 203.0.113.0 | wc -l
fi

5. SSH Daemon

Eventuell haben Sie ja einen Root-Login deaktiviert, den standardmäßigen SSH-Port von 22 auf einen anderen geändert oder die Public/Private-Keys-Authentifizierung für Ihren SSH-Server aktiviert. Wenn das der Fall ist und Sie außerdem Ihre /etc/ssh/sshd_config überwachen wollen, sollten sie das Plug-in mk_sshd_config installieren. Es behält sicherheitsrelevante Parameter ihrer SSH-Daemon-Konfiguration im Auge und alarmiert Sie, wenn eine oder mehrere Optionen geändert wurden. Sie können die meisten Parameter über eine Regel in der WATO ändern.

sshd-monitoring

Wenn Ihr SSH-Daemon-Server statt /etc/ssh/sshd_config eine andere Konfigurationsdatei verwendet, können Sie das Plug-in in Ihrem bevorzugtem Text-Editor modifizieren und die Variable SSHD_CONFIG ändern.

Wanted: IT Monitoring Superheroes

Do you have an interesting story about working with Checkmk?

We'd like to hear from you!

Learn more
checkmk superhero

By posting a comment to this blog article or by subscribing to our blog notification system, you agree to our Privacy and Cookie Policy and consent that tribe29 GmbH can process your data and may contact you, if needed, in regards to the above mentioned purposes.

We want to give you a good experience on this website.

In light of the General Data Protection Regulation, we are asking our audience to consent to the use of cookies by Checkmk and its partners to continue to our site.These cookies are used to personalize your user experience and support and improve the site. Please click “I Agree” below to consent to the use of this technology on the Checkmk website. Visit our Privacy Policy to learn more.

Your choices regarding cookies on this site.
Your preferences have been updated.
In order for the changes to take effect completely please clear your browser cookies and cache. Then reload the page.