Zabbix 1.8.1 und das Web-Frontend

Workshop - Clients und Server mit Zabbix überwachen

03.05.2010 von Jürgen Donauer
Auch ein noch so gutes Überwachungswerkzeug ist nur die Hälfte wert, wenn man es nicht auf einfache Weise verwalten und einsehen kann. Mit Zabbix ist dies kein Problem: Das kostenlose Monitoring-Tool können Sie bequem via Web-Frontend bedienen und administrieren.

Im Beitrag Komplette Server- und Client-Überwachung mit Zabbix 1.8.1 haben wir uns ausführlich mit Installation, Konfiguration und grundsätzlicher Arbeitsweise des kostenlosen Tools beschäftigt. Jetzt gehen wir in medias res und widmen uns der Bedienung über Web-Frontend.

Bildergalerie:
Das Web-Frontend von Zabbix
Zabbix unterstützt mehrere Sprachen. Dazu gehört auch Deutsch.
Das Web-Frontend von Zabbix
Die Administrationsmaske der Benutzer ist komplex, dennoch übersichtlich.
Das Web-Frontend von Zabbix
Mehr als 40 Templates stehen dem Administrator beim Hinzufügen eines Rechners zur Verfügung.
Das Web-Frontend von Zabbix
Wen und was soll Zabbix unter seine Fittiche nehmen.
Das Web-Frontend von Zabbix
Mit Zabbix können Sie auch Microsoft Windows 7 überwachen.
Das Web-Frontend von Zabbix
Sollte Zabbix wegen geänderten Checksummen Alarm schlagen, möchte der wache Administrator das sicher genauer untersuchen.
Das Web-Frontend von Zabbix
So überwachen Sie auf einfache Weise, ob der Datei-Server läuft.
Das Web-Frontend von Zabbix
So richten Sie einen Auslöser für ein bestimmtes Ereignis ein.
Das Web-Frontend von Zabbix
Wird „Samba down“ ausgelöst, erhält der Systemverwalter eine E-Mail. Im Falle einer Genesung wird ebenfalls eine Nachricht verschickt.
Das Web-Frontend von Zabbix
Mit Plänen lassen sich Probleme visualisieren.
Das Web-Frontend von Zabbix
Die Export-Funktion ist ganz brauchbar für ein Backup der manuellen Konfigurationen.
Das Web-Frontend von Zabbix
Die Export-Funktion ist ganz brauchbar für ein Backup der manuellen Konfigurationen.
Das Web-Frontend von Zabbix
Für eine Weiterverarbeitung will Zabbix ein eindeutiges Ergebnis haben.
Das Web-Frontend von Zabbix
Die Datei zabbix_agentd.conf hält einige Beispiel vor, an denen Sie sich orientieren können.
Das Web-Frontend von Zabbix
So integrieren Sie zum Beispiel den Schlüssel internet.alive in Ihre Elemente.
Das Web-Frontend von Zabbix
Mit den Web-Tools können Sie bestimmte Dienste auf Verfügbarkeit überwachen.
Das Web-Frontend von Zabbix
Die Zabbix-Macher haben Großes mit der neuen API vor.

Rufen Sie das Frontend im Browser mit http://<zabbix-server>/zabbix/auf und loggen Sie sich als Benutzer Admin ein. Sollten Sie das Passwort noch nicht geändert haben, lautet es für das erste Anmelden zabbix. Dies sollten Sie selbstverständlich unverzüglich ändern. In der Administrationsmaske können Sie auch gleich die Sprache auf Deutsch umstellen, falls gewünscht. Für jeden Anwender lässt sich die Sprache übrigens individuell anpassen.

Mehrsprachig: Zabbix unterstützt mehrere Sprachen. Dazu gehört auch Deutsch.

Die Schaltflächen Überwachung, Inventarisierung, Reports und Anmeldung sind für jedermann erreichbar. Allerdings nicht mit allen Möglichkeiten, die sich unter diesen Links verbergen. Sobald Sie sich mit einem bestimmten Benutzer angemeldet haben, erweitern sich dessen Möglichkeiten der Administration und Konfiguration.

Umfangreich: Die Administrationsmaske der Benutzer ist komplex und dennoch übersichtlich.

Die Benutzerverwaltung liegt hinter Administration verborgen. Hier können Sie nun nach Lust und Laune neue Anwender hinzufügen. Zabbix unterscheidet drei Arten von Anwendern: Zabbix Benutzer, Zabbix Admin und Zabbix Super Admin. Je nach User-Typ haben die Anwender verschiedene Rechte. Außerdem können Sie hinterlegen, auf welche Weise der Anwender von eventuellen Ereignissen erfahren soll. Des Weiteren können Sie einstellen, welche Gewichtungen von Nachrichten der Anwender erhalten soll. Dies kann via E-Mail, SMS und/oder Jabber geschehen.

Administration und Konfiguration

Unter Administration – Allgemein können Sie zunächst festlegen, wie lange das Monitoring-Tool Informationen in der Datenbank speichern soll. Standardmäßig liegen die Werte hier bei einem Jahr.

Arbeitserleichterung: Mehr als 40 Templates stehen dem Administrator beim Hinzufügen eines Rechners zur Verfügung.

Des Weiteren ist der Karteireiter Konfiguration – Systemgruppen einen Blick wert. Hier haben die Entwickler bereits mehr als 40 sinnvolle Templates hinterlegt. Diese sind hilfreich und können bei der Einrichtung von zu überwachenden Systemen viel Zeit sparen. Ebenso haben die Programmierer eine Import-/Export-Funktion eingebaut.

Hinzufügen von Clients

Unter Systeme können Sie nun mit dem Hinzufügen von zu überwachenden Systemen beginnen. Sinn ergibt es, wenn darauf bereit ein Zabbix-Agent läuft. Sie können die Clients entweder mit dem DNS-Namen oder der IP-Adresse ansprechen.

Neuzugang: Wen und was soll Zabbix unter seine Fittiche nehmen?

Ebenso könnten Sie den Port ändern, falls Sie auf dem Client umgestellt haben. Um Zeit zu sparen, haben Sie die Möglichkeit, den Client mit einer Vorlage zu verlinken. Meist ist in den Vorlagen wesentlich mehr enthalten, als Sie brauchen. Aber mit einem einfachen Klick können Sie die unbenutzten Anfragen deaktivieren.

Informativ: Mit Zabbix können Sie auch Microsoft Windows 7 überwachen.

Es ist durchaus auch sinnvoll, die Rechner bestimmten Gruppen zuzuordnen. Gerade in größeren Umgebungen behält der Administrator so leichter den Überblick. Es kann ebenfalls nicht schaden, weitere Systemdetails anzugeben. Zum Beispiel können Sie hier das Betriebssystem, laufende Software und die MAC-Adresse hinterlegen.

Zu überwachende Elemente konfigurieren

Wenn Sie die Templates verwenden, können Sie für die Überwachung von Standardservern Elemente wahrscheinlich eher deaktivieren. Das Linux-Template enthält zum Beispiel die Überwachung der Verzeichnisse /, /home, /opt, /tmp, /usr und /var. Um diese Verzeichnisse im Auge zu behalten, müssen Sie nicht mal weiter Hand anlegen.

Änderungen nicht erwünscht: Sollte Zabbix wegen geänderter Checksummen Alarm schlagen, möchte der wache Administrator das sicher genauer untersuchen.

Oft liegen einige dieser Verzeichnisse nicht auf eigenen Partitionen. Somit könnten Sie eine Überwachung gegebenenfalls abstellen. Ebenfalls wwrden beispielsweise Prozessorlast, laufender SMTP-Server, freier Speicher und Swap, FTP-Server, Apache, Netzwerkverkehr überwacht. Die Checksummen der Dateien /etc/passwd, /etc/services, /usr/bin/ssh und /usr/bin/sshd überprüft das Monitoring-Werkzeug ebenfalls standardmäßig. Sollte sich in diesen Dateien etwas verändern, können Sie Zabbix Alarm schlagen lassen.

Überwache Samba mit mir: So überwachen Sie auf einfache Weise, ob der Dateiserver läuft.

Das Windows-Template überwacht per Standard unter anderem die Laufwerke c: und d:, CPU-Auslastung, Speicher und Dateizugriffs-Geschwindigkeiten. Sollten Sie andere Dienste oder Daemons überwachen wollen, können Sie neue hinzufügen. In unserem Beispiel möchten wir die Verfügbarkeit des Samba-Dienstes überwachen lassen. Dazu muss man wissen, dass der Prozess im Falle eines Ubuntu-Servers (9.10) smbd heißt. Dies kann von System zu System variieren. Aus der Dokumentation können wir entnehmen, dass man Prozesse mit dem Schlüssel proc.num zählt. Der zu überwachende Dienst wird in eckige Klammern geschrieben: proc.num[smbd] als Schlüssel zählt, sofern aktiviert, ab sofort alle Samba-Prozesse auf dem Beispielserver. Es ist sinnvoller, die selbst definierten Elemente gewissen Applikationen zuzuweisen. Damit wird das Monitoring übersichtlicher.

Konfiguration der Auslöser und der Aktionen

Ein Auslöser tritt dann in Kraft, wenn ein bestimmtes Ereignis eintritt. Er löst eine bestimmte Aktion aus. Zum Beispiel realisiert der Zabbix-Server, dass die Samba-Prozesse auf null springen. Dies bedeutet, dass kein Prozess des Datei- und Druckservers mehr läuft. Er ist somit nicht mehr erreichbar und wahrscheinlich „down“.

Welch ein Desaster: So richten Sie einen Auslöser für ein bestimmtes Ereignis ein.

Zabbix kann auf dieses Ereignis reagieren und löst eine vorkonfigurierte Aktion aus. Wie schon erwähnt, kann dies via E-Mail, SMS und/oder Jabber passieren. Sollte die Zahl der Prozesse wieder eins oder höher sein, können Sie sich wiederum benachrichtigen lassen. Auch Auslöser können Sie als aktiv oder inaktiv deklarieren.

Der Ausdruck an sich steht in geschweiften Klammern. Hierin steht zuerst der zu überwachende Rechner, danach der Schlüssel und dann was überwacht werden soll. Für unser Beispiel sähe der Ausdruck eines neu erstellten Auslösers so aus: {Zabbix Server:proc.num[smbd].last(0)}<1

Sie können den verschiedenen Auslösern unterschiedliche Prioritäten zuweisen. Im Falle eines Datei- und Druckservers wäre es sicher ein Desaster, wenn Anwender nicht mehr auf Daten zugreifen können.

Benachrichtige mich! Wird „Samba down“ ausgelöst, erhält der Systemverwalter eine E-Mail. Im Falle einer Genesung wird ebenfalls eine Nachricht verschickt.

Mit den Aktionen können Sie nun definieren, wie Zabbix mit einem ausgelösten Ereignis umgehen soll. Für unser Beispiel soll als Quelle „Auslöser“ dienen. Weiterhin soll als Voraussetzung gelten, dass der Auslöser „Samba down“ aktiviert wird. Dies alles soll die Software an den Benutzer Admin schicken. Sollte der Dienst wieder erreichbar sein, hätte der Administrator ebenfalls gerne eine Meldung. Somit konfigurieren wir die Wiederherstellungsnachricht gleich mit.

Im Nachrichtenfeld bietet es sich an, aussagekräftige Texte zu verwenden. Es ist durchaus von Vorteil, wenn der Empfänger einer solchen Mail direkt weiß, was Sache ist. Administratoren raten bekannterweise ungern bei Fehlerbeschreibungen.

Pläne, Graphen und Übersichtstafeln

Diese Schaltflächen erklären sich eigentlich von selbst. Diese Funktionen dienen der Visualisierung beispielsweise Ihrer Netzwerklandschaft oder Serverdienste.

Alles im Überblick: Mit Plänen lassen sich Probleme visualisieren.

Graphen und Diagramme sagen oftmals mehr aus als weiße Buchstaben und Zahlen auf schwarzen Hintergründen. Mit den Übersichtstafeln lassen sich wiederum genauere Analysen darstellen. Hier können Sie sich anzeigen lassen, was Ihnen für die einzelnen Systeme wichtig erscheint. Das kann etwa CPU-Auslastung sein, Netzwerkverkehr oder benutzter Festplattenplatz.

Wer es ganz genau wissen will: Mit den Übersichtstafeln visualisiert der Zabbix-Server Trends.

Spielen Sie einfach ein bisschen mit diesen Funktionen herum. Was am Anfang ein wenig chaotisch erscheinen mag, ergibt sehr schnell Sinn. Einmal durchschaut, ist die Konfiguration der Visualisierungsfunktionen ein Kinderspiel.

Import- und Export-Funktion

Die Import- und Export-Funktion ist sinnvoll, wenn Sie zum Beispiel den Zabbix-Server ohne Datenverlust umziehen wollen. Sie könnten die konfigurierten Elemente Auslöser und Graphen natürlich auch manuell aus der Datenbank via Kommandozeile exportieren und auf einem anderen System einfügen. Das muss aber nicht sein. Mit wenigen Klicks haben Sie diese Schritte komfortabel im Browser erledigt. Sie wählen bei einem Export lediglich die gewünschten Elemente aus und klicken auf Exportieren.

Datensicherung? Die Export-Funktion ist durchaus brauchbar für ein Backup der manuellen Konfigurationen.

Der Export ist danach in Form einer XML-Datei verfügbar. Der Import erfolgt äquivalent auf dem neuen System. Schade ist, dass man nicht die komplette Datenbank exportieren beziehungsweise importieren kann. Wollen Sie auch die Datenbank umziehen und die gesammelten Werte beibehalten, müssen Sie das anders bewerkstelligen. Das exportierte XML lässt sich natürlich auch als eine Art Datensicherung verwenden.

Eigene Elemente erstellen

Wie bereits erwähnt, können Sie den Zabbix-Agenten um eigene Elemente beliebig erweitern. Wollen Sie etwas überwachen, das Zabbix per Standard nicht abdeckt, können Sie somit nachbessern. Prinzipiell gibt es zwei Regeln, die einzuhalten sind: Erstens muss der Befehl auf der Kommandozeile ausführbar sein, zweitens muss er einen einzelnen Wert zurückgeben. Ansonsten können Sie Ihrer Fantasie freien Lauf lassen. Der Eintrag für den Zabbix-Agenten-Dienst erfolgt in der Datei /etc/zabbix/zabbix_agentd.conf.

Bildergalerie:
Zabbix - eigene Elemente erstellen
Für eine Weiterverarbeitung will Zabbix ein eindeutiges Ergebnis haben.
Zabbix - eigene Elemente erstellen
Die Datei zabbix_agentd.conf hält einige Beispiel vor, an denen Sie sich orientieren können.
Zabbix - eigene Elemente erstellen
So integrieren Sie zum Beispiel den Schlüssel internet.alive in Ihre Elemente.
Zabbix - eigene Elemente erstellen
Mit den Web-Tools können Sie bestimmte Dienste auf Verfügbarkeit überwachen.

In der Beispieldatei der Sourcen finden sich bereits einige auskommentierte Einträge. Diese zeigen, dass ein eigener Schlüssel immer mit UserParameter= beginnt. Danach vergeben Sie den Namen des Auslösers, gefolgt von einem Komma. Dahinter befindet sich der Kommandozeilenbefehl. Das Ganze erklärt sich an einem Beispiel leichter.

UserParameter=internet.alive,ping -c1 -W3 tecchannel.de | grep packet | awk '{print $4}'

Der Name des Schlüssels ist internet.alive. Der Befehl nach dem Komma macht nichts anderes, als einen einzelnen Ping zu tecchannel.de auszuführen. Danach gibt er entweder den Wert 1 oder 0 zurück. Diesen Schlüssel können Sie nun in den Elementen verwenden. Mit Version 1.4.x wurde bereits die Möglichkeit implementiert, Webdienste direkt auf deren Verfügbarkeit zu überwachen. Dafür können Sie die Software verschiedene Szenarien im Bezug auf Browser und Betriebssystem simulieren lassen.

Neuerungen in Zabbix 1.8.x

Zabbix bringt in Version 1.8.x diverse Neuerungen und Verbesserungen mit sich. Zu den Highlights zählen die Entwickler Geschwindigkeitsvorteile. Ebenso unterstützt die aktuelle Version des Monitoring-Tools Unicode komplett. Administratoren können sich Berichte in Form von Balkendiagrammen anzeigen lassen. Beim Erstellen von Karten können Sie Hintergrundbilder verwenden. Hier ist zum Beispiel eine Weltkarte für die Standorte verschiedener Server denkbar.

JSON-RPC-Unterstützung: Die Zabbix-Macher haben Großes mit der neuen API vor.

Für Entwickler und Programmierer dürfte interessant sein, dass Zabbix 1.8.x die JSON-RPC API unterstützt. Diese erlaubt nach eigenen Aussagen bereits das Ändern der meisten Konfigurationsparameter. Somit lässt sich ein komplexes Setup-Management automatisieren. Mit Zabcon existiert bereits ein Kommandozeilen-Tool, das Gebrauch von der neuen API macht. Die API ist allerdings noch ausdrücklich als technische Vorschau deklariert. Die Entwickler schließen zahlreiche Änderungen für eine kommende Version nicht aus. Interessierte finden alle Neuerungen und Änderungen im Changelog des Projekts.

Dokumentation

Die Dokumentation des Zabbix-Projekts ist vorbildlich. Sie ist übersichtlich, komplett und informativ. Wenn Sie die Komplexität von Zabbix voll überblicken möchten, werden Sie früher oder später einen Blick in die Dokumentation werfen und sich schnell zurechtfinden. Ein weiterer Pluspunkt sind die zahlreichen darin enthaltenen Beispiele. Wer mit der „Trial and Error“-Methode nicht mehr weiterkommt, hat mit der Dokumentation einen guten Berater an seiner Seite. Einen Blick sind ebenfalls die Kapitel 5 und 7 wert. Dort finden Sie einen „Quick Start Guide“ und „Tutorials“. Leider gibt es die Dokumentation derzeit nicht in deutscher Sprache. Das Handbuch ist in Englisch, Französisch, Japanisch, Portugiesisch und Russisch verfügbar.

Fazit

Zabbix ist und bleibt ein Vorzeigeprogamm der Open-Source-Szene. Es kann in allen Bereichen mit kommerziellen Produkten mithalten. Es hat sich seit Version 1.0 stetig verbessert und viele neue Funktionen mit sich gebracht. Die Komplexität nimmt wie gewohnt mit jeder großen Ausgabe zu. Der Übersichtlichkeit und guten Bedienbarkeit hat das allerdings wenig geschadet. Die Software ist am Puls der Zeit und unterstützt aktuelle Betriebssysteme. Zabbix ist schon lange den Kinderschuhen entwachsen und verkauft mittlerweile auch professionelle Unterstützung gegen Bezahlung. Dies mag für die eine oder andere Firma wichtig sein. Mehr Informationen zu diesem Thema finden Sie hier.

Wer viele Systeme und Dienste zu überwachen hat, ist mit Zabbix sehr gut beraten. Die Konfiguration von zu überwachenden Systemen ist dank zahlreicher Templates doch recht einfach. Hier können Sie Zeit sparen. Haben Sie dennoch Spezialanwendungen oder -wünsche, können Sie das mittels eigenkreierter Schlüssel realisieren. Zabbix ist nach wie vor eine uneingeschränkte Empfehlung, wenn es um Monitoring-Software geht. Version 1.8 bietet noch komplexere und übersichtlichere Überwachungsfunktionen, mit denen Sie Ihr Firmennetz jederzeit im Auge behalten können. Darüber hinaus ist es kostenlos und funktioniert. Außerdem ist die Unterstützung zahlreicher Plattformen ein weiterer dicker Pluspunkt. (mje)