Zabbix 3 was ist neu

Warten auf Zabbix 3

Im ersten Quartal 2016 wird höchstwahrscheinlich das erste stabile Release von Zabbix 3.0 zum öffentlichen Download bereitstehen. Fertige Binärpakete für RedHat, Debian und Ubuntu werden kurze Zeit später ebenfalls verfügbar sein. Wenn Sie sich nun fragen, ob Sie mit der Installation und Konfiguration Ihres Monitoring-Systems warten sollten, bis Zabbix 3.0 verfügbar ist, lautet die Antwort kurz und einfach: Nein!

Wenn Sie jetzt starten wollen, tun Sie dies mit der letzten stabilen Version von Zabbix 2.4. Ein Upgrade der Zabbix-Version ist denkbar einfach. Konzeptionelle Änderungen gibt es zwischen den Versionen 2.4 und 3.0 nicht, so dass Konfigurationen und erworbenes Wissen komplett beim Upgrade mitgenommen werden.

Setzen Sie für ein produktives System keine Alpha- oder Beta-Versionen von Zabbix 3.0 ein. Diese sind nicht stabil und enthalten teilweise schwerwiegende Fehler. Außerdem müssen Sie auf den Komfort von fertigen Binärpaketen verzichten.

Alle Neuerungen in Zabbix 3 können Sie einem Vortrag von Zabbix Gründer Alexei Vladishev entnehmen, welchen Sie auf Slideshare anschauen können.

Die größten Neuerungen in Zabbix 3

Webfrontend

Die auffälligste Änderung in Zabbix 3 ist das Redesign des Webfrontends. Dieses wurde an aktuelle Designtrends angepasst, so dass es nicht mehr altbacken wirkt. Verbesserungen der Bedienbarkeit gab es nur Wenige.

Das neue Zabbix Design wahlweise klassisch Blau oder im Dark-Theme

Verschlüsselung

Zabbix 3 ist nun endlich in der Lage, die Kommunikation zwischen Server, Agenten und Proxys komplett zu verschlüsseln. Basierend auf der Verschlüsselung TLS v1.2 können sich die Zabbix-Komponenten sicher authentifizieren. Die fehlende Verschlüsselung war lange Zeit ein großer Kritikpunkt, denn je nach Überwachungsaufgabe können sensible Daten an den Zabbix-Server übertragen werden.

In Zabbix 3 kann der gesamte Datenaustausch mit OpenSSL, GnuTLS oder mbed TLS (PolarSSL) verschlüsselt werden. Die Authentifizierung können Sie entweder durch einfache Pre-Shared-Keys oder durch Zertifikate realisieren, welche Sie über eine eigene Zertifizierungsstelle – beispielsweise mit OpenSSL – erstellen und verwalten.

Die Verschlüsselung ist optional und kann für jeden Zabbix-Agenten einzeln aktiviert werden. Der Zabbix-Server Version 3 wird auch weiter mit den Agenten der Version 2.X unverschlüsselt kommunizieren können.

Verschlüsselter Datenaustausch

SMTP-Authentifizierung

Zabbix 3 nun nicht mehr aus ein „offenes“ SMTP-Relay angewiesen. Der Zabbix-Server kann sich mit Benutzername und Passwort an einem SMTP-Server anmelden. Auf Umwege wie einen lokalen SMTP-Server können Sie verzichten.

SMTP-Authentifiezierung

Kontextbezogene Makros

Ab Zabbix 3 können Sie Makros ähnlich wie assoziative Arrays aufbauen: {$MAKRO:KONTEXT_1} = WERT_1, {$MAKRO:KONTEXT_2} = WERT_2. Der Kontext wird durch andere Makros aus Listenelemente von Low-Level-Discovery-Regeln gesetzt. Ein anschauliches Beispiel sind Trigger, welche die Füllstände von Festplatten überwachen. Sie können nun die Schwellwerte abhängig vom Mountpoint oder dem Laufwerksbuchstaben definieren:

{$MIN_DISK_PFREE} = 10
{$MIN_DISK_PFREE:/tmp} = 20
{$MIN_DISK_PFREE:/mnt/backup} = 50

Im Trigger-Prototypen wird der Wert des Makros entsprechend des Mointpoints aufgelöst, welcher im Listenelement {#FSNAME} gespeichert ist:

{host.vfs.fs.size[{#FSNAME},pfree].last()}<{$MIN_DISK_PFREE:{#FSNAME}}
                     |                                        |
{host.vfs.fs.size["/mnt/backup",pfree].last()}   <{$MIN_DISK_PFREE:/var}
                     |                             |
{host.vfs.fs.size["/mnt/backup",pfree].last()}   <50
Anlegen kontextbezogener Makros in Zabbix 3

Uhrzeitgesteuertes Abrufen von Messwerten

Vor Zabbix 3 konnten Sie nur angeben, alle wie viel Sekunden ein Wert abgerufen wird. Mit Zabbix 3 können Sie zusätzlich zum üblichen Update-Intervalls eine Uhrzeit und einen Wochentag angeben.

Präzise Zeitangabe, wann Item-Werte abgerufen werden

Kleiner Neuerungen

VMWare-Monitoring

Mit Zabbix 3 hält das neue Item vmware.vm.cpu.ready Einzug. Ein sehr wichtiger Messwert, der Ihnen angibt, dass die virtuelle CPU einer VM „fertig“ ist, aber nicht von der physikalischen CPU bedient werden konnte. Präziser ausgedrückt, handelt es sich um die Zeit in Prozent, welche eine virtuelle CPU im CPU-Scheduler wartet, bis sie von einer physikalischen CPU bedient wird. Ein hoher Wert zeigt eine hohe Auslastung oder eine Überlastung der physikalischen CPU an.

Housekeeper

Der Houskeeper kann nun über den Crond präzise gesteuert werden, so dass Houskeeper-Jobs beispielsweise nur nachts ausgeführt werden.

0 2 * * *  zabbix  /usr/sbin/zabbix_server -R housekeeper_execute

Loglevel

Mit Zabbix 3 hält ein neues Loglevel 5 Einzug. Das Loglevel kann ohne Änderungen an der Konfigurationsdatei und ohne Neustart des Zabbix-Servers im laufenden Betrieb gewechselt werden.

[root@centos7 ~]# /usr/sbin/zabbix_server -R log_level_increase=5
zabbix_server [21998]: invalid runtime control option: log_level_derease=3
[root@centos7 ~]# /usr/sbin/zabbix_server -R log_level_decrease=3
zabbix_server [21999]: command sent successfully