In einer modernen IT-Infrastruktur ist das Monitoring ein Bestandteil von zentraler Bedeutung. Doch in der Praxis werden mitunter sogar kritische Systeme nicht ausreichend oder gar nicht überwacht. Denn oft fehlt einfach die Zeit, ein Monitoring gezielt aufzusetzen. Hier will das Open Source Monitoring Tool openITCOCKPIT Abhilfe schaffen.
Daniel Ziegler von it-novum zeigt am Beispiel mit einem Raspberry Pi die Konfiguration und den Einsatz der Open-Source-Monitoringlösung openITCOCKPIT.
(Bild: it-novum GmbH)
Als Autor dieses Beitrags und Entwickler von openITCOCKPIT habe ich mich um einen starken Praxisbezug bemüht. Sie sind darum herzlich eingeladen, selbst mitzumachen und bei der Lektüre mit dem Monitoring-Tool zu interagieren. Sie können sich openITCOCKPIT dazu kostenlos herunterladen.
Kaum etwas ist so beständig wie der kontinuierliche Wandel von IT-Infrastruktur. Während vor fünf Jahren noch virtuelle Maschinen das Bild bestimmten, sind heute Anwendungen in Containern, in der Cloud bereitgestellt, in aller Munde. Monitoring-Systeme müssen diesen technologischen Wandel natürlich abbilden, dabei aber zugleich dem Wissensstand der Anwender Rechnung tragen. Monitoring ist in den meisten Unternehmen keine Aufgabe, die eine Vollzeitstelle rechtfertigen würde, sondern nur eine weitere Tätigkeit im Tagesgeschäft. Darum ist es wichtig, dass sich ein Monitoring-System von jedem Admin bedienen lässt – unabhängig davon, ob er oder sie sonst eher mit Windows oder Linux arbeitet.
openITCOCKPIT ist ein Tool, das antritt, diesen Spagat mithilfe seiner einzigartigen Weboberfläche zu leisten. Das Web Frontend gestattet die komplette Konfiguration und Verwaltung. Erfahrungen aus unterschiedlichen Teams lassen sich in Servicevorlagengruppen als Best Practice speichern. Zudem leistet ein Set an Vorlagen Hilfestellung bei der Ersteinrichtung des Monitorings. Ebenso zählen Wartbarkeit und Integrierbarkeit zu wichtigen Aspekten von openITCOCKPIT, auf die später noch genauer einzugehen sein wird.
Installation und Updates
Die Bereitstellung von openITCOCKPIT erfolgt ausschließlich über Debian-Pakete. Darum gestalten sich die Installation und – noch wichtiger – das Einspielen späterer Updates unproblematisch. Zudem bietet openITCOCKPIT von Version 4.2 an eine vollständige Unterstützung für ARM64-Systeme. Für die Beispiele in diesem Beitrag ist das openITCOCKPIT-System deshalb auf einem Raspberry Pi 4 mit 8 GB RAM und externer SSD (USB3) installiert. Diese Installation unterscheidet sich in keiner Hinsicht von einer Installation des Tools auf einer virtuellen Maschine oder einer Hardware.
Soll ein Raspberry Pi zum Einsatz kommen, ist es jedoch wichtig, die ARM64-Version des Raspberry Pi OS zu nutzen (nicht die 32-Bit-Version ARMhf!).
Um die Weboberfläche von openITCOCKPIT verwenden zu können, ist zunächst ein neuer Benutzer zu erstellen. Beim ersten Benutzer geschieht dies über die Konsole (Abbildung 1), während sich alle weiteren User im Anschluss einfach im Web Frontend verwalten lassen.
/opt/openitc/frontend/SETUP.sh
Ein Wizard begleitet den Benutzer durch die einzelnen Schritte der Grundeinrichtung. Dabei sind nur die Angaben für den Benutzer erforderlich. Details, wie etwa die Konfiguration eines E-Mail Servers, können dagegen bei den Standardwerten belassen werden.
Ist das Setup abgeschlossen, ist das Web Frontend von openITCOCKPIT via Browser aufrufbar.
Basis-Monitoring mithilfe des openITCOCKPIT Monitoring Agents
Wie bereits gesagt, gibt es bei vielen Systemen bisher nur eine rudimentäre Überwachung. Dies hat auch damit zu tun, dass jedes Betriebssystem für seine Überwachung unterschiedliche Wege und Agenten erfordert. Je nach Protokoll sind zunächst Firewall-Regeln zu erstellen oder Freigaben einzuholen. Auch ist jeder Agent, der zum Einsatz kommen soll, einzeln zu konfigurieren. Leider ist nicht immer klar ersichtlich, ob die übertragenen Daten dabei sicher verschlüsselt sind.
openITCOCKPIT umgeht diese Probleme, indem es einen eigenen Agenten bereitstellt. Dieser in Go geschriebene Agent ist derzeit in Version 3 verfügbar. Auf GitHub steht sein Quelltext zur Verfügung. Der Agent unterstützt das Monitoring von Windows-, Linux- und macOS-Systemen. Daten werden automatisch über HTTPS übertragen, sind also sicher verschlüsselt. Je nach Situation lässt sich die Richtung der Kommunikation dem Pull-Push-Prinzip gemäß auswählen.
Der openITCOCKPIT-Server und der openITCOCKPIT-Monitoring-Agent folgen demselben Prinzip: Installation und Einspielen von Updates sollen so wenig Mehraufwand verursachen wie möglich. Der Agent ist für Windows-Systeme als MSI-Datei verfügbar und lässt sich über die Softwareverteilung ausrollen. Für Linux gibt es ein RPM- und DEB-Repository, während für macOS das native PKG-Format zum Einsatz kommt.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Selbstverständlich wurde auch die Portierbarkeit bei der Entwicklung des Agenten berücksichtigt. Er ist darum für 32-Bit, 64-Bit, ARMhf, ARM64 und Apple Silicon (M1) verfügbar.
Einen ersten Host monitoren
Beginnen wir damit, zunächst eine Überwachung für den openITCOCKPIT-Server einzurichten. Zunächst ist dafür der openITCOCKPIT-Monitoring-Agent auf dem System zu installieren. Für Linux-Systeme gibt es je nach Distribution eigene Repositories.
curl https://packages.openitcockpit.io/repokey.txt | apt-key add -echo "deb https://packages.openitcockpit.io/openitcockpit-agent/deb/stable deb main" | sudo tee /etc/apt/sources.list.d/openitcockpit-agent.list
Wenn der betroffene Host im Pull-Modus abgefragt werden soll, benötigt es keine zusätzlichen Schritte auf dem Zielsystem. Über einen Wizard in der Oberfläche von openITCOCKPIT lässt sich jetzt ein neuer Host erstellen. Abhängig vom Betriebssystem gibt es diverse Auswahlmöglichkeiten für die Konfiguration (siehe Abbildung 2).
Der Wizard führt den Benutzer durch alle erforderlichen Schritte. Weil die Systeme dabei automatisch TSL-Zertifikate austauschen, wird die Kommunikation verschlüsselt. Von diesem Moment an sind Abfragen an den Agenten nur noch durch den openITCOCKPIT Server möglich.
Der letzte Schritt: Das System zeigt eine Liste mit allem, was es gefunden hat – Prozesse, Dienste, Sensoren, Festplatten, Netzwerkkarten, DockerContainer und noch vieles mehr (siehe Abbildung 3). Nun obliegt dem Nutzer die Entscheidung, was er alles ins Monitoring aufnehmen möchte. Der Beginners Guide von openITCOCKPIT beschreibt diesen gesamten Ablauf im Detail.
Zu jedem Check wird ein Status erfasst: Ok, Warnung, Kritsch oder Unbekannt. Ebenso werden zu jedem Check auch Metriken gespeichert. Diese Metriken können, als Graphen aufbereitet werden oder als Langzeitdatenquelle dienen und sie helfen dabei, regelmäßig auftretende Muster zu identifizieren. Der Klassiker ist hier beispielsweise das nächtliche Backup – im Netzwerk-IO Graph erzeugt es regelmäßig einen großen Ausschlag.
Apropos Metriken und Graphen: Zu jeder Installation von openITCOCKPIT gehört ein einsatzbereites Grafana.
Bei jedem System ist es sinnvoll, Basics wie CPU-, Arbeitsspeicher- und Festplattenauslastung zu überwachen. Ebenso sind natürlich die benötigten Dienste oder Prozesse zu monitoren. Die gute Nachricht für Administratoren: Mit openITCOCKPIT steht ein Werkzeug zur Verfügung, dass dies auf jedem System ermöglicht – einheitlich, sicher und unkompliziert.
Nicht zuletzt beim Applikationsmonitoring kommen gern spezialisierte Checks zum Einsatz, wie etwa „check_oracle_health“ oder „check_vmware_esx“.
Über Custom Checks lässt sich der openITCOCKPIT-Agent um beliebige Nagios-Plugins, Bash- oder PowerShell-Skripte erweitern. Im Wiki des Agenten gibt es eine detaillierte Anleitung dazu. Wir bleiben hier im Kontext von Raspberry Pi und schließen als Beispiel für einen Custom Check einen Temperatur- und Luftfeuchtigkeitssensor (DHT22) an.
Ausgewählt und erstellt werden die Custom Checks – wie alle nativen Checks – einfach über den Wizard im Web Frontend (siehe Abbildung 4).
Der neue Wizard macht Monitoring bequemer
Zu openITCOCKPIT gibt es Module, die den Funktionsumfang erweitern. Mit der Zahl der Module, die auf einem System installiert sind, wächst aber auch die Zahl der Kommandos und Servicevorlagen, mit denen es die Anwender zu tun haben. Gerade unerfahrenen Benutzern fällt es dann häufig schwer, den Überblick zu behalten. Der neue Wizard, der zum Zeitpunkt der Erstellung dieses Artikels noch im Beta-Test war, adressiert auch dieses Problem. Generell gilt, dass der Funktionsumfang des Wizards mit jeder neuen Version von openITCOCKPIT wächst.
Der MySQL-Wizard dient – der Name legt es nahe – der Überwachung eines MySQL-Servers. Dank eines vorkonfigurierten Sets an Checks lässt sich dies mit wenigen Klicks realisieren (siehe Abbildung 5). Dem Wizard genügt dazu ein MySQL-Benutzer mit dem entsprechenden Passwort. Eine kurze Hilfe erläutert, welche Einstellungen am MySQL Server zu setzen sind, sodass openITCOCKPIT das gewünschte System abfragen kann.
Um dies direkt auszuprobieren, lässt sich der openITCOCKPIT-Server selbst abfragen. Anpassungen an der MySQL-Konfiguration sind dafür nicht nötig. Die erforderlichen Zugangsdaten lassen sich der Datei
/opt/openitc/etc/mysql/mysql.cnf
entnehmen. Standardmäßig rollt der MySQL-Wizard 21 Checks aus, wobei sich das Subset an hinterlegten Vorlagen ganz nach Bedarf anpassen oder erweitern lässt (Abbildung 6).
Docker-Container und VMs monitoren
Wenn auf einem Zielsystem Docker installiert ist, lässt sich der Agent dazu einsetzen, laufende Container zu monitoren. Um zu überwachen, ob der Container läuft und wie viel CPU und Arbeitsspeicher er belegt, sind drei separate Prüfungen erforderlich (siehe Abbildung 7).
Ebenso lassen sich virtuelle Maschinen überwachen, die mit Libvirt (virt-manager, virsh) verwaltet sind. Eine Installation des Agenten innerhalb der virtuellen Maschine ist dafür allerdings gar nicht erforderlich. Stattdessen fragt openITCOCKPIT die Werte für CPU und Arbeitsspeicherlast direkt vom Hypervisor ab (siehe Abbildung 8). Mitunter ist dies besonders für Cloud- und Hosting-Anbieter ohne Zugriff auf die VMs ein Vorteil.
Soll die Libvirt-Unterstützung aktiviert werden, ist es erforderlich, den Agenten manuell zu kompilieren. Denn aktuell liegt noch keine Go-Bibliothek von Libvirt vor, was die Verwendung von CGo erforderlich macht. Auch wenn dies auf den ersten Blick kompliziert scheinen mag – der Ablauf, der auch im Wiki beschrieben ist, begnügt sich im Grunde mit der Ausführung weniger Befehle.
Weil die komplette Weboberfläche von openITCOCKPIT auf einer JSON-API aufbaut, ergibt sich der Vorteil, dass User alle Funktionen, die ihnen über die Oberfläche zur Verfügung stehen, auch über die API nutzen können. So lassen sich beispielsweise neue Hosts automatisiert in das Monitoring aufnehmen oder löschen. Außerdem ist eine eigene API verfügbar, die Checkergebnisse an das Monitoring-Backend übermittelt. Ein Beispiel für die Methoden GET und POST wird für jeden API-Endpunkt automatisch erstellt (siehe Abbildung 9). Auf diese Weise sind auch externe Systeme, IoT-Geräte oder Embedded-Systeme in der Lage, Ergebnisse unkompliziert an openITCOCKPIT zu übertragen.
Installation von Community Modulen
In der openITCOCKPIT-Oberfläche ist ein „Package Manager“ integriert, der Nutzern unterschiedliche Erweiterungen bietet. Funktionen wie etwa die Integration von Checkmk oder das Erstellen interaktiver Karten lassen sich so falls nötig leicht ergänzen. Eine Eventkorrelation dient dazu, verschiedene Services mit logischen Operatoren zu einem Business-Service zu verknüpfen (z.B. einem Mailserver). Über die Autoreports sind Dienstleister dann in der Lage, ihre Kunden beispielsweise direkt darüber zu informieren, dass es keine SLA-Verletzungen gegeben hat.
Alle hier erwähnten Erweiterungen von openITCOCKPIT sind kostenlos. Es existiert allerdings auch eine kostenpflichtige Enterprise Lizenz, die noch weitere Module liefert: etwa ein SAP-Monitoring oder eine Prometheus-Integration.
Daniel Ziegler.
(Bild: it-novum GmbH)
Die openITCOCKPIT-Community
Vielleicht sind Sie jetzt auf den Geschmack gekommen. Sollten Sie beim Ausprobieren von openITCOCKPIT auf Probleme stoßen, lohnt es sich, den Community Discord zu konsultieren. Dort sind neben den Entwicklern von openITCOCKPIT regelmäßig auch viele Mitglieder der openITCOCKPIT-Community anzutreffen. Sie alle können gegebenenfalls weiterhelfen.
Über den Autor
Daniel Ziegler ist Entwickler von openITCOCKPIT und Monitoring-Consultant bei it-novum.