Zabbix
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.[7]
Zabbix
| |
---|---|
Zabbix 4.0 | |
Basisdaten
| |
Hauptentwickler | Alexei Vladishev |
Entwickler | Zabbix |
Erscheinungsjahr | 2001[1] |
Aktuelle Version | 7.0.0[2] (4. Juni 2024) |
Aktuelle Vorabversion | 4.0.0alpha2[3] (8. Januar 2018) |
Betriebssystem | GNU/Linux, Solaris, macOS, HP-UX, NetBSD, FreeBSD, IBM Power Systems, AIX |
Programmiersprache | C, PHP, Java |
Kategorie | Netzwerküberwachung |
Lizenz | AGPL-3.0[4][5][6] |
deutschsprachig | ja |
www.zabbix.com |
Komponenten
BearbeitenGrundsätzlich unterteilt sich Zabbix in den Zabbix-Server, den Zabbix-Proxy, den Zabbix-Agent, das Webinterface und ein Datenbank-Backend.[8]
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
BearbeitenDer 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, ssh oder einfach nur via Ping abgefragt werden, die Daten können aber auch durch den Zabbix-Agent aktiv auf den Hosts erhoben werden. Zudem können normierte Daten (Zeitstempel, Variable, Wert) mit dem Zabbix Sender aktiv an den Server gesendet werden.
Überschreiten die erfassten Werte bestimmte Schwellenwerte, kann der Zabbix-Server Aktionen auslösen, wie z. B. Benachrichtigungen versenden oder Maßnahmen direkt auf den überwachten Systemen durchführen.
Es ist eine „Discovery“-Funktion integriert, mit welcher neue Geräte im Netzwerk erkannt und automatisch dem Monitoring hinzugefügt werden können.
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 SQL-Datenbank-Systeme in Frage[9][10]:
- MySQL / MariaDB
- PostgreSQL
- Oracle RDBMS
- SQLite
- IBM DB2
- TimescaleDB
- Elasticsearch (Experimentell, für History-Daten)
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 + alert manager
- sind für das Senden von 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“)
- preprocessing manager + worker
- zuständig für Vorverarbeitung von Daten, bevor diese in den History-Cache geschrieben werden
Webinterface
BearbeitenDas komplette Monitoring wird über ein in PHP geschriebenes Web-Interface verwaltet, so dass 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
BearbeitenOhne 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.
Ab der Version 2.2 kann Zabbix mittels JMX-Schnittstelle Java-Applikationsserver (wie JBoss oder Apache Tomcat) überwachen.
Aktiv – mit Agent
BearbeitenReicht 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. Die Verbindung zwischen Zabbix-Server/Proxy und Zabbix-Agent sowie zwischen Zabbix-Server und -Proxy kann ab Version 3.0 verschlüsselt werden. Auch ist es möglich mit dem Agent über sogenannte „Aktionen“ Scripts/Befehle direkt auf dem überwachten Host auszuführen.
Die Agents sind für folgende Plattformen vorkompiliert verfügbar:
Proxy
BearbeitenEine Zabbix-Installation kann über Zabbix-Proxies auf mehrere Standorte oder getrennte Netzwerke verteilt werden. Zabbix-Proxys synchronisieren sich regelmäßig mit dem Zabbix-Server und führen das Monitoring stellvertretend für den Haupt-Zabbix-Server aus. Auf diese Weise kann der Zabbix-Server entlastet werden.[11]
Zabbix SIA
BearbeitenDie 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 stand bis Version 6.4 unter der GNU GPL Version 2, danach unter der Lizenz AGPL-3.0, und ist somit freie Software.[12]
Trainings
BearbeitenEs werden auch global verfügbare Schulungen in mehreren Sprachen angeboten.
Siehe auch
BearbeitenLiteratur
Bearbeiten- Diego Wyllie: Netzwerkmanagement und Monitoring. Die besten Web-Tools für Server-Admins. In: Computerwoche. 16. Februar 2015 (Online).
- Diego Wyllie: Zabbix: Quelloffenes Monitoring der Enterprise-Klasse. In: Computerwoche. Nr. 41, 8. Oktober 2012 (Online).
- Jürgen Donauer: Open Source Server Monitoring. Server- und Client-Überwachung mit Zabbix 1.4.2, Teil 1. In: Computerwoche. tecChannel.de. 7. November 2007 (Online).
- Jürgen Donauer: Open Source Server Monitoring. Server- und Client-Überwachung mit Zabbix 1.4.2, Teil 2: Frontend. In: Computerwoche. tecChannel.de. 16. November 2007 (Online).
Weblinks
Bearbeiten- offizielle Webpräsenz
- Zabbix Share
- Systemüberwachung mit Zabbix
- Zabbix 4.2 mit zahlreichen Neuerungen
- IT-Infrastrukturen mit Zabbix überwachen (IT-Administrator-Magazin)
- Monitoring mit Zabbix (ADMIN-Magazin)
Einzelnachweise
Bearbeiten- ↑ www.zabbix.com. (englisch, abgerufen am 5. Oktober 2022).
- ↑ Release Notes for Zabbix 7.0.0.
- ↑ www.zabbix.com. (abgerufen am 19. Januar 2018).
- ↑ Zabbix software released under AGPLv3. (abgerufen am 13. Juni 2024).
- ↑ COPYING. 13. Mai 2024 (abgerufen am 13. Juni 2024).
- ↑ blog.zabbix.com. 3. April 2024 (abgerufen am 13. Juni 2024).
- ↑ 2 What is Zabbix. Abgerufen am 16. Januar 2023.
- ↑ 4 Zabbix overview. Abgerufen am 16. Januar 2023.
- ↑ 2 Requirements. Abgerufen am 16. Januar 2023.
- ↑ 1 Database creation. Abgerufen am 16. Januar 2023.
- ↑ 4 Proxy. Abgerufen am 16. Januar 2023.
- ↑ Zabbix software released under AGPLv3. Zabbix, abgerufen am 10. August 2024.