Aus Linux-Magazin 05/2014

Das Icinga-Frontend Tkmon

© nena2112, photocase.com

Tkmon soll das Einrichten von Icinga maßgeblich simplifizieren. Doch hält das quelloffene Werkzeug der Thomas Krenn AG, was der Hersteller verspricht?

Icinga ist und bleibt für viele Admins ein Buch mit sieben Siegeln. Wer die Software zum ersten Mal nutzt, den überfordert die Masse an Optionen: Wie lässt sich die Konfiguration eines Hosts einrichten? Wie definiert ein Admin sinnvoll Alarmgruppen? Wie richtet er Checks für einzelne Hosts ein? Einsteiger werfen beim Anblick der ausgewachsenen »nagios.cfg« und ihrer vielen Include-Dateien schnell das Handtuch.

Und die zu Icinga gehörenden Dienste sind nur die Spitze des Eisbergs: Was passiert, wenn der Admin MRTG-Graphen über die Performancewerte aufzeichnen möchte, die viele Icinga- und Nagios-Checks ab Werk mitliefern? Die benötigte Software für Nagios (»nagios-ndoutils« ) und Icinga (»icinga-idoutils« ) bringt nur kryptische Konfigurationsdateien mit.

Hilfe!

Das Nürnberger Unternehmen Netways, das Icinga federführend betreut, bemüht sich seit den Anfängen um eine bessere Benutzbarkeit des Nagios-Forks. Viele Patches, die Nagios-Chef Galsted für den Nagios-Zweig ablehnte, landeten in Icinga und veränderten das Aussehen des Webinterface. Später kam eine völlig neu konzipierte Oberfläche, die viele der nervigen Einschränkungen des Nagios-UI vergessen ließ. Doch die Masse der Stellschrauben, die ein Nagios-Setup ausmachen, ließ auch Netways nicht in ihrem Gewinde lockern.

Hardwarehändler Thomas Krenn sah sich vor diesem Hintergrund regelmäßig mit Kunden konfrontiert, die entweder nach fertigen Monitoring-Lösungen fragten oder am Setup derselben scheiterten. Als Anbieter von Serversystemen hat Krenn ein gehobenes Interesse daran, schnell von Hardwareproblemen der Kunden zu erfahren. So kann etwa aus dem mit einem Kunden vereinbarten Service-Level-Agreement (SLA) hervorgehen, dass der Hoster eine vom Monitoring für tot erklärte Festplatte am nächsten Tag vor Ort austauschen muss, ohne dass der Kunde einen Finger rührt.

Allein, den Kunden fehlte ein einfach einzurichtendes und trotzdem flexibles Monitoring-System. Aufgrund einer langen Partnerschaft mit Netways entwickelte die AG schließlich mit Tkmon ein Frontend für Icinga, um das Monitoring-System einfach zu konfigurieren und zu verwenden. Tkmon ist also ein Ersatz für das Icinga-Webinterface, das Konfigurationsdateien für Icinga einrichtet, und steht unter der GPLv3.

Unter Sysadmins kursiert allerdings eine alte Weisheit: Grafische Frontends müssen abstrahieren. Sie können nicht alle Funktionen eines Programms über die grafische Oberfläche abbilden. Da aber Funktionalität und Komplexität Hand in Hand gehen, beschneidet der Entwickler mit seiner Oberfläche die Funktionalität eines Programms. Taugt also Tkmon als Allzweck-Monitoring oder muss doch ein echtes Icinga ran, wenn es um komplexere Setups geht?

Installationshürden

Wer Tkmon ausprobieren möchte, stolpert zunächst über eine Eigenheit: Für Ubuntu 12.04 steht ein fertiges Paket im ».deb« -Format bereit, das der Admin über die Debian-typischen Paketwerkzeuge (»apt-get« oder »aptitude« ) installiert. Die Installation holt automatisch auch die abhängigen Icinga-Pakete auf das System, wobei diese freilich jenen entsprechen, die Ubuntu 12.04 anbietet und die bereits etwas angestaubt sind. Vorsicht ist daher geboten, wenn Admins auf ihrem Ubuntu-12.04-System über das Personal Package Archive (PPA) von Ubuntus Icinga-Maintainern neuere Versionen der Monitoring-Software installieren, denn ob diese mit Tkmon zusammenspielen, hat der Test nicht untersucht.

