apm best practices
DESCRIPTION
Eine Zusammenfassung der wichtigen Kriterien zur Auswahl einer APM Lösung für produktive Java Applikationen. Vortrag auf der WJAX 2011 in München von Rainer Schuppe, codecentric AGTRANSCRIPT
![Page 1: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/1.jpg)
APM - Best Practices
Rainer Schuppe - codecentric AG
1
Freitag, 11. November 2011
![Page 2: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/2.jpg)
2© CrunchCrea - sxc.hu
Freitag, 11. November 2011
![Page 3: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/3.jpg)
3© ross666 - sxc.hu
Freitag, 11. November 2011
![Page 4: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/4.jpg)
4© NLTeddy - sxc.hu
Freitag, 11. November 2011
![Page 5: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/5.jpg)
5© PetStarr - sxc.hu
Freitag, 11. November 2011
![Page 6: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/6.jpg)
6
Freitag, 11. November 2011
![Page 7: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/7.jpg)
Agenda
APM - Worüber reden wir überhaupt?
Performance im Application Lifecycle
Prioritäten bei der Auswahl
6 Hauptkriterien für die Auswahl
Vergleich der Technologien und Architekturen
Fazit
7
Freitag, 11. November 2011
![Page 8: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/8.jpg)
Worüber reden wir?
APM = Application Performance Management / Monitoring
Monitoring = 24 x 7 Überwachung = Produktion / Datenerfassung / Protokollierung
Management = Service Level / Kapazität / Alarm / Historisch / Berichte
Application = Services die zusammen eine Business Funktion bilden
Performance = Durchsatz und Geschwindigkeit 8
Freitag, 11. November 2011
![Page 9: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/9.jpg)
DEVELOPMENT & QAPRODUCTION OPERATIONS
24/7 visibility to proactively determine root cause
Developers can focus on innovation
Freitag, 11. November 2011
![Page 10: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/10.jpg)
BusinessPressures
Development doing Monitoring
Can’t recreate the problem Endless war-
room calls
Long MTTR
Forced Re-starts
Unhappy Customers
PRODUCTION OPERATIONS
NoInnovation
DEVELOPMENT & QA
Freitag, 11. November 2011
![Page 11: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/11.jpg)
11
150+150+
© SupaJem - sxc.hu
Freitag, 11. November 2011
![Page 12: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/12.jpg)
Performance im Lifecycle - Entwicklung
• Awareness - Ist Performance in der Entwicklung ein Thema?
• Intern, extern oder Mischung?
• Agil oder Wasserfall?
• Non Functional Requirements?
• Einzelfall AnalyseLokal beim Entwickler
• CI Unterstützung?
12
© drouu - sxc.hu
Freitag, 11. November 2011
![Page 13: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/13.jpg)
Performance im Lifecycle - Test
• Fachtest oder Lasttest?
• Komplexität
• Expertise?• Non Functional Requirements?
• Testdaten = Produktionsdaten?• Problem Reproduktion
13
(c) Buzznet Media
Freitag, 11. November 2011
![Page 14: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/14.jpg)
Performance im Lifecycle - Produktion
Hier wird Performance ein Business Thema• Service Level Agreements
• Umsatzrelevant
• Expertise in Operations• Wieviele Applikationen?
• Verteilung (selbes Gebäude, Stadt, Land, Kontinent)• DevOps?
• Landschaft hetero- oder homogen?
14© gabriel77 - sxc.hu
Freitag, 11. November 2011
![Page 15: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/15.jpg)
Prioritäten bei der Auswahl
1. Fit für die Produktion?
2. Fit für moderne Architekturen?
3. Wie einfach einzusetzen?
4. Skalierbarkeit
5. Innovation
6. Gesamtkosten
15
Freitag, 11. November 2011
![Page 16: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/16.jpg)
16
Kosten
Innovation
Skalierbarkeit
Ease of Use
Moderne Architekturen
Produktionsgeeignet
Freitag, 11. November 2011
![Page 17: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/17.jpg)
Fit für Produktions Umgebungen - Anforderungen
• Hohe Last (Anzahl Transaktionen)
• Anzahl der Applikationen• Expertise der Operator
• Wartungsfenster
• Vielfalt der Technologien• Problemszenarien nicht wiederholbar
17
Freitag, 11. November 2011
![Page 18: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/18.jpg)
18
Triage und Troubleshooting (Visibilität)
Kein Einfluss auf die Applikation (Overhead)
Automatisches Applikations-Mapping
Konfigurationsaufwand
Automatisches Baselining
Produktions-geeignet
Freitag, 11. November 2011
![Page 19: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/19.jpg)
19
Kein Einfluss auf die Applikation (Overhead)
Produktions-geeignet
• CPU Verbrauch
• Antwortzeit-Verlängerung• Server / 2. Overhead
• Verdichten der Daten auf dem Server zu Informationen
Freitag, 11. November 2011
![Page 20: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/20.jpg)
Sichtbarkeit
20
Freitag, 11. November 2011
![Page 21: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/21.jpg)
Sichtbarkeit
21
Freitag, 11. November 2011
![Page 22: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/22.jpg)
22
Monolithische 3-Tier Applikation
auch bei agilen Releases
Applikationen in der Cloud
Verteilte SOA Applikationen
Big Data
unterstützte Architekturen
Application Code & Frameworks (custom und Standard)
Freitag, 11. November 2011
![Page 23: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/23.jpg)
23
Amazon EC2 Public Cloud
VMware Private Cloud
• Cloud• Virtualization• SOA• Open-source
MQ
Tomcat
JBoss
Spring
Weblogic
unterstützte Architekturen
Freitag, 11. November 2011
![Page 24: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/24.jpg)
24
APM Solution – Wartungs- und Betreuungsaufwand
Wie schnell einsatzfähig (time to value)?
Wie intuitiv ist die Lösung?
Wird eine SaaS Option angeboten?
Wiederholbarkeit von Problemen?
Welches Knowhow braucht der User?
Ease of Use
Freitag, 11. November 2011
![Page 25: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/25.jpg)
25
Wie schnell einsatzfähig (time to value)?
Braucht man bei der InstallationUnterstützung des Herstellers?
Welche Expertise ist nötig,um die Lösung wirklich einsetzen zu können?
SaaS Angebot?
© lusi sxc.hu
Ease of Use
Freitag, 11. November 2011
![Page 26: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/26.jpg)
26
APM Solution – Wartungs- und Betreuungsaufwand
Tägliche Wartung / Betreuung nötig?
Versionsabhängigkeiten der Komponenten?
SaaS Angebot?
(c) sanja gjenero
Ease of Use
Freitag, 11. November 2011
![Page 27: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/27.jpg)
27
Hardwareanforderungen?
Wieviele Agenten pro Management Server?
Wie kann skaliert werden? Hardware?
Speicherplatz für 1 Jahr?
Benötigte Netzwerkbandbreite?
Lastverhalten: Peak oder gleichmässig?
Skalierbarkeit
Freitag, 11. November 2011
![Page 28: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/28.jpg)
28
Wieviele Agenten pro Management Server?Skalierbarkeit
• Welche Daten schicken die Agenten?
• Wie oft?• Benötigte Netzwerkbandbreite
• LAN / WAN / DSL geeignet?
• Direkte Kommunikation oder gestaffelt?• Collector Architektur?
Freitag, 11. November 2011
![Page 29: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/29.jpg)
29
Anzahl Releases pro Jahr?
Hersteller fokussiert auf APM?
Ist der Hersteller als erster mit neuen Features auf dem Markt?
Unterstützung für Ihre aktuelle Platform?
Innovation
Freitag, 11. November 2011
![Page 30: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/30.jpg)
30
Hersteller fokussiert auf APM?
Innovation
• Ist die Lösung „integriert“ aus Zukäufen?
• Wie alt ist die Architektur?• Was deckt die Lösung noch ab?
• Wie gross ist der APM Anteil?
• Baukästen und Frameworks funktionieren nur mit viel Arbeit
Freitag, 11. November 2011
![Page 31: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/31.jpg)
31
Support & Wartung
Lizenzen
Implementierung Dienstleistung / Professional Services
Hardware
Ausbildung & Training
Administration für Ausbau und Wartung
Kosten
Freitag, 11. November 2011
![Page 32: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/32.jpg)
32
Implementierung Dienstleitung / Professional Services
Ausbildung & TrainingKosten
• Wieviele PT nötig für die Inbetriebnahme?
• Wieviel Training und wie oft ist es nötig?
• Neues Training bei neuen Releases notwendig?
Freitag, 11. November 2011
![Page 33: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/33.jpg)
0
37,5
75,0
112,5
150,0
Lösung 1Lösung 2
Lösung 3
Kosten Innovation SkalierbarkeitEase of Use Architekturen Prod Geeignet
Freitag, 11. November 2011
![Page 34: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/34.jpg)
Vergleich der Technologien und Architekturen
• Technologien zur Datenermittlung
• Methodologien
• Komponenten-Monitoring• Transaktions-Monitoring
• Architektur• Agenten
• Server
• Datenhaltung• Integration
• User Interface
Freitag, 11. November 2011
![Page 35: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/35.jpg)
Technologien zur Datenermittlung
Bytecode Instrumentierung• Hat Zugriff auf die Ausführungsanzahl
• Genaue tatsächliche/max/min/durchschnittliche Ausführungszeit
• Genaue Ausführungsreihenfolge
• Benötigt Konfiguration der zu messenden Codestellen
• Konfiguration muss ausbalanciert sein
• Massenhaft aufgerufene Methoden sind auszuschließen
• Genauso Methoden mit Ausführungszeit kürzer als die Messcode-Zeit
• Produziert große Datenmengen
Freitag, 11. November 2011
![Page 36: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/36.jpg)
Technologien zur Datenermittlung
Sampling• Stabiler Overhead, der hauptsächlich durch das Samplingintervall,
nicht durch den gemessenen Code, bestimmt wird
• Ausführungshotspots werden anstelle einer feingranularenCodereihenfolge gemessen
• Kann unbekannten Code aufspüren
• Läuft effizient auf Mehrkernsystemen
http://blog.codecentric.de/?p=9528
Freitag, 11. November 2011
![Page 37: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/37.jpg)
Technologien zur Datenermittlung
• JMX / PMI• Geeignet zur Begleitung
• ARM
• Logging
• Network Sniffing / SPAN-Port
Freitag, 11. November 2011
![Page 38: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/38.jpg)
38
Applications
FirewallNetwork
Switch
Load Balancer Portal
Identity Manager
End User
Web Servers
Router
ERP
CRM
Order
3rd Party Applications
Databases
Mainframe
Database
Web Services
Freitag, 11. November 2011
![Page 39: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/39.jpg)
MethodologieKomponenten Monitoring
Alt - nicht mehr für moderne Architekturen geeignet
• JVM Check (CPU, Heap, Health Check)• Servlets, EJB, SpringBeans, etc.
• Evtl. mit Bezug zwischen 2 Ebenen (Servlet - EJB)
• JMX• Meist in Frameworks zu finden• Ergänzung der System Monitoring Tools• Kein Kontext -> Expertenwissen benötigt
39
Freitag, 11. November 2011
![Page 40: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/40.jpg)
40© marcphelan - sxc.hu
Freitag, 11. November 2011
![Page 41: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/41.jpg)
MethodologieTransaktions-Monitoring
• Einstieg über definierte Fachlichkeiten (Business Transaktionen)
• Verfolgung über JVM Grenzen hinweg• Identifizierung der beteiligten Komponten / Architektur
• End User Experience Integration
41
Freitag, 11. November 2011
![Page 42: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/42.jpg)
Architektur - Agenten
• Aktiv / passiv
• Java / nativ• Einer für alles
• Gruppe von Agenten für verschiedene Perspektiven?
• Autarker Agent• Gar kein Agent?
• Transaktionskontext?
42
Freitag, 11. November 2011
![Page 43: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/43.jpg)
Architektur - Server
• Einzelner zentraler Server
• Cluster mit Management Server• Staffelung und Arbeitsverteilung mit Management Server
• SaaS geeignet oder nur lokale Installation?
• Sichere Anbindung der Agenten (Verschlüsselung)?• HA / Failover?
43
© Linuxgeek - sxc.hu
Freitag, 11. November 2011
![Page 44: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/44.jpg)
44
Management Server
GUI
GUI
GUI
GUI
Agent
Agent
Agent
Agent
Agent
Agent
Database
Freitag, 11. November 2011
![Page 45: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/45.jpg)
45
Management Server
GUI
GUI
GUI
GUI
Agent
Agent
Agent
Agent
Agent
Agent
Collector Server
Collector Server
Collector Server Aux.
Server
Database
Freitag, 11. November 2011
![Page 46: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/46.jpg)
Architektur - Datenhaltung
• Database
• Filesystem• Kombination aus beidem
• Wie viel Platz wird über 1 Jahr gebraucht?
46
© runrunrun - sxc.hu
Freitag, 11. November 2011
![Page 47: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/47.jpg)
Architektur - Integration
• APIs für Input und Output für Daten?
• Java APIs?• Script basiert?
• Einfachheit
• Service Provider / REST?
47
© gozdeo - sxc.hu
Freitag, 11. November 2011
![Page 48: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/48.jpg)
User Interface
48
• Fat client oder Web-GUI?
• Dashboards• Customizable - Mustomizable?
• Für Operator OOTB verwendbar?
• Mandantenfähig?
© vgarcias - sxc.hu
Freitag, 11. November 2011
![Page 49: Apm best practices](https://reader034.vdocuments.site/reader034/viewer/2022051209/547ba1efb4af9fce158b4ede/html5/thumbnails/49.jpg)
FazitEs gibt viele Werkzeuge, aber nur wenige brauchbare Lösungen
für den Produktionseinsatz
49
Jede Organisation muss die Kriterien selbst gewichten
Automatisierung und Ease of Use sind die Schlüssel für schnelles, effektives Arbeiten
Freitag, 11. November 2011