radiogugu
Goto Top

Zabbix OpenSource Monitoring

Hallo zusammen.

Ich habe seit einigen Jahren das Zabbix Monitoring im Einsatz und wollte hier einmal kurz anreißen, wie meine Erfahrungen mit dem Ganzen sind und was es für Pros und Cons gegenüber etwa PRTG gibt.

Installation und Einrichtung:

Zu Beginn habe ich mir Gedanken gemacht, wie es mit dem Betriebssystem darunter aussieht. Bei Dolibarr (Open Source ERP) habe ich die Erfahrung gemacht, dass eine Windows VM nicht so performant daherkommt, wie eine auf Ubuntu Server basierende Maschine. Zabbix ist jedoch aktuell sowieso nur auf Linux-Basis installierbar.

Daher habe ich mich auch aktuell hierbei für einen Ubuntu Server (20.04) entschieden. Auf einem Raspberry Pi läuft das Ganze auch einwandfrei.

Die Installation des Ubuntu Servers ist schnell gemacht und mit der Anleitung auf der Zabbix Homepage gelangt man in unter 20 Minuten auf das Zabbix Frontend. Es gibt auch schon vorgefertigte Pakete und Images für die Installation oder virtuelle Instanzen für verschiedene Hypervisoren mit Standard-Werten.

Zabbix Download und Installationsanleitungen für verschiedene Linux Betriebssysteme:
https://www.zabbix.com/download

Achtung!

Hier gibt es in der Installations-Anleitung jedoch eine kleine Schwachstelle. Auf manchem PC oder in einer virtuellen Maschine kann der Schritt, bei dem das DB Schema und initiale Daten importiert werden, einige Zeit dauern. Das Terminal scheint nichts mehr zu tun und der Cursor blinkt fröhlich vor sich hin. Hier unbedingt abwarten (ca. 2 Minuten), bevor man aus Ungeduld zu voreilig mal STRG + C drückt.

Dies sollte meiner Meinung nach Erwähnung in der Anleitung finden.

Nach der nicht wirklich langwierigen Installation geht es weiter mit dem Web Frontend. Mit Admin / zabbix wird sich angemeldet. Ich habe aus alter Gewohnheit einen neuen Super-Admin erstellt, den Standard-Admin und den Guest Benutzer direkt in die Gruppe "disabled" gesteckt und damit deaktiviert.

Zabbix startet zunächst mit einer weißen Oberfläche im leicht gefüllten Dashboard. Dieses habe ich aus persönlicher Präferenz auf das dunkle Thema geändert und zunächst alle sogenannten Widgets erst einmal entfernt. Hinterher habe ich dann die Widgets hinzugefügt, welche ich auf einem Blick nach der Anmeldung vor mir haben möchte. Das Einrichten von benutzer-bezogenen Dashboards ist leichtgängig und schnell erledigt.

Hier eine Beispiel für ein Dashboard mit Problemfällen und der Übersicht des Servers (wie viele Hosts, etc.):

dashboard

Hatte auch zu Beginn eine kleine Karte der Infrastruktur angelegt, welche Spaß gemacht hat zu gestalten, jedoch hinterher den Blick vom Wesentlichen etwas ablenkte. Daher entfernte ich die Karte wieder. Aber immerhin habe ich als Admin die Möglichkeit so etwas zu erstellen.

Die Benutzeroberfläche ist standardmäßig in Englisch gehalten. Man kann diese jedoch auch mit wenigen Kniffen auf Deutsch umstellen.

Nicht alles ist übersetzt worden und manchmal ist die Englische Oberfläche einfach akkurater.

Dazu müssen drei Dinge durchgeführt werden.:
  • Zunächst die Deutsche Sprache für das Frontend "generieren" mit dem Befehl sudo dpkg-reconfigure locales .
  • Anschließend muss die Deutsche Sprache noch in der folgenden Datei auf sichtbar gestellt werden: /usr/share/zabbix/include/locales.inc.php. Hat man die Datei mit seinem favorisiertem Editor geöffnet, nach de_DE suchen und den am Ende der Zeile stehenden Wert von "false" auf "true" ändern.
  • Nun noch den Apache Dienst in meinem Fall neu starten mit sudo service apache2 restart und man kann bei allen Benutzern die Sprache umstellen.

Das Monitoring

Kommen wir nun zum Herzstück. Hier ist die Lernkurve deutlich steiler als bei PRTG beispielsweise, wo ich mir im "Klicki-Bunti-Verfahren" einzelne Sensoren zusammenstellen kann.

Zabbix ist in der Lage via JMX, IPMI, SNMP oder einem für alle gängigen Betriebssysteme vorhandenen Agent Daten zu sammeln.

Hier ein paar Bilder der Erstellung eines SNMP Hosts:

Grundlegende Daten, wie Name, welche Gruppe, welches Interface und welche IP:

host_erstellung

Im Feld "Group" kann alles eingetragen werden. Gibt es schon etwas ähnlich lautendes, wird dieser Eintrag vorgeschlagen oder es wird vom System automatisch eine neue Gruppe erstellt.

Reiter Template und Zuordnung:

template_auswahl

Für den exemplarischen "Kühlschrank" wähle ich das Template Module ICMP Ping. Damit wird überwacht, ob das Gerät antwortet oder nicht. Kann das Gerät beispielsweise über SNMP mehr übertragen, müsste man ein paar Templates testen, wenn das Betriebssystem nicht zu 100 Prozent klar ist.

Hier eine kleine Übersicht der Hosts eines Zabbix Test-Servers:

uebersicht_hosts

Im rechten Bildschirmbereich sieht man, welche Agents bei den Hosts aktiv sind. Ist ein Host nicht erreichbar, so wird das grüne Symbol direkt rot. Es sei denn der Host hat keinerlei Interface konfiguriert. So auch mein "Kühlschrank". Hier gibt man zwar die IP beim Agent Interface an, wird aber nie ein grünes Symbol bei ZBX erhalten. Trotzdem funktioniert die Sammlung der Daten zur Erreichbarkeit und der Antwortzeiten.

Es kann durchaus eine Stunde dauern, bis alle Daten des Hosts vom Zabbix Server ausgelesen worden sind und auch für die visuelle Auswertung zur Verfügung stehen.

Das ganze Monitoring Prinzip basiert (genau, wie bei PRTG) auf vorgefertigten Templates / Vorlagen mit denen beispielsweise Linux- oder Windows-Server eine Auswahl an Sensoren verpasst bekommen, welche dann in vorgefertigten Graphen visualisiert werden. Das Erstellen von Graphen kann jedoch auch vollkommen manuell erfolgen, um beispielsweise verschiedene Sensoren zu kombinieren, Skalierung, farbliche Trennung oder Darstellung zu ändern. So gibt es Graphen, welche mehr Sinn machen in einem Kuchen-Diagramm oder manche eher in Balken.

Übersicht der verfügbaren Graphen eines Synology NAS mit dem Standard Template OS Linux SNMPv2:

nas_verfuegbare_graphen

Standard Graphen können auch geklont und nach eigenen Vorstellungen angepasst werden.

Eigene Templates können ebenfalls erstellt und mit Hosts verknüpft werden. Die Konfiguration und deren Syntax ist bei Zabbix recht gut dokumentiert, aber ich hatte mich bisher immer auf den Standard beschränkt und bin damit gut gefahren.

Jedes Template besteht aus mehreren Komponenten. Applications beinhalten alle dort verankerten Vorlagen. Items sind die einzelnen Sensoren, welche Daten sammeln. Trigger lösen bei Ereignissen oder Unter- und -Überschreitungen von festgelgten Werten aus. Diese Trigger können in verschiedene Schweregrade eingeteilt werden. Somit kann einerseits im Dashboard schnell erkannt werden, wo es am schlimmsten brennt. Andererseits können die sogennanten Actions an diesen Schweregraden aufgehangen werden. So können beispielsweise Informationen und Warnungen ohne Sendung einer Nachricht verbleiben und alle andere Einstufungen schlagen dann Alarm.

Trigger und einzelne Komponenten können auch deaktiviert werden, wenn beispielsweise zu viele False-Positives gemeldet werden, oder einfach diese Daten nicht aufgezeichnet werden sollen.

Bei den Benachrichtigungen stehen verschiedenste Medien zur Verfügung. Beispielsweise E-Mail, SMS, Discord oder der gute alte Pager Dienst. Diese müssen zunächst an den entsprechenden Benutzern hinterlegt werden. Anschließend kann eine Action angelegt und entsprechend einfach oder auch wirklich komplex ausgestaltet werden. So können Recovery Operationen definiert werden, welche bestimmte andere Voraussetzungen benötigen. Die Bedingungen für die Actions sind vielfältig kombinierbar.

Hier erstelle ich eine Benachrichtigung für alle Probleme, deren Trigger eine gleiche oder höhere Einstufung als "Warning" haben:

actions

In den "Operations" muss ich nun festlegen, was passieren soll. In meinem Fall soll der Benutzer Zabbixadm per E-Mail informiert werden:

actions2

Unter "Recovery Operations" definiere ich, ob ich benachrichtigt werden soll, wenn das Problem sich erledigt hat. Auch eine erneute Benachrichtigung ist konfigurierbar.

Bestehende Templates zu ändern ist nur eingeschränkt möglich. Man muss auch schauen, dass Eigenkreationen nicht mit anderen Templates kollidieren. Es wird jedoch auch sofort gemeldet, wenn mal ein Sensor in mehreren der ausgewählten Templates vorkommt.

Eingruppierungen bzw. Klassifizierungen von Hosts sind auf verschiedene Weisen möglich. Mit Tags oder Gruppen, welche schnell und unkompliziert erstellt werden können.

So bleibt die Übersicht stets gewahrt und man kann auch schnell mal eine Wartungsperiode für eine bestimmte Gruppe einrichten.

Fazit

Es gibt auch für diverse Geräte wie NAS von QNAP oder Synology extra dafür von der Community erstellte Templates, diese funktionieren leider nicht immer zuverlässig. Die Veeam Vorlage hatte ich aber erfolgreich testen können. Snyology NAS beispeislweise funktionieren jedoch mit dem oben angesprochenen Linux SNMP Template sehr gut.

Die generelle Möglichkeit der Erweiterung ist in jedem Fall nicht verkehrt und wer XML beherrscht könnte sich auch Eigenkreationen zusammenschustern.

Ein zu überwachender Host kann mit mehreren Verfahren angesprochen werden. Also SNMP und Agent gleichzeitig. Für SNMP beispielsweise muss der Community String mit einem Makro am Host definiert werden. Dies bringt eine gewisse Redundanz-Option an der Stelle.

Für PFSense gibt es beispielsweise den Agent als Standard-Paket zum Download, was das Infrastruktur-Monitoring hier schon auf einem guten Fuß startet.

Vergleich PRTG / Zabbix

Da wir auf der Arbeit PRTG und Zabbix parallel nutzen habe ich über mehrere Dinge gute Vergleiche ziehen können. Die Einrichtung von Sensoren ist bei PRTG definitiv simpler.
Den Aufbau einer Baumstruktur in PRTG halte ich jetzt nicht für einen Vorteil, da das Suchen bei Zabbix ebenfalls sehr gut Ergebnisse liefert.

Das verschachtelte Menü bei PRTG finde ich zum Beispiel nicht so dolle, verzieht man die Maus ein wenig ist der gewünschte Menüpunkt verschwunden. Da ist Zabbix haptisch besser.

Das Webfrontend von PRTG finde ich auch insgesamt etwas zu verspielt, Zabbix ist da deutlich nüchterner gehalten. Die Einrichtung und Verteilung des Zabbix Agents per GPO ist ein absolutes Plus für Enterprise Umgebungen.

Die False-Positive Meldungen empfand ich bei Zabbix tatsächlich geringer als bei PRTG. Bei einem QNAP NAS beispielsweise wurde von PRTG ständig eine fehlerhafte Festplatte gemeldet, was am Ende dazu führte, dass diese Sensoren deaktiviert wurden.

Wie Eingangs erwähnt läuft Zabbix auch auf einem Raspberry Pi. PRTG ist etwas hungriger was die Hardware betrifft und ist auf Windows als Server OS beschränkt. Zumindest sind 100 Sensoren bei PRTG kostenlos nutzbar.

Man merkt, dass Zabbix ein Open Source Projekt ist, aber ein sehr gutes und muss sich meiner Ansicht nicht vor den Konkurrenten verstecken.

Für Fragen und Anregungen stehe ich gerne parat.

Gruß
Radiogugu

Content-Key: 570689

Url: https://administrator.de/contentid/570689

Ausgedruckt am: 28.03.2024 um 19:03 Uhr

Mitglied: tomolpi
tomolpi 10.05.2020 um 10:29:20 Uhr
Goto Top
Ein paar Bilder wären schön. face-smile
Mitglied: Stefan007
Stefan007 10.05.2020 um 10:49:32 Uhr
Goto Top
Danke dir, ich werde das mal testen.
Mitglied: radiogugu
radiogugu 10.05.2020 aktualisiert um 11:46:45 Uhr
Goto Top
Mahlzeit.

@tomolpi: Liefere ich nach.

Gruß
Radiogugu
Mitglied: radiogugu
radiogugu 10.05.2020 um 13:51:18 Uhr
Goto Top
Bilder sind nun drin.

Falls noch etwas besonders interessiert, gerne fragen face-smile

Gruß
Radiogugu
Mitglied: Knorkator
Knorkator 11.05.2020 um 14:18:40 Uhr
Goto Top
Hallo Radiogugu,

tolles Tutorial für ein noch besseres Stück Software.

Setze Zabbix hier selbst seit Jahren ein und bin zufrieden - Kenne aber auch keine Alternativen!

Bgzl. der Templates kann ich übrigens folgendes Youtube-Video wärmstens empfehlen.
https://www.youtube.com/watch?v=vEGYas4xT9M&t=738s
Mitglied: radiogugu
radiogugu 11.05.2020 um 15:21:58 Uhr
Goto Top
Zitat von @Knorkator:

Hallo Radiogugu,

tolles Tutorial für ein noch besseres Stück Software.

Setze Zabbix hier selbst seit Jahren ein und bin zufrieden - Kenne aber auch keine Alternativen!

Bgzl. der Templates kann ich übrigens folgendes Youtube-Video wärmstens empfehlen.
https://www.youtube.com/watch?v=vEGYas4xT9M&t=738s

Hi und danke.

Danke auch für den Link. Die Dokumentation von Zabbix ist in jedem Fall stark, egal ob beschrieben oder als Video. Das hatte mich damals auch dazu bewogen mich damit auseinanderzusetzen.

Gruß
Radiogugu
Mitglied: monstermania
monstermania 11.05.2020 aktualisiert um 15:54:29 Uhr
Goto Top
Ich habe Zabbix bei meinem alten AG eingeführt und es dort von 2014-2018 genutzt. Dort habe per Zabbix und physphere sogar den kompletten Notfall-Shutdown unseres VMWare Clusters realisiert (https://vmware-forum.de/viewtopic.php?t=30529). Auch SMS-Benachrichtigungen bei extremen Vorfällen waren mit zabbix problemlos umsetzbar (z.B. Stromausfall).
Seit 2019 bin ich jetzt bei meinem neuen AG. Nach meinen positiven Schilderungen/Erfahrungen mit Zabbix hat sich unser Netzwerker Zabbix dann hier auch angesehen.
Ergebnis war dann, dass PRTG bei meinem AG inzwischen durch Zabbix abgelöst wurde. face-smile
Hier findet man eine sehr gute deutsche Anleitung zu Zabbix: https://lab4.org/wiki/Zabbix_Handbuch_Inhaltsverzeichnis
Ansonsten gibt es noch eine tolle Community. Zabbix ist wirklich Open-Source im besten Sinne!

PS: Paessler scheint Zabbix auch als harte Konkurrenz zu sehen face-smile : https://www.de.paessler.com/zabbix-alternative
Da wird dann mal eben geschrieben, dass bei Zabbix immer ein Agent erforderlich wäre. Das stimmt so natürlich nicht! Zabbix kann ohne Agent Daten per JMX, IPMI und SNMP sammeln. Der Agent macht das ganz aber erst richtig interessant, weil damit bei Betriebssystemen quasi jeder erdenkliche Status erfasst und ausgewertet werden kann. Und die Installation des Agents ist auch kein Hexenwerk!
Mitglied: Knorkator
Knorkator 11.05.2020 um 15:32:43 Uhr
Goto Top
Die Dokumentation ist durchweg gut, dass stimmt.
Im Video wird eine sehr interessante Herangehensweise an den Umgang mit Templates erklärt.
Mitglied: Knorkator
Knorkator 12.05.2020 um 11:07:11 Uhr
Goto Top
Zitat von @monstermania:
Der Agent macht das ganz aber erst richtig interessant, weil damit bei Betriebssystemen quasi jeder erdenkliche Status erfasst und ausgewertet werden kann. Und die Installation des Agents ist auch kein Hexenwerk!

Der Agent hat ja so gut wie keinen Overhead und ist mit nem 1-Zeiler als Dienst installiert.
C:\zabbix\zabbix\zabbix_agentd.exe --config "c:\zabbix\zabbix\zabbix_agentd.conf" --install

Über ein Anmeldeskript werden die Clients bei uns selbstständig am Zabbix Server angemeldet.
Ist ja nur eine Zeile in der .conf Datei welche über die Zuordnung entscheidet (wenn man möchte)
Mitglied: SeaStorm
SeaStorm 12.05.2020 um 14:00:56 Uhr
Goto Top
Zitat von @monstermania:
Ergebnis war dann, dass PRTG bei meinem AG inzwischen durch Zabbix abgelöst wurde. face-smile
Bei mir auch face-smile
Bei meinem alten AG hatten wir erst PRTG und niemand war da wirklich glücklich mit. Vielleicht haben wir es aber auch einfach nur falsch eingesetzt. Das kann durchaus sein.
Irgendwann habe ich mal von Zabbix gelesen und es nebenbei mal getestet. Das hat dann keine 2 Monate gedauert und ich habe die komplette IT mit Zabbix gemonitored und PRTG weggeworfen. Alleine was die default Templates so schon an Dingen hochspülen, hat die Landschaft schon spürbar verbessert.

Als ich bei meinem aktuellen AG angefangen habe, gab es eine halbherzige NAGIOS Installation. alle Mails davon sind grundsätzlich bei allen automatisch gelöscht worden.
Es hat also nie jemand mitbekommen, wenn was gemeldet wurde, was kein Wunder war, weil da tausende Meldungen zu völlig uninteressanten Dingen generiert wurden. Aber keine Mails zu relevanten Dingen. Zumal auch kaum etwas überwacht wurde.

Mittlerweile habe ich Zabbix komplett ausgerollt und einen grossen Fernseheran die Wand der IT genagelt. Da steht dann alles relevante im Dashboard so wie es oben auf dem ersten Bild zu sehen ist.
Mittlerweile heist der Fernseher nur noch "StasiTV", weil jeder Fehler den jemand macht da sofort gepetzt wird face-smile

Mails bekommt man bei entsprechender Wichtigkeit. Wenn man eine Mail vom Zabbix bekommt, dann weiss man, das man da besser mal nachguckt.

Zabbix ist großartig.
Mitglied: radiogugu
radiogugu 12.05.2020 um 16:12:58 Uhr
Goto Top
Zitat von @SeaStorm:
Als ich bei meinem aktuellen AG angefangen habe, gab es eine halbherzige NAGIOS Installation. alle Mails davon sind grundsätzlich bei allen automatisch gelöscht worden.
Es hat also nie jemand mitbekommen, wenn was gemeldet wurde, was kein Wunder war, weil da tausende Meldungen zu völlig uninteressanten Dingen generiert wurden. Aber keine Mails zu relevanten Dingen. Zumal auch kaum etwas überwacht wurde.

So ist das leider. Oft wird etwas installiert ohne Konzept und das läuft los und hinterher macht man sich über die Mails lustig.

Zeit und Geld Verschwendung an vielen Stellen.

Zabbix ist großartig.

Absolut face-smile

Gruß
Radiogugu
Mitglied: radiogugu
radiogugu 13.05.2020 um 13:55:11 Uhr
Goto Top
Seit gestern gibt es Zabbix in der Version 5.0 (LTS ).

Habe mir eine VM zum Testen aufgesetzt und meine Infrastruktur zuhause direkt einmal eingebunden.

Das neue User-Interface gefällt mir persönlich sehr gut. Insgesamt ist alles beim Alten geblieben und die Neuerungen sind eher unter der Haube.

Einzig die Auswahl der Host Interfaces und der Templates ist mir sofort ins Auge gesprungen. Dies ist nun deutlich übersichtlicher und wirkt insgesamt aufgeräumter.

Bin gespannt, ob es irgendwelche Bugs zu entdecken gibt. Ein Upgrade auf der Arbeit werde ich aber nicht lange auf sich warten lassen face-smile

Gruß
Radiogugu
Mitglied: mecki1101
mecki1101 19.05.2020 um 14:28:01 Uhr
Goto Top
Ich habe ein Abenteuer begonnen und bin aus der Wirtschaft in ein Amt als Sysadmin gewechselt. Und es war und ist ein Abenteuer.
Keinerlei Monitoring oder Dokumentation, alles irgendwie zusammen gewürfelt. Wenn was Kapput ging war es schon zu Spät. 2 Monate Plattenausfall im Raid 5 und keiner merkte was, IPMI Ports an den Server waren nicht angeschlossen und Konfiguriert, keine Raidmanager Software installiert... sind nur die Highlights. Erst mal nen Zabbix Server aufgesetzt und alles was wichtig war ins Monitoring gepackt.
Zabbix hatte ich irgendwo durch Zufall entdeckt und war von der Fülle der Möglichkeiten und Plug-Ins erst malserschlagen.
Mit Fine Tuning und etwas Zeit hatte ich mir dann alles auch passend eingerichtet.
Bin sehr zufrieden mit Zabbix.
Mitglied: radiogugu
radiogugu 19.05.2020 aktualisiert um 14:47:31 Uhr
Goto Top
Zitat von @mecki1101:
Ich habe ein Abenteuer begonnen und bin aus der Wirtschaft in ein Amt als Sysadmin gewechselt. Und es war und ist ein Abenteuer.
Keinerlei Monitoring oder Dokumentation, alles irgendwie zusammen gewürfelt. Wenn was Kapput ging war es schon zu Spät. 2 Monate Plattenausfall im Raid 5 und keiner merkte was, IPMI Ports an den Server waren nicht angeschlossen und Konfiguriert, keine Raidmanager Software installiert... sind nur die Highlights.

Klingt vertraut und traurig ist es obendrein, aber leider Realität in vielen kommunalen und öffentlichen Einrichtungen face-smile

Ich war auch erst einmal überfordert mit der "Zabbix-Erfahrung". Aber klein angefangen und dann immer weiter aufbauen.

Gruß
Radiogugu
Mitglied: monstermania
monstermania 19.05.2020 aktualisiert um 15:38:26 Uhr
Goto Top
Zitat von @mecki1101:
Ich habe ein Abenteuer begonnen und bin aus der Wirtschaft in ein Amt als Sysadmin gewechselt. Und es war und ist ein Abenteuer.
Keinerlei Monitoring oder Dokumentation, alles irgendwie zusammen gewürfelt. Wenn was Kapput ging war es schon zu Spät. 2 Monate Plattenausfall im Raid 5 und keiner merkte was, IPMI Ports an den Server waren nicht angeschlossen und Konfiguriert, keine Raidmanager Software installiert... sind nur die Highlights. Erst mal nen Zabbix Server aufgesetzt und alles was wichtig war ins Monitoring gepackt.
Hat nicht unbedingt etwas mit Amt zu tun. Ging mir 2013 auch so, als ich als Admin zu einem mittelständischen Unternehmen gewechselt hab (100 Mitarbeiter). Null Monitoring!
Hab dann Nagios/iginca, PTRG und Zabbix getestet. Zabbix war m.E. einfach das kompletteste Produkt. Die Mitarbeiter sind fast schon geschockt, wenn man schon Vor-Ort ist, bevor Sie selbst das Problem bzw. den Systemausfall bemerkt haben!