Die Icinga- und Tkmon-Konfiguration auf Ubuntu-Systemen klappt wie gewohnt: Die Installationsskripte fordern den Admin auf, ein Administratorkennwort sowohl für Tkmon als auch für Icinga festzulegen – alles andere erledigen die Skripte des Tkmon-Pakets autark im Hintergrund. Auf Ubuntu 12.04 geht die Tkmon-Installation insgesamt angenehm zügig und unkompliziert von der Hand – nach wenigen Minuten steht ein nutzbares Icinga bereit. Ohne Tkmon dauert der Prozess deutlich länger.

Wehe aber dem, der nicht Ubuntu 12.04 verwendet: Thomas Krenn ist für seine Affinität für Debian- und Debian-basierte Distributionen bekannt. Wer Centos, Red Hat Enterprise Linux oder Suse Linux Enterprise Server einsetzt, muss den Tkmon-Quelltext von der DELUG-DVD selbst übersetzen. Das ist alles andere als Enterprise-freundlich und verdient einen ordentlichen Rüffel.

Inbetriebnahme

Läuft Tkmon zusammen mit Icinga, steht dem Admin ein wenig Arbeit ins Haus, um das Monitoring-Gespann mit dem eigenen IT-Setup zu verheiraten. Bei Icinga bedeutet das traditionell, Host- und Service-Checks zu definieren sowie für eventuelle Alarmmeldungen Kontakte einzurichten. Tkmon bietet für all diese grundlegenden Einstellungen eigene Konfigurationsdialoge an, die in klar verständlicher Sprache darlegen, worum es jeweils geht.

Der Admin ergänzt Kontakte, indem er die entsprechenden Daten in eine Webmaske tippt. Hosts fügt er auf analoge Weise hinzu. Servicechecks pro Host kann der Admin dabei so einfach und einleuchtend definieren, dass die Frage erlaubt sein muss, warum Icinga nicht selbst ähnliche Prozeduren in seinem Webinterface anbietet. Wer Tkmon auf Ubuntu 12.04 betreibt, erhält so tatsächlich in kurzer Zeit ein funktionierendes und ordentlich aufgeräumtes Monitoring samt Webinterface.

Als Sahnehäubchen erwarten den Administrator auch keine Einschränkungen, wenn er Tkmon zum ersten Mal einrichtet: Die Tkmon-Konfiguration in »/etc/icinga« entspricht weitestgehend dem, was ein Admin in der Regel händisch umsetzen würde.

Der Ernstfall

Wie schaut es aber mit dem Monitoring für das Test-Setup aus, das sowohl aus einer virtuellen Maschine als auch einer Maschine aus echtem Blech besteht? Wie weiter oben beschrieben kann der Admin sehr leicht beide Maschinen als Hosts in das Monitoring integrieren. Die Tkmon-Konfiguration erteilt Icinga anschließend den Auftrag, den Host regelmäßig via »ping« zu kontaktieren und so festzustellen, ob dieser erreichbar ist.

Erfahrene Sysadmins wissen allerdings, dass dies häufig nicht mal die halbe Miete ist – denn auch ein System, dem sein Kernel um die Ohren geflogen ist, antwortet im schlimmsten Fall noch immer brav auf ICMP-Requests.

Ob die Services tatsächlich laufen, erfährt das Monitoring über zusätzliche Checks. Die liegen Tkmon zwar bei, sind aber fest in die Software integriert. Legt der Admin händisch eigene Checkskripte im Icinga-Check-Folder ab, ignoriert Tkmon diese konsequent. Per Webinterface lassen sich nur die Checks einrichten, die es offiziell unterstützt, eine vollständige Liste findet sich unter [1]. Das schränkt die eigentlich sehr große Flexibilität von Icinga ein, falls Tkmon als primäres Frontend zum Einsatz kommt.

Der Test machte aber auch deutlich, dass Tkmon die offiziellen Checks souverän meistert. Einige davon kontrollieren die von außen zum Host aufgebauten Verbindungen, etwa HTTP- und Mailserver-Checks. Andere nutzen den Nagios Remote Plugin Executor (NRPE), um auf den zu prüfenden Hosts Befehle abzuarbeiten. Ob die Test-VM läuft und ordentlich funktioniert, lässt sich so auf unterschiedlichen Wegen messen.

