Zabbix

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 26. September 2016 um 15:00 Uhr durch Aka (Diskussion | Beiträge) (zu großen Zeilenabstand entfernt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
Zabbix


ZABBIX 1.1 alpha 6 unter Linux
Basisdaten

Entwickler Alexei Vladishev
Erscheinungsjahr 2001[1]
Aktuelle Version 3.2
(13. September 2016)
Betriebssystem GNU/Linux und andere unixoide Systeme
Programmiersprache C, PHP, Java
Kategorie Netzwerküberwachung
Lizenz GPL (freie Software)
deutschsprachig ja
www.zabbix.com

Zabbix ist ein Open-Source-Netzwerk-Monitoringsystem, welches hauptsächlich von Alexei Vladishev entwickelt wurde. Inzwischen wird Zabbix von der Firma Zabbix SIA weiterentwickelt. Es dient der Überwachung von IT-Infrastrukturen. 2001 wurde die erste Version veröffentlicht.

Komponenten

Grundsätzlich unterteilt sich Zabbix in den Zabbix-Server und den Zabbix-Agent.

Die Server-Software wiederum besteht aus mehreren verschiedenen Subprozessen, welche alle auf derselben oder separaten Maschine(n) laufen können, wodurch Zabbix sehr gut skaliert und somit auch für sehr große Infrastruktur-Umgebungen geeignet ist.

Server

Der Server ist zuständig für das Sammeln und Auswerten der Monitoring-Daten. Gesammelte Daten werden in einer Datenbank gespeichert.

Die Geräte können passiv per SNMP/IPMI oder einfach nur via Ping abgefragt werden, die Daten können aber auch durch den Zabbix-Agent aktiv auf den Hosts erhoben werden.

Überschreiten die erfassten Werte bestimmte Schwellenwerte, kann der Zabbix-Server Aktionen auslösen, wie z. B. Benachrichtigungen versenden.

Der Zabbix Server kann auf allen UNIX-ähnlichen Betriebssystemen installiert werden, benötigt für seinen Betrieb aber noch eine Datenbank. Dafür kommen alle gängigen Datenbank-Systeme in Frage:

Der Zabbix-Server besteht aus diversen Sub-Prozessen. Wie viele dieser Prozesse jeweils laufen, lässt sich in der Regel in der zabbix_server.conf einstellen.

Im Einzelnen sind dies:

poller
sammelt die Daten vom Zabbix-Agent
unreachable poller
prüft, ob nicht erreichte Hosts immer noch nicht erreichbar sind
trapper
nimmt alle eingehenden Daten von aktiven Zabbix-Agents/-Proxys an
icmp pinger
pingt einzelne Hosts an
alerter
ist für das Senden Benachrichtigungen verantwortlich
housekeeper
Aufräum-Job, löscht alte Daten
history syncer
schreibt die gesammelten Daten in die Datenbank
proxy poller
sammelt die Daten von den passiven Proxys
http poller
prüft die Erreichbarkeit und ggf. Rückgabecode von Webservern/-seiten (Webseitenmonitoring)
ipmi poller
sammelt die Daten per [IPMI]
vmware collector
zuständig für das VMware-Monitoring
timer
ist für zeitabhängige Trigger zuständig
db watchdog
prüft, ob die Datenbank verfügbar ist – wenn nicht, wird dies protokolliert und (konfigurationsabhängig) eine Benachrichtigung versandt
escalator
zuständig für das Eskalieren der einzelnen Auslöser
discoverer
zuständig für Netzwerkscan („Autodiscovery“)

Webinterface

Das komplette Monitoring wird über ein in PHP geschriebenes Web-Interface verwaltet, so daß ein normaler Browser als Client ausreicht. Mittels Kombination von Hosts/Actions/Items/Triggers kann jedes erdenkliche Szenario zum Erfassen von Daten realisiert werden. Vor allem die Darstellung von Hosts auf Karten (Maps) verschiedenster Art (Landkarten, Infrastrukturplänen, etc.) ist bereits von Haus aus integriert und sehr komfortabel gelöst. Eine JSON-Schnittstelle bietet die Möglichkeit zur Automatisierung der Verwaltung des Gesamtsystems.

Für jedes "Item" (ein zu erfassender Wert) kann nach Belieben ein Zeitgraph direkt aufgerufen oder aber selbst definiert werden. Mehrere Graphen können frei konfigurierbar auf einer Übersichtsseite (heute auch als "Dashboard" bezeichnet) dargestellt werden. Für die verschiedenen Applikationen gibt es fertige Templates, so dass der initiale Aufwand zur Konfiguration der "Items" von Zabbix minimal ist.

Für externes Alarmhandling gibt es die Möglichkeit, „Events“ per E-Mail, Jabber oder SMS/GSM zu versenden. Auch können eigene Scripts integriert werden, die besondere Formen der Benachrichtigung umsetzen.

Passives oder agentenfreies Monitoring

Ohne Softwareinstallation auf den zu überwachenden Hosts kann der Zabbix-Server Daten seiner Schützlinge per SNMP, IPMI oder WMI (ab Zabbix 2.2) erheben. Einfache Prüfungen wie z. B. auf offene Ports und/oder Antwortzeiten von Webseiten können ebenfalls im Zabbix-Server direkt konfiguriert werden.

Seit der Version 2.2 kann Zabbix mittels JMX-Schnittstelle Java-Applikationsserver (wie JBoss oder Apache Tomcat) überwachen.

Aktiv – mit Agent

Reicht das Monitoring per Ping, IPMI oder SNMP nicht aus, installiert man den Zabbix-Agent auf dem zu überwachenden Rechner. Dabei handelt es sich um ein (C-)Programm, das wesentlich mehr und z. T. auch genauere Daten auf dem Host erhebt, und sie an den Zabbix-Server sendet.

Über Funktionen wie „Discovery“ können neue Geräte im Netzwerk erkannt und automatisch dem Monitoring hinzugefügt werden.

Die Agents sind für folgende Plattformen vorkompiliert verfügbar:

Proxy

Eine Zabbix-Installation kann über Zabbix-Proxies oder Zabbix-Nodes z. B. auf mehrere Standorte oder getrennte Netzwerke verteilt werden. Zabbix-Proxys und Zabbix-Nodes synchronisieren sich regelmäßig mit dem Zabbix-Server und führen das Monitoring stellvertretend für den Haupt-Zabbix-Server aus.

Auf diese Weise können Netzwerkgrenzen überwunden werden bzw. der Zabbix-Server entlastet werden. Der Zabbix-Node bietet dieselbe Funktionalität wie der Zabbix-Server – er ist lediglich ein "Unterserver" des Zabbix-Hauptservers.

Zabbix SIA

Die Zabbix SIA wurde 2005 mit dem Fokus auf professionellen technischen Support für Zabbix gegründet. Es werden Partner-Programme, Integrationsdienste sowie Update-Services angeboten.

Zabbix steht unter der GNU GPL Version 2 und ist somit freie Software.

Trainings

Es werden auch global verfügbare Schulungen in mehreren Sprachen angeboten.

Siehe auch

Weblinks

  1. www.zabbix.com. (englisch, abgerufen am 5. Oktober 2022).