Plugins in Java für Icinga und Nagios?

Grundsätzlich ist das mit Java und Admins ja so eine Sache, was auch die Vielzahl von Plugins in Perl oder gar als Shell-Skript erklärt. Nun kommt es aber in größeren Enterprise-Umgebungen vor, dass Software in Java entwicklet wird und dann auch noch überwacht werden soll. Warum bei solchen Projekten dann nicht auch gleich eine Schnittstelle zum Monitoring programmieren?
Oder vielleicht gibt es eine solche API schon für das eingesetzte Produkt, wie z.B. bei einem Kunden, bei dem ich kürzlich eine Migration von Nagios nach Icinga durchführte. Die dort eingesetzte Software stellt Java-Klassen zur Überwachung zur Verfügung, die bedingt durch Verträge nicht auf dem jeweiligen Application-Server ausgeführt werden darf, sondern auf dem Monitoring-System selbst.
Damit nicht für jedes Plugin, das gestartet wird, immer wieder eine neue Java-VM gestartet werden muss, hat man sich für den Einsatz von JNRPE entschieden. JNRPE ist eine Java basierte Implementation des NRPE-Servers, der mittels check_nrpe abgefragt wird. Seit Version 2 ist die API in eine Library ausgelagert, die auch bei eigenen Java-Projekten unter Beachtung der Apache Software License 2.0 verwendet werden darf.

Lennart Betz
Lennart Betz
Senior Consultant

Der diplomierte Mathematiker arbeitet bei NETWAYS im Bereich Consulting und bereichert seine Kunden mit seinem Wissen zu Icinga, Nagios und anderen Open Source Administrationstools. Im Büro erleuchtet Lennart seine Kollegen mit fundierten geschichtlichen Vorträgen die seinesgleichen suchen.