You are on page 1of 27

SAP-Monitoring

NETWAYS Nagios Konferenz September 2006

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

Grundberwachung

berwachung aus dem Betriebssystem heraus:


CPU-Auslastung Festplattennutzung Datenbank Prozesse

geht nur, wenn man administrativen Zugriff auf den Host hat! SAP-Performance-Probleme mit Grundberwachung nicht immer messbar!
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 2

Service-Level-Agreements

Verfgbarkeit:
Servicezeit Ausfallzeit 100 Servicezeit

Antwortzeit:

mit SAP gemessene Antwortzeit ohne GUI-Zeit fr festgelegt Transaktionen (nicht BATCH-Charakter) < 1 Sekunde in mind. 90% aller Flle

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

Verfgbarkeit

check_tcp gengt nicht! Login mglich?

Simulation eines echten Logins durch Aufzeichnung mit Drittsoftware (erfordert gltigen User, kostet Zeit) sapinfo aus dem RFCSDK: kontaktiert den RFC-Server, fragt Infos ab fertiges Plugin: check_sap.sh

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

RFCSDK besorgen

Hinweis 413708: aktuelle RFC-Library Hinweis 27517: Installation RFCSDK http://service.sap.com/swdc


SAP Support Packages and Patches Entry by Application Group Netweaver od. Applikation Components (R/3) Kernel # Database independent

Format: SAPCAR
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 5

RFCSDK entpacken
% /Pfad-zu/SAPCAR.EXE -xvf RFC-8_20000055.SAR SAPCAR: processing archive RFC_8-20000055.SAR (version 2.00) x x x x x % rfcsdk rfcsdk/bin rfcsdk/bin/rfcping rfcsdk/bin/sapinfo ... ldd rfcsdk/bin/sapinfo

libdl.so.2 => /lib/tls/libdl.so.2 (0xb7f7c000) libm.so.6 => /lib/tls/libm.so.6 (0xb7f10000) libc.so.6 => /lib/tls/libc.so.6 (0xb7dcc000) ...
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 6

Exkurs: ein SAP-System


AS=01
p10ap013

AS=02
p10ap014

AS=03
p10ap039

AS=04
p10ap057

sap-13

sap-14

sap-39

sap-57

p10db012

sap-12
AS=00 MS, DB

10.128.254.12

P10

AS: Application Server (= Systemnummer) MS: Message Server DB: Datenbank


NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 7

sapinfo: Test 1
% ./sapinfo ashost=10.128.254.12 sysnr=00 SAP System Information ----------------------------------------------Destination p10db012_P10_00 Host p10db012 System ID P10 Database P10 DB host P10DB012 DB system ORACLE SAP release 620 SAP kernel release 640 RFC Protokoll 011 Characters 1100 (NON UNICODE PCS=1) Integers LIT Floating P. IE3 SAP machine id 561 Timezone 3600 (Daylight saving time)
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 8

sapinfo: Test 2
% ./sapinfo r3name=P10 mshost=10.128.254.12 Group Key Message Connect_PM LOCATION ERROR Error group 102 RFC_ERROR_COMMUNICATION Connect to message server failed MSHOST=10.128.254.12, R3NAME=P10, GROUP=PUBLIC CPIC (TCP/IP) on local host service 'sapmsP10' unknown

/etc/services: ... sapmsP10

3600/tcp

% ./sapinfo r3name=P10 mshost=10.128.254.12 group=ISH ... Destination p10ap013_P10_01 Host p10ap013


NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 9

check_sap.sh (1)

benutzt sapinfo aus dem RFCSDK im Contrib-Verzeichnis der Nagios-Plugins


cp /Pfad-zu/nagios-plugins/contrib/check_sap.sh \ /usr/local/nagios/libexec

Pfad im Skript anpassen:

sapinfocmd='/usr/local/sap/rfcsdk/bin/sapinfo'

ACHTUNG: check_sap.sh liefert OK, wenn das Programm sapinfo nicht gefunden wird!
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 10

check_sap.sh (2)
% ./check_sap.sh as 10.128.254.13 01 OK - SAP server p10ap013_P10_01 available. % ./check_sap.sh ms 10.128.254.12 P10 ISH OK - SAP server p10ap014_P10_02 available.
define command{ command_name command_line } define command{ command_name command_line } check_sap_as $USER1$/check_sap.sh as $HOSTADDRESS$ $ARG1$ check_sap_ms $USER1$/check_sap.sh ms \ $HOSTADDRESS$ $ARG1$ $ARG2$

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

11

check_sap.sh (3)
check_command check_sap_as!00 check_command \ check_sap!as /H/193.29.184.38/H/RZVR3ZP1 00 check_command \ check_sap!as /H/193.29.184.38/S/3299/H/RZVR3T02 00

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

12

CCMS-Monitoring

SAP stellt im CCMS (Computing Center Management System) eine umfangreiche Monitoring Architektur zur Verfgung Zentrales Montoring mehrerer SAPSysteme Monitoring von Nicht-SAP-Systemen Umfangreiche Dokumentation unter http://service.sap.com/monitoring
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 13

CCMS: Transaktion RZ20

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

14

CCMS Dialog Overview

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

15

CCMS: selbst definierter Monitor

monitor.pdf
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 16

CCMS mit Nagios abfragen

CCMS-Plugins:

nagios-plugins-sap-ccms-0.7.3 SUSE 10.1: fertiges Paket installieren andere: entweder mit alien konvertieren oder aus den Sourcen konvertieren

SAP-Benutzer mit entsprechenden Berechtigungen (Achtung: kein '#' im Passwort) Schwellwerte: im CCMS definiert
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 17

SAP-Berechtigungen

S_RFC: - 16 - SALX, SXMI - FUGR S_XMI_LOG - * S_XMI_PROD - * - * - *

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

18

CCMS-Plugins
Plugin check_sap check_sap_cons check_sap_instance Beschreibung Ausgabe von HTML-formatierten Monitordaten dito, aber ohne HTML-Formatierung Dialogantwortzeit, Anzahl Benutzer (CCMS-Ping erforderlich); HTML-formatiert HTML-formatierte Mehrfachausgabe mit Hyperlinks dito, aber ohne Hyperlinks zeigt die Applikationsserver des SAP-Systems und deren Status (CCMS-Ping erforderlich); HTML dito, aber ohne HTML-Formatierung

check_sap_instance_cons dito, aber ohne HTML-Formatierung check_sap_multiple check_sap_mult_no_thr check_sap_system check_sap_system_cons

SUSE-Pfad: /usr/lib/nagios/plugins

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

19

/etc/sapmon/login.cfg
Syntax:
[LOGIN_template] LOGIN=-d SID -u user -p **** -c mand -h host -s sysnr

Beispiel:
[LOGIN_P10] LOGIN=-d P10 -u 910wob -p **** -c 020 -h p10db012 -s 00

wegen des Passwortes sollte die Datei nur fr den User nagios lesbar sein!

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

20

Monitor-Templates
Syntax:
[TEMPLATE_name] DESCRIPTION=Beschreibung MONI_SET_NAME=Monitorsammlung MONI_NAME=Name des Monitors PATTERN_0=SID\Kontext\Monitorobjekt\Attribut

Beispiel:
[TEMPLATE_00] DESCRIPTION=Dialog Response Time MONI_SET_NAME=SAP CCMS Monitor Templates MONI_NAME=Dialog Overview PATTERN_0=P10\*\Dialog\ResponseTime
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 21

check_sap_cons
Syntax:
check_sap_cons template rfc_template

Beispiel:
% ./check_sap_cons 00 P10 P10 p10ap013_P10_01 Dialog ResponseTime 493 msec P10 p10ap014_P10_02 Dialog ResponseTime 260 msec P10 p10ap039_P10_03 Dialog ResponseTime 73 msec P10 p10ap057_P10_04 Dialog ResponseTime 104 msec P10 p10db012_P10_00 Dialog ResponseTime 289 msec

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

22

check_sap_mult_no_thr
Syntax:
check_sap_sap_mult_no_thr template rfc_template

Beispiel:
% ./check_sap_mult_no_thr 00 P10 <table> <tr><td CLASS='statusOK'>P10 p10ap013_P10_01 Dialog ResponseTime 40 msec</td></tr> <tr><td CLASS='statusOK'>P10 p10ap014_P10_02 Dialog ResponseTime 244 msec</td></tr> <tr><td CLASS='statusOK'>P10 p10ap039_P10_03 Dialog ResponseTime 188 msec</td></tr> <tr><td CLASS='statusOK'>P10 p10ap057_P10_04 Dialog ResponseTime 5 msec</td></tr> <tr><td CLASS='statusOK'>P10 p10db012_P10_00 Dialog ResponseTime 348 msec</td></tr> </table>
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

<br> <br> <br> <br> <br>

23

Wie lautet das korrekte Pattern ?


Template:
[TEMPLATE_00] DESCRIPTION=Dialog Response Time MONI_SET_NAME=SAP CCMS Monitor Templates MONI_NAME=Dialog Overview PATTERN_0=*

Aufruf:
% ./check_sap_cons 00 P10 ... P10 p10db012_P10_00 Dialog ResponseTime 238 msec P10 p10db012_P10_00 Dialog FrontEndNetTime 271 msec P10 p10db012_P10_00 Dialog ResponseTime(StandardTran.) 22ms P10 p10db012_P10_00 Dialog UsersLoggedIn 43 ...
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 24

CCMS: Nagios Kommando


[TEMPLATE_00_sap-12] DESCRIPTION=Dialog Response Time MONI_SET_NAME=SAP CCMS Monitor Templates MONI_NAME=Dialog Overview PATTERN_0=P10\p10db012_P10_00\Dialog\ResponseTime [TEMPLATE_01_sap-12] DESCRIPTION=Network Time MONI_SET_NAME=SAP CCMS Monitor Templates MONI_NAME=Dialog Overview PATTERN_0=P10\p10db012_P10_00\Dialog\FrontEndNetTime define command{ command_name check_sap_ccms command_line $USER1$/check_sap_cons $ARG1$_$HOSTNAME$ $ARG2$ }
NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006 25

Dialog Response Time

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

26

last page ;-)

Vielen Dank fr Ihre Aufmerksamkeit Fragen?

NETWAYS Nagios Konferenz 09.2006 Wolfgang Barth 2006

27