IINews



« | »

SAP-Prozess-Monitoring mit Zabbix User Parameters„Marke Eigenbau“

 

Das Problem

Wie viele Unternehmen betreibt und betreut die Inwerken AG geschäftskritische SAP-Systeme und setzt gleichzeitigZabbixals zentrales Monitoring-System ein.

Was jedoch fehlt: Eine einfache Möglichkeit, SAP-Prozesse direkt über Zabbix zu überwachen, um bei Problemen in Echtzeit alarmiert zu werden. Leider gibt es keine offiziellen Zabbix Templates für SAP und in der Community ist das Thema unzureichend abgedeckt. Wie lässt sich also der Status von SAP-Prozessen zuverlässig in Zabbix abbilden?

Die Lösung

Da Zabbix‚out of the box‘ keine SAP-Überwachung anbietet, müssen wir uns eine eigene Lösung designen. Erfreulicherweise bietet Zabbix mit sogenanntenUser Parameterseine benutzerfreundliche Option, die Funktionalität des ‚Zabbix Monitoring Agents‘ zu erweitern.

Kombiniert mit einfachen Skripten und der LLD (Low Level Discovery) Funktion lassen sich SAP-Instanzen im Endergebnis automatisch erkennen undüberwachen. So schaffen wir mit etwas Konfigurationsaufwand eine flexible und erweiterbare Monitoring-Lösung.

Die Grundidee

Unsere Lösung basiert auf vier Kernkomponenten:

Berechtigungsstruktur: Mitsudogewähren wir dem Zabbix Agent Zugriff auf den sapcontrol Befehl und schränken ihn lesend ein, um Sicherheitsrisiken zu reduzieren.

Instance Discovery Skript: Ein einfaches Shell-Skript zum Ermitteln der vorhandenen SAP-Instanzen (für die LLD), für die der Status der Prozesse mit SAP‘s sapcontrol Befehl ausgelesen werden soll.

Zabbix User Parameters: Individuell definierte Zabbix-Agent-Befehle, um das Repertoire der Monitoring Software für unsere Anforderung zu erweitern.

Zabbix LLD (Low Level Discovery): Eine automatische Erkennung von SAP-Instanzen in der Zabbix Monitoring Oberfläche für die überwachten SAP-Systeme, um dynamisch Items und Trigger pro Instanz zu erzeugen.

Die Umsetzung

Disclaimer: Dieser Beitrag geht in seiner Ausgangssituation von einem auf UNIX installierten SAP-System sowie einem Zabbix Monitoring Server aus, die für ihren herkömmlichen Gebrauch fertig konfiguriert sind und bereits miteinander kommunizieren. Da die technische Umsetzung von Fall zu Fall unterschiedlichen Rahmenbedingungen unterliegt, erlauben wir es uns an dieser Stelle, gewisse Punkte zu verallgemeinern. Sollten Sie sich eine individuelle Beratung zu diesem oder anderen Themen wünschen, können Sie uns jederzeit gerne unterservice@inwerken.deper E-Mail kontaktieren.

Berechtigungsstruktur

Der Zabbix Agent Benutzer hat standardmäßig keine Berechtigung, den sapcontrol Befehl des SAP-Systems auszuführen. Eine uneingeschränkte Rechtevergabe wäre ein Sicherheitsrisiko, da sapcontrol unter anderem dazu genutzt werden kann, die SAP-Prozesse zu stoppen.

Wir nutzen die UNIX sudoers Datei, um den Zabbix Benutzer ausschließlich zur Abfrage der Prozesse zu berechtigen:

zabbix ALL=(sidadm) NOPASSWD: /usr/sap/hostctrl/exe/sapcontrol ^-nr [0-9]{2} -function GetProcessList$

Instance Discovery Skript

Wir möchten, dass der Agent dynamisch alle vorhandenen SAP-Instanzen auf dem System ermitteln kann, um sie im Anschluss zu monitoren. Mit vorhandenen Mitteln ist dies ohne weiteres nicht möglich. Deshalb erstellen wir ein kleines Shellskript, welches die vorhandenen Instanznummern herausfindet undin einer JSON-formatierten Liste (als Input für die Zabbix LLD) ausgibt.

Kurzgefasst führt das Skript folgende Schritte aus:

Prüft, ob die Datei /usr/sap/sapservices existiert (in der jede Instanznummer mindestens einmal vorkommt), sonst gibt es eine Fehlermeldung

Sucht in dieser Datei nach zweistelligen Zahlen, die die Instanznummern darstellen

Gibt diese Nummern als JSON-Liste ohne Duplikate aus

Als Ergebnis liefert unser Skript eine Liste der vorhandenen Instanzen– zum Beispiel 00, 01 und 98:

[{\“{#INSTANCENR}\“:\“00\“},{\“{#INSTANCENR}\“:\“01\“},{\“{#INSTANCENR}\“:\“98\“}]

Zabbix User Parameters

Wir definieren zwei neue User Parameters, um die Funktionalität des Agenten zu erweitern. Diese sind Einträge in der Konfigurationsdatei vom Zabbix Agent auf dem überwachten Host und folgen der Syntax:

UserParameter=,

„key“ ist ein einzigartiger Schlüssel, über den der Zabbix Server den Agent auffordert, den folgenden „command“ im Betriebssystem auszuführen (z.B. die Ausführung eines Skripts).

Wir ergänzen die Konfigurationsdatei auf unserem SAP-System um folgende Einträge:

UserParameter=sap.sapcontrol.getprocesslist,sudo -u sidadm /usr/sap/hostctrl/exe/sapcontrol -nr $1 -function GetProcessList

(Dieser User Parameter lässt den Zabbix Agent den Status der SAP-Prozesse einer variablen Instanznummer als der Admin des SAP-Systems abfragen).

UserParameter=sap.instance.discovery,bash /etc/zabbix/zabbix_agent2.d/sapinstancediscovery.sh

(Dieser User Parameter führt das Shellskript aus, welches zum Ermitteln der vorhandenen SAP-Instanzen auf dem System benutzt wird).

Zabbix LLD

Anschließend erstellen wir auf unserem Zabbix Monitoring Server ein neues Template zur Überwachung der SAP-Prozesse, die wir unseren UNIX SAP-Systemen zuweisen. Innerhalb dieser erstellen wir eine neue Discovery Regel „SAP Instance Discovery“, bestehend aus folgenden Komponenten:

Discovery rule: Mit dem neuen User Parameter key„sap.instance.discovery“ lassen wir den Zabbix Agent unser selbstgeschriebenes Skript ausführen, um alle Instanznummern eines überwachten Hosts regelmäßig zu erkennen.

Item prototype„SAP GetProcessList {#INSTANCENR}“: Mit dem neuen variablen User Parameter key „sap.sapcontrol.getprocesslist[{#INSTANCENR}]“ lassen wir den Agent pro erkannter Instanznummer einmal minütlich die sapcontrol Funktion „GetProcessList“ ausführen, um den aktuellen Status der Prozesse zu erhalten.

Trigger prototype„{#INSTANCENR} is not GREEN“: Sollte ein SAP-Prozess mehr als drei Minuten in Folge einen anderen Status als „GREEN“ haben, wird ein Monitoring Problem erstellt, über das wir uns benachrichtigen lassen.

Nach einer Minute Wartezeit sind bereits die ersten Daten unserer SAP-Prozesse in der Zabbix Weboberfläche zu sehen.

Fazit

Damit ist die Grundlage für die Überwachung von SAP-Prozessen mit Zabbix geschaffen.

Im nächsten Schritt können die UserParameter, das Skript zur Instanz-Erkennung sowie die Anpassungen an der sudoers-Datei auf weitere SAP-Systeme verteilt werden – beispielsweise über eine zentrale Management-Plattform. So lassen sich zusätzliche Systeme effizient in unsere selbstgebaute Monitoring-Lösung integrieren.

Die hier beschriebenenÜberwachungsmechanismen lassen sich mit wenigen Anpassungen sowohl auf lang etablierte als auch auf modernste SAP-Systeme sowie auf HANA-Datenbanken anwenden. Bei Letzteren ist die Überwachung der einzelnen Tenants einschließlich Warnungen eine Erweiterungsmöglichkeit, wodurch in Summe ein durchgängiges Monitoring des gesamten SAP-Systems – Betriebssystem, Applikation und Datenbank – in Zabbix abgebildet werden kann.

Ich hoffe, dieser Beitrag konnte einen praxisnahen Einblick vermitteln, wie sich mit etwas Kreativität und dem richtigen technischen Know-how benutzerdefinierte Monitoring-Anforderungen flexibel und effizient mit Zabbix umsetzen lassen.

Seit 2000 beraten wir Unternehmen dabei SAP®-Prozesse effizienter zu gestalten und IT-Lösungen wirkungsvoll einzusetzen. Als erfahrener Partner für SAP®-Beratung und -Entwicklung, S/4HANA®-Conversions, IT-Services und allgemeine Unternehmensaufgaben im Kontext der digitalen Prozess-Transformation begleiten wir unsere Kunden branchenübergreifend und auf internationaler Bühne: onsite und remote.

Mit 6 deutschlandweiten Standorten und rund 70 Fachkräften passen wir Standardprozesse passgenau an, schulen Key-User, unterstützen das Projektmanagement und bieten zuverlässigen First- und Second-Level-Support. Als SAP®-Silver-Partner liefern wir sowohl praxistaugliche Lösungen als auch eigene Produkte, die den Arbeitsalltag wirklich vereinfachen.

„… einfach beraten“: Zuhören. Wissen. Lösen. Entwickeln. Unternehmen profitieren von unserer praxisnahen Beratung auf Augenhöhe sowie unseren zusätzlichen IT- und SAP®-Basis-Leistungen für eine starke systemische Grundlage. Kunden vertrauen auf unsere Kernwerte: Partnerschaft, Offenheit, Exzellenz und Kompetenz.

Weitere Informationen finden Sie auf

• www.inwerken.de

• www.karriere.inwerken.de

• www.digitalisierung.inwerken.de

Firmen-Standorte: Isernhagen (Firmenhauptsitz), Berlin, Braunschweig, Hamburg, Jena, Stuttgart.

Geschäftsführung: Frank Bachmann (Gründer und Vorstandsvorsitzender), Rudolf Jost, Holger Lexow. Aufsichtsrat: Gunnar Menzel

KONTAKT

Inwerken AG

Frau Christin Harms

Tel. 0511 936 206 60

E-Mail: marketing@inwerken.de

www.inwerken.de

Posted by on 5. November 2025.

Tags: ,

Categories: Allgemein

No Responses Yet

You must be logged in to post a comment.

« | »




Neueste Beiträge


Seiten



fabino - News von Erzeugern und Herstellern von Lebensmitteln, Getränken und Zutaten