Ich habe in einer Testumgebung Zabbix 6.x laufen und möchte nun weitere Prozesse von Servern meiner Testumgebung überwachen. Nachfolgend eine Anleitung wie man einen Linux Prozess in Zabbix einrichtet, ihn überwacht und im Fehlerfall benachrichtigt wird.
Zuerst muss der Prozessname und der User unter dem dieser läuft herausgefunden werden.
# ps -ux |grep gluster
root 496 0.0 1.8 460680 18008 ? Ssl Feb22 0:03 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO
Um zu sehen wie Zabbix den Prozess sieht bzw. welche Informationen ausgelesen werden können, installierte ich auf dem Zabbix Sever der unter Debian läuft das Tool Zabbix_GET
# zabbix_get -s <hostname> -k 'proc.num[glusterd,root]'
1
Hier nun gut zusehen, dass ein Prozess läuft. Die Anzahl spielt hier generell keine Rolle, da später der Trigger nur dann reagiert, wenn kein Prozess, also Null, ausgelesen wird. Möchte man auf z.B. steigende Prozesse alamiert werden, ist dies natürlich relevant.
neues Zabbix Item erstellen
Als erstes wird ein neues Item mit obigen Prozess erstellt.
- Configuration > Hosts > hier nun den betoffenen Host anklicken
- rechts oben auf den Button „Create item“ klicken
- Nun einen bezeichneten Namen eingeben
- Type Zabbix agent bleibt
- bei Key auf den Button Select klicken und „proc.num“ suchen
- hier nun folgendes eingeben, bzw. anpassen: proc.num[glusterd,root]
- Host interface, sollte der zuvor ausgewählte Host stehen
- Type of information bleibt Numeric (unsigned)
- Units bleibt leer
- Update interval bleibt bei 1m
- Custom intervals bleibt auf Flexible
- History storage period bleibt auf STorage period 90d
- Trend storage period bleibt Storage period 365d
- Value mapping bleibt leer
- Populates host inventory field bleibt auf -None-
- Description einen entsprechenden Text eintragen
- Enable ist aktiviert
Final dann auf den Button Add klicken und das neue Item erstellen.
neuen Zabbix Trigger erstellen
Nachdem ein neues Zabbix Item erstellt wurde, muss nun ein neuer Trigger erstellt werden.
- Configuration > Hosts > hier nun von dem betoffenen Host auf Triggers klicken
- einen neuen Trigger rechts oben durch Klick auf „Create trigger“ erstellen
- Name – bezeichneten Namen eintragen
- Severity auf z.B. High einstellen
- Expression auf den Button „Add“
- als Item unser zuvor erstelltes Item auswählen
- Function kann last() – Last(most recent) T value stehen bleiben
- Last of (T) kann leer bleiben
- Time shift kann leer bleiben
- Result auf = und 0 (Null) setzen
- abschließend auf den Button „Insert“ klicken
Bisher habe ich ein Zabbix Item und ein entsprechender Zabbix Trigger erstellt. Damit nun noch eine Benachrichtigung erfolgt, wenn der Prozess nicht läuft, muss noch eine entsprechende Action Trigger. erstellt werden.
Zabbix Trigger action erstellen
Damit ich auch weiß wann der Prozess nicht läuft, möchte ich per E-Mail informiert werden.
- Configuration > Actions > Trigger actions
- rechts oben auf den Button „Create action“ klicken
- hier nun einen bezeichnenden Namen eingaben
- bei Conditions auf Add klicken
- Type auf Trigger belassen
- Operator auf equals lassen
- Triggers hier den obigen eingerichteten Trigger auswählen und auf Add klicken
- Enable ist aktiviert
oben auf Operations klicken und nun die Benachrichtigung per E-Mail festlegen
Wie im Screen zu sehen, lasse ich mir eine Mail bei Fehlern und eine wenn der Prozess wieder läuft, senden.
Thats it … Have Fun!
Interessiert in verschiedenste IT Themen, schreibe ich in diesem Blog über Software, Hardware, Smart Home, Games und vieles mehr. Ich berichte z.B. über die Installation und Konfiguration von Software als auch von Problemen mit dieser. News sind ebenso spannend, sodass ich auch über Updates, Releases und Neuigkeiten aus der IT berichte. Letztendlich nutze ich Taste-of-IT als eigene Dokumentation und Anlaufstelle bei wiederkehrenden Themen. Ich hoffe ich kann dich ebenso informieren und bei Problemen eine schnelle Lösung anbieten. Wer meinen Aufwand unterstützen möchte, kann gerne eine Tasse oder Pod Kaffe per PayPal spenden – vielen Dank.