Weil Thomas Krenn Hardware verkauft, liegt freilich ein besonderes Augenmerk auf Hardwaretests: Beschwert sich die Serverplatte per Smart über ihr baldiges Ableben oder verliert der Raid-Controller von Adaptec oder LSI ein Array, stellt Tkmon das zielsicher fest. Spezielle Checks für MySQL, PostgreSQL und ein ganzes Füllhorn anderer Dienste erlauben auch spezifisches Monitoring. Verwendet der genutzte Server IPMI – was bei modernen Systemen oft der Fall ist – kann sich Tkmon auch darüber mit dem Server verbinden und so Hardwarewerte auslesen (Abbildung 1), etwa die im Server gemessenen Temperaturen.

Abbildung 1: Mittels IPMI und über Icinga liest Tkmon die Hardwareparameter eines Hosts aus.

Abbildung 1: Mittels IPMI und über Icinga liest Tkmon die Hardwareparameter eines Hosts aus.

Pflicht und Kür

Allerdings bewahrheitet sich bei Tkmon auch, dass weniger Komplexität eben mit weniger Flexibilität einhergeht. Läuft eine VM auf einem von Pacemaker kontrollierten HA-Cluster und ist womöglich noch DRBD im Spiel, möchte der Admin gewöhnlich auch diese Parameter überprüfen. Icinga überwacht sowohl Pacemaker als auch DRBD über eines von mehreren Plugins für die Checks, die im Netz herumfliegen. Tkmon fehlt die Möglichkeit, solche Checks zu integrieren. Soll es also mehr als einige Standardwerte messen, kommt Tkmon ins Straucheln. Für komplexe Aufgaben eignet sich das Werkzeug insofern weniger.

Nach Hause telefonieren

Dass Thomas Krenn mit Tkmon einen Hintergedanken verfolgt, liegt nahe: Der Hardwarehersteller möchte, dass ihn die Systeme über defekte Komponenten informieren. In Zeiten von NSA & Co. weckt der Name “Call Home” zwar merkwürdige Assoziationen, doch die Firma erklärt in ihrem Wiki detailliert [2], welche Informationen der Dienst an sie sendet.

Und der funktioniert sehr einfach: Wer einen Service-Vertrag mit entsprechendem Level bei Thomas Krenn hat, trägt in Tkmon seine Credentials für diesen ein. Das Webinterface prüft direkt, ob die eingegebenen Daten korrekt sind. Ist das der Fall, erhält Thomas Krenn automatisch E-Mail-Benachrichtigungen, sobald ein Hardwarecheck kaputte Hardware meldet. Der Kunde braucht sich in solch einem Konstrukt kaum um defekte Hardware zu kümmern.

Fazit

Thomas Krenn und Netways zielen mit Tkmon auf ein klar umrissenes Setup ab: Wer sein Monitoring-System auf Grundlage von Ubuntu betreibt, erhält mit Tkmon ein durchdachtes und leicht zu bedienendes Werkzeug (Abbildung 2). In der kurzen Zeit, in der dank Tkmon eine komplette Icinga-Installation steht, wäre die händische Konfiguration des Dienstes nicht machbar. Meist genügt die gebotene Funktionalität auch völlig, denn Tkmon beherrscht alle Standardchecks und setzt sie adäquat um. Holprig wird es, wenn der Admin nach Werten jenseits der Standards fahndet, denn dafür reicht die Flexibilität von Tkmon nicht.

Abbildung 2: Das Tkmon-Dashboard erinnert in Ansätzen an Icinga, kommt jedoch deutlich weniger komplex daher. Das muss kein Nachteil sein, weil viele Setups kein extravagantes Monitoring brauchen.

Abbildung 2: Das Tkmon-Dashboard erinnert in Ansätzen an Icinga, kommt jedoch deutlich weniger komplex daher. Das muss kein Nachteil sein, weil viele Setups kein extravagantes Monitoring brauchen.

Soll sie aber offensichtlich auch gar nicht: Die “Call Home”-Funktion legt die Vermutung nahe, dass sich Tkmon vorrangig an Kunden richtet, die zwar ein Basis-Monitoring benötigen, sich aber nicht explizit mit dem Thema auseinandersetzen möchten oder können. Wer hochkomplexe Monitoring-Setups braucht, ist bei Tkmon darum an der falschen Adresse. Für ein Standard-Monitoring erweist sich das Programm jedoch als eine Durchblick fördernde Alternative.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 3 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben