9
George W. Anderson, Michael Mißbach Projekthandbuch Last-Testing und Performance-Tuning i Galileo Press

George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

George W. Anderson, Michael Mißbach

ProjekthandbuchLast-Testing und

Performance-Tuning

iGalileo Press

Page 2: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

Inhalt

Vorwort zur deutschen Ausgab« 15

Vorwort zur englischen Ausgab« 17

1 Einführung 19

1.1 Warum haben wir dieses Buch geschrieben? 19

1.1.1 Besonderheiten von SAP-Systemen 20

1.1.2 Vorbehalte gegen Last-Testing und Performance-Tuning 21

1.2 Wie haben wir dieses Buch geschrieben? 23

1.3 Für wen haben wir dieses Buch geschrieben? 261.3.1 Der Wasserfall 261.3.2 Die Kunst, ein Boot jederzeit flott zu halten 271.3.3 Reaktionszeit und Durchsatz 29

1.4 Wie ist dieses Buch zu lesen? 291.4.1 Aufbau dieses Buches 301.4.2 Der SAP-Tuning-Werkzeugkoffer 32

a Last-Testing und PerfonnancoVF«ittag 35

2.1 Besonderheiten im Umgang mit SAP-Systemen 35

2.1.1 Gründe für Änderungen an mySAP-Lösungen 372.1.2 Erarbeiten von Performance-Tuning-Zielen 39

2.2 Last-Testing 43

2.2.1 Argumente für Last-Tests 442.2.2 Was genau sind Last-Tests? 452.2.3 Weitere Formen von Last-Tests 482.2.4 Vergleichbarkeit von Last-Tests 502.2.5 Alternative Verfahren für Last-Tests 50

2.3 Performance-Tuning 51

2.3.1 Statische Systeme vs. Adaptive Computing 522.3.2 Anwendungsübergreifende Geschäftsprozesse 532.3.3 Erkennung und Behebung von Engpässen 542.3.4 Benchmarking 552.3.5 System-Baselining 56

2.4 Return on Investment vs. Return on Information 57

Inhalt 5

Page 3: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

3.1 SAP-Technologie 61

3.1.1 SAP-Basis 623.1.2 SAP Web Application Server als neue Basis 623.1.3 SAP Exchange Infrastructure und SAP Master

Data Management 643.1.4 SAP NetWeaver und mySAP-Lösungen 65

3.2 Last-Tests von SAP-Lösungen und -Produkten 66

3.2.1 R/3-System und SAP ERP Central Component 673.2.2 SAP Enterprise Portal 703.2.3 SAP Business Information Warehouse 723.2.4 SAP Strategie Enterprise Management 763.2.5 mySAP Customer Relationship Management 773.2.6 mySAP Product Lifecycle Management 783.2.7 mySAP Supply Chain Management 793.2.8 mySAP Supplier Relationship Management 803.2.9 SAP Exchange Infrastructure 813.2.10 SAP xApps 833.2.11 SAP Internet Transaction Server 83

3.3 SAP-Systemlandschaften 84

3.3.1 Typische Landschaften für mySAP-Lösungen 863.3.2 Empfehlung 88

4 Konkroie Ziele afetffoJgskriterien , 89

4.1 Ziele, Geschäftsprozesse und Daten im Detail 90

4.1.1 Ermittlung von Lösungsmerkmalen 914.1.2 Ermittlung relevanter Geschäftsprozesse 934.1.3 Ermittlung relevanter Daten 944.1.4 Entwicklung einer Projektplanvorlage 95

4.2 Verschiedene Last-Test-AAethoden 97

4.2.1 Testen einzelner Hardwarekomponenten (Stufe 1) 974.2.2 Standard-Benchmark-Tests für SAP-Systeme (Stufe 2) 984.2.3 Kundenspezifische Stress-Tests (Stufe 3) 101

4.3 Entwicklung von Erfolgskriterien 103

4.3.1 Messungen mit der Stoppuhr 1044.3.2 Reaktionszeiten von Transaktionen und Geschäftsprozessen 1064.3.3 Messung von Systemleistung und-durchsatz 1074.3.4 Leistung des Plattensubsystems 108

6 Inhalt

Page 4: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

Tuning-Teams 111

5.1 Technologie trifft Business 111

5.2 Best Practices für die Teamzusammenstellung 1125.2.1 Taktische Überlegungen für einzelne Projekte 1135.2.2 Langfristige und strategische Überlegungen 1145.2.3 Zusammenhang zwischen Werkzeugen und Teams 1145.2.4 Einsatz externer Ressourcen 1155.2.5 Methoden zum schnellen Lernerfolg 1165.2.6 Herausforderungen durch neue Lösungen und Systeme 118

5.3 Unterstützung des Change-Management-Teams 1195.3.1 Taktisches Change-Management 1195.3.2 Strategisches Change-Management 120

6 Auswahl der TestwerfcikeJige v^ 125

6.1 Bewertung von Testwerkzeugen 1266.1.1 Kriterien für Testwerkzeuge 1266.1.2 Beschaffung von Pilotsoftware 1276.1.3 Test von Testwerkzeugen 127

6.2 Betriebssystemspezifische Werkzeuge 1286.2.1 Checklt von Smith Micro 1286.2.2 Werkzeuge von Hardwareherstellern 1296.2.3 Werkzeuge für Webserver 1306.2.4 NetBench und WebBench von VeriTest 1316.2.5 Benchmark Factory von Quest 1326.2.6 OpenSTAvon CYRANO 1336.2.7 Chariot und QCheck von NetlQ 1336.2.8 Windows Media Player von Microsoft 1346.2.9 Norton Antivirus LoadSim von Symantec 134

6.3 Test-Werkzeuge für Plattensubsysteme 1346.3.1 SQLIO von Microsoft 1356.3.2 SQLIOStress von Microsoft 1366.3.3 NTiogen von Symbios 1386.3.4 lometer 1396.3.5 Nbench 1396.3.6 Performance Assessment Tool von Hewlett-Packard 1406.3.7 SQL Profiler von Microsoft 140

6.4 Generische Scripting-Werkzeuge 1416.4.1 Perl, Visual Test und andere ältere Scripting-Werkzeuge 1426.4.2 AutolT von HiddenSoft 1436.4.3 PrimalScript von Sapien 1446.4.4 TxShuttle von WinShuttle 145

6.5 SAP API-fähige Scripting-Werkzeuge 1456.5.1 AutoTester ONE von AutoTester 147

Inhalt 7

Page 5: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

6.5.2 TestPartner von Compuware 1486.5.3 QALoad von Compuware 1496.5.4 WinRunner for R/3 und QuickTest Professional von

Mercury Interactive 1506.5.5 LoadRunner von Mercury Interactive 150

6.6 Werkzeuge und Ansätze von SAP 1516.6.1 SAP eCATT 1526.6.2 Lasterzeugung mit SAP CCMS 1536.6.3 Anwendungsübergreifende Last-Tests 1536.6.4 Last-Tests von SAP BW und SAP SEM 1536.6.5 Last-Tests von SAP EP und mySAP SRM 1556.6.6 Weitere Überlegungen 1556.6.7 Tipps und Tricks 156

?' Oborwachungsworlaoufo 157

7.1 Überwachungswerkzeuge von SAP 1577.1.1 SAP CCMS 1587.1.2 Central Monitoring System 1607.1.3 SAP Solution Manager 161

7.2 Tools zur Dokumentation der Konfigurationsdaten 1637.2.1 WinMSD von Microsoft 1647.2.2 Systems Insight Manager von Hewlett-Packard 1647.2.3 Checklt von Smith Micro 1657.2.4 MonitorlTvon Breakout Software 1657.2.5 Configuration Auditor von Ecora 1667.2.6 Patch Manager von Ecora 1667.2.7 Survey von Hewlett-Packard 1677.2.8 GetConfigvon Hewlett-Packard 1687.2.9 AssetDB von Compulsion Software 1697.2.10 Windows Management Instrumentation von Microsoft 169

7.3 AAonitor-Utilities und Betriebssystem-Applets 1707.3.1 Tools für Plattensubsysteme 1707.3.2 UNIX-Betriebssystem-Tools 1717.3.3 Betriebssystem-Tools für Microsoft Windows 1747.3.4 Management-Tools für Oracle und Microsoft SQL Server 1757.3.5 IBM Insight für SAP und Oracle 1767.3.6 Überwachungs-Tools für periphere Geräte 176

7.4 Lab-Utilities 1767.4.1 PsTools von Sysintemals 1777.4.2 EventComb von Microsoft 1787.4.3 Administrators Pak von Winternais 1797.4.4 Weitere Lab-Utilities 179

7.5 Anwendungen zum Enterprise-Management 1807.5.1 Patrol for SAP Solutions Suite von BMC 1817.5.2 Unicenter Application Management von

Computer Associates 1827.5.3 OpenView Operations von Hewlett-Packard 182

8 Inhalt

Page 6: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

7.5.4 Tivoli Monitoring for Applications von IBM 1837.5.5 AppManager für das R/3-System von NetlQ 183

8 Vorbereitung für einen gute» Staut ,185

8.1 Hardwareressourcen für Test und Tuning 1858.1.1 Sandbox-Systeme 1858.1.2 Capacity-on-Demand-Systeme 1868.1.3 Hilfssysteme der Testinfrastruktur 187

8.2 Erfassen der Baseline 1878.2.1 Dokumentationstiefe der Baseline-Konfiguration 1888.2.2 Einfrieren der Baseline 190

8.3 Vorbereitung des Testsystems 191

9 Festlegung einer Teftkombination 195

9.1 Ermittlungeines repräsentativen Testmix 1959.1.1 Charakterisierung der Arbeitslast 1969.1.2 Ermittlung der am häufigsten ausgeführten Transaktionen 1979.1.3 Definition von Lastpaketen 1979.1.4 Baselines für Testkombinationen 2009.1.5 Weitere Überlegungen zu Input-Daten 201

9.2 Testkombinationen für technische Komponenten 2039.2.1 Serverhardware 2039.2.2 Plattensubsysteme 2049.2.3 Betriebssysteme 2049.2.4 Datenbanken 205

9.3 Test durchschnittlicher Systemlasten 207

9.4 Test von Spitzenlasten 2089.4.1 Datengrundlage und Datenbeschaffung 2099.4.2 Zusammenstellung des Last-Mixes 2099.4.3 Einschränkungen im Hinblick auf End-to-End-Tests 210

9.5 Spezifische Herausforderungen der verschiedenenSAP-Komponenten 211

Automatisierung von LastrT«Jl5ttSi^ . 215

10.1 Grundlagen im Überblick 215

10.2 Praxistaugliche Ansätze 21710.2.1 SAP-Benchmark-Kits als Vorlagen 21710.2.2 Top-10-Ansatz 21810.2.3 Nutzung des SAP Batch Schedulers 21910.2.4 Skripte für das Grundrauschen 22010.2.5 Mandantenkopien 220

Inhalt 9

Page 7: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

10.3 Vorbereitung von Skripten 22010.3.1 Tests mit realen Benutzern 22110.3.2 Tests mit virtuellen Benutzern 22210.3.3 Infrastruktur für die Entwicklung von Last-Test-Skripten 223

10.4 Praxistipps für die Skripterstellung 22410.4.1 Skripte testen und bearbeiten 22510.4.2 Skript für die Erfassung der Daten und Statistiken 22610.4.3 Skript für das SAPLOGIN 22810.4.4 Zeitversetzte Anmeldung am SAP GUI 22910.4.5 Weitere Tipps und Tricks 23010.4.6 Regelmäßige Kommunikation 23210.4.7 Utility-Skripte 233

10.5 Standard-Subroutinen für Last-Tests 23310.5.1 Variablen und Eingabedaten 23310.5.2 Tuning virtueller Benutzer 23410.5.3 Andere nützliche Subroutinen 236

11 mW****** Vorbereitungen und'••' Ie«#««rr*fcttir#rt •-• "• • - •- •• - 2*9

• - i •»"»- , . • "

11.1 Implementierung der simulierten Benutzer 24011.1.1 Installation der Support-Infrastruktur für die Client-Emulation .. 24011.1.2 Installation des SAP GUI 24211.1.3 Softwareinstallation für die Client-Emulation 242

11.2 Konfiguration der Werkzeuge für die Client-Emulation 24311.2.1 Testen von Testpaketen 24411.2.2 Aspekte in Hinblick auf die Arbeitslast 245

11.3 Einfrieren der Testplattform 245

11.4 Überlegungen zur Überwachung des Last-Tests 24611.4.1 Überwachung der Testläufe 24711.4.2 Automatisierte Prozesse, Dienstprogramme und

Transaktionsskripte 24811.5 Ende der Testwoche 251

12 AusJtttattg von Last-Tests 25i

12.1 Sicherstellung der Wiederholbarkeit 25312.1.1 Mehr als ein Test 25412.1.2 Änderungen immer nacheinander vornehmen 254

12.2 Praxistipps für Testläufe 25512.2.1 Checklisten 25512.2.2 Zeit zwischen Testläufen reduzieren 25512.2.3 Zurücksetzen der Datenbank 25612.2.4 Neustart aller Systeme 25912.2.5 Systemprüfung vor dem Test 259

10 Inhalt

Page 8: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

12.3 Start des Last-Tests 26012.4 Überwachung des Testlaufs . \ 261

12.4.1 Automatisierte Datensammlung 26112.4.2 Überwachung durch SAP-Monitoring-Transaktionen 26212.4.3 Überwachung durch den SAP CCMS Alert Monitor 26312.4.4 Transaktion STAD 26412.4.5 Weitere SAP CCMS-Transaktionen 26512.4.6 Überwachung durch betriebssystembasierte Tools 266

12.5 Beenden von Testläufen 26612.5.1 Ordnungsgemäßes Ende eines Testlaufs 26712.5.2 Beenden durch Schleifenzähler 26712.5.3 Harter Abbruch 268

13 Analyse von Last-Tests 271

13.1 Überblick über die wichtigsten Leistungsdaten 272

13.2 Einsatz von SAP CCMS 27413.2.1 Performance-Log der SAP-Anwendung 27413.2.2 Performance der Datenbank 27513.2.3 Updates, Sperren und die Leistung des Plattensubsystems 27613.2.4 Speicherverwaltung 27913.2.5 Tabellenpuffer 28013.2.6 Betriebssystemmonitor 28313.2.7 Detailanalysen der Antwortzeit und Arbeitslast 285

13.3 Aufbereitung der Messdaten 28713.3.1 Datentransfer mit Transaktion STO3 28813.3.2 Datenexport aus dem SAP GUI 28913.3.3 Aufbereiten der Ausgabeprotokolle 28913.3.4 Import der Ausgabedaten in Excel 290

13.4 Darstellung der Ergebnisse 29213.4.1 Zielgruppen 29213.4.2 Daten in Informationen umwandeln 292

14 Iteratives Testen und Tanen • -'--^^•••w- 295

14.1 Postrun-Analyse 296

14.2 Bewertung von Änderungen während eines Testzyklus 29714.2.1 Methodenwechsel während des Last-Tests 29714.2.2 Änderungen an Clients 29814.2.3 Änderungen der Testplattform 29814.2.4 Änderungen der Arbeitslast 299

14.3 Tuning von SAP-Systemen 29914.3.1 Tuning des Plattensubsystems und des SAN 30014.3.2 Datenbank-Tuning 302

Inhalt 11

Page 9: George W. Anderson, Michael Mißbach Projekthandbuch Last ... · 6.6.1 SAP eCATT 152 6.6.2 Lasterzeugung mit SAP CCMS 153 ... 9.1.5 Weitere Überlegungen zu Input-Daten 201 9.2 Testkombinationen

14.3.3 SAP-Anwendungs-Tuning 30514.3.4 SAP-Frontend-Tuning 306

14.4 Erfahrungen aus der Praxis 307

14.4.1 Windows Server-Konsolidierung für SAP 30814.4.2 SAN-Konsolidierung und Plattensubsystem-Upgrades 30914.4.3 Release-Upgrades 311

1 i Utandara Nutxenfaktoren • - .. - .,,•,,,,.*& 3M9

15.1 Verfügbarkeit 313

15.1.1 Zusammenhang von Konsistenz und Verfügbarkeiteines SAP-Systems 314

15.1.2 Single Points of Failure 31515.1.3 Failover-Tests 31815.1.4 Wartungsfenster und Hochverfügbarkeit 31915.1.5 Test von Desaster-Recovery-Lösungen 32115.1.6 Schutzgegen Inkonsistenz der Datenbank 323

15.2 Skalierbarkeit 324

15.2.1 Scale-up- und Scale-out-Skalierbarkeit 32515.2.2 Ermittlung der tatsächlichen Belastbarkeit 32715.2.3 Smoke-Tests 328

15.3 Einfluss von Last-Tests auf die SAP-Systemadministration 328

15.4 Proaktives Testen 329

15.4.1 Von der Transaktion zum anwendungsübergreifendenGeschäftsprozess 329

15.4.2 Charakterisierung der Zusammensetzung der Systemlast 33015.4.3 Neue Technologien und Ausführungsfenster 331

15.5 Ein guter Rat zum Schluss 331

333

A.1 Zeitversetztes Anmelden 333

A.2 Systemabmeldung 334

A.3 Grundrauschen 335

A.4 Daten aus Textfile einlesen 336

A.5 Daten aus Microsoft Excel einlesen 337

A.6 Seriennummern-Generator 337

A.7 Zufallszahlen-Generator 338

A.8 Logische Verzweigung 338

A.9 SAP GUI-Meldungen erfassen 342

A.10 ST03-Monitoring 342

A.11 Aufzeichnung von Messdaten 347

12 Inhalt