Applikationen, nicht Hardware, sind das Herz der betrieblichen IT. Deshalb ist es wichtig, ihre Leistung zu überwachen, zu optimieren und Störungen schnell zu beseitigen. Dazu dient Application Performance Management, eine stark diversifizierte Disziplin des Software- und Infrastrukturmanagements. Wir geben in diesem Artikel einen Technologie- und Marktüberblick und zeigen, auf was Sie bei der Auswahl eines APM-Tools achten sollten.
Laufen betriebliche Kernanwendungen wie ERP zu langsam, stürzen sie ab oder brechen Transaktionen mittendrin ab, dann hat das meist unmittelbare, negative Auswirkungen auf den Geschäftsbetrieb. Solche Störungen möglichst schon im Vorfeld zu verhindern und das Beste aus den Applikationen herauszuholen, ist die Aufgabe von Application Performance Management (APM).
Das bedeutet im Einzelnen: APM überwacht Applikationen auf Ressourcenbedarf, Kosten und Verarbeitungsleistung, liefert übersichtliche Daten zu diesen Themen, analysiert Störsituationen nach Auswirkungen und Ursache, greift inzwischen möglicherweise proaktiv ein und hilft so, den Betrieb möglichst reibungslos zu gestalten. Außerdem lässt sich mit geeigneten APM-Tools ermitteln, ob vereinbarte Servicelevel von Anwendungen eingehalten werden.
Auch bei der Planung und Dimensionierung der Infrastruktur sind APM-Tools hilfreich: Weil sie den Ressourcenbedarf einer Anwendung erfassen, verhindern sie leistungsmindernde Unter- und kostspielige Überdimensionierungen der IT-Umgebung. Zudem zeigen sie, wo in bestehenden Infrastrukturen mehr oder anderes nötig ist, damit die Anwendung (wieder) läuft wie gewünscht.
Laufen betriebliche Kernanwendungen wie ERP zu langsam, stürzen sie ab oder brechen Transaktionen mittendrin ab, dann hat das meist unmittelbare, negative Auswirkungen auf den Geschäftsbetrieb. Solche Störungen möglichst schon im Vorfeld zu verhindern und das Beste aus den Applikationen herauszuholen, ist die Aufgabe von Application Performance Management (APM).
Das bedeutet im Einzelnen: APM überwacht Applikationen auf Ressourcenbedarf, Kosten und Verarbeitungsleistung, liefert übersichtliche Daten zu diesen Themen, analysiert Störsituationen nach Auswirkungen und Ursache, greift inzwischen möglicherweise proaktiv ein und hilft so, den Betrieb möglichst reibungslos zu gestalten. Außerdem lässt sich mit geeigneten APM-Tools ermitteln, ob vereinbarte Servicelevel von Anwendungen eingehalten werden.
Auch bei der Planung und Dimensionierung der Infrastruktur sind APM-Tools hilfreich: Weil sie den Ressourcenbedarf einer Anwendung erfassen, verhindern sie leistungsmindernde Unter- und kostspielige Überdimensionierungen der IT-Umgebung. Zudem zeigen sie, wo in bestehenden Infrastrukturen mehr oder anderes nötig ist, damit die Anwendung (wieder) läuft wie gewünscht.
Technologische Neuerungen verändern APM-Angebot
Zuverlässige Marktzahlen für den APM-Bereich sind kaum zu bekommen. Das liegt unter anderem daran, dass sich dieses Segment schnell verändert. Begriffliche Unschärfen erschweren zudem eine genaue Erfassung. Mal ist bei der Kategorisierung von Tools, die sich mit der Anwendungsleistung befassen, von APM, mal von BTM (Business Transaction Management), mal von ASM (Application Service Management) die Rede. Best-of-Breed-Werkzeuge für bestimmte Spezialaufgaben stehen neben modularen Plattformen, in die sich auch Drittlösungen integrieren lassen.
Fest steht jedenfalls: Die rasante Technologieentwicklung beschleunigt das Fortschreiten des APM-Markts. Mit Themen wie Virtualisierung, Cloud in allen Varianten (Private, Public, Multi und Hybrid), Edge und Mobile kommen teils neue Fehlerquellen und Unübersichtlichkeiten beim Betrieb von Anwendungen hinzu. Sie erfordern entsprechende Monitoring- und Managementtools.
So haben die Cloud-Service-Provider für ihre Softwaredienste inzwischen ein Anwendungsmanagement nebst Leistungsanalyse im Angebot – selbstverständlich ebenfalls als Softwareservice: Microsoft Azure ist hier etwa mit App Insights am Start, bei Google heißen die Werkzeuge Cloud Trace, Cloud Profiler und Cloud Debugger, bei AWS CloudWatch.
Eine weitere Veränderung besteht darin, dass die Applikationen selbst nicht mehr monolithisch, sondern zunehmend mehrschichtig und modular sind. Folgen sie agilen DevOps -Entwicklungsprinzipien, ändern sie sich sehr viel häufiger als traditionelle Applikationen. Anwendungen erstrecken sich heute häufig über mehrere Infrastrukturebenen, beispielsweise von einem IoT-Device über eine Edge-Cloud bis zu einer zentralen Cloud. Sie können über eine Fülle an Schnittstellen mit der Hardware-Infrastruktur oder weiteren Anwendungen in Verbindung stehen und werden möglicherweise öfter innerhalb der Infrastruktur verschoben. Auch dies stellt APM vor neue technologische Probleme und führt zu neuen Ansätzen, denn alle diese Aspekte muss ein zeitgemäßes APM-Tool berücksichtigen.
Bild 1: Dell Foglight zeigt dynamisch die Verknüpfung der Applikation mit und den Weg der App durch die Infrastruktur an und macht so Engpässe gut sichtbar.
Zwei Blickwinkel auf die Applikationen
APM-Tools kommen häufig schon während der Entwicklung einer neuen Software zum Einsatz, um zu prüfen, ob die Leistungsanforderungen auch erfüllt sind. Allerdings liegt der Schwerpunkt in diesem Artikel auf der Implementierungs-, Nutzungs- und Betriebsphase eines bereits fertiggestellten Softwareprodukts, nicht auf der Optimierung einer sich noch in Entwicklung befindlichen Lösung. Doch welche Parameter misst, überwacht und analysiert APM überhaupt genau? Zwei sich ergänzende Blickwinkel sind möglich: erstens der aus der Perspektive der Anwender, zweitens der auf die Infrastruktur und die diesbezüglichen Bedürfnisse der Applikation.
Diese Perspektiven finden sich beispielsweise in dem konzeptuellen Framework, das die Marktforscher von Gartner für die unterschiedlichen APM-Aufgabenbereiche entwickelt haben. Im Zusammenhang mit der Anwenderperspektive spricht Gartner von "Enduser Experience Management" oder "Digital Experience Management". Zielgruppe sind hier vor allem die Verantwortlichen für die Webserver und -applikationen, nicht so sehr das Infrastrukturmanagement.
Allerdings landen unbefriedigende Ergebnisse bei derartigen Tests natürlich auf den Schreibtischen der Infrastruktur-Verantwortlichen mit der Maßgabe, alles Mögliche zu tun, um hier Abhilfe zu schaffen. Deren Aufgabe ist es dann oft genug, zu beweisen, dass das Problem tatsächlich nicht bei ihnen, sondern beispielsweise in der Programmierung der Webanwendungen oder in ungenügenden Leistungen des Providers liegt. Auch dafür braucht die IT geeignete APM-Tools.
Kein Anwender will warten
Die anwenderzentrierte Betrachtung der Applikationsleistung beim APM zielt auf den Nutzungskomfort. Eine zentrale Aufgabe ist daher, die Antwortzeiten im gewünschten Rahmen zu halten beziehungsweise sofort zu melden, wenn sie die festgelegten Grenzwerte überschreiten. Die gewünschte Leistung ist auch dann zu erbringen, wenn ein Maximum an Nutzern auf die Anwendung zugreift. Transaktionsabbrüche sollen tunlichst ausbleiben. Gemessen wird also zum einen die Last, zum anderen die Antwortzeit, und dies möglichst unmittelbar.
Ähnliche Ziele verfolgt das Application Service Management, wobei hier die Dienstgüte des Applikationsdienstes für die Anwender in den Mittelpunkt rückt und dementsprechende Parameter gemessen werden, etwa das Ausmaß der Serviceverfügbarkeit.
Für anwenderbezogene Leistungsmessungen gibt es aktive und passive Messmethoden. Bei passiven Methoden werden in der Regel Ports auf ein Gerät gespiegelt und die durchlaufenden Daten gemessen, gefiltert und anschließend analysiert. Die Infrastruktur bleibt also unverändert, Analysen finden außerhalb des Datenweges statt. Aktive Messmethoden kommen beispielsweise für Belastungstests von Webapplikationen zum Einsatz.
Erfasst wird, welche Last Applikation und Infrastruktur problemlos meistern. Hier finden Lastsimulatoren Verwendung, die der Anwendung und den sie tragenden Systemen die gewünschte Last (beispielsweise eine bestimmte Zahl gleichzeitiger Aufrufe, Bestellungen et cetera) vorgaukeln und die damit verknüpften Antwortzeiten messen. Für aktive Messmethoden bedarf es in der Regel fest installierter Agenten auf den Systemen, weshalb sie aufwendiger einzurichten und zu betreiben sind.
Bei der Infrastruktur mitdenken
Der zweite Blickwinkel fokussiert sich auf die Ressourcen, sprich die Systeme und Anwendungen der IT-Infrastruktur, die die analysierte Applikation zum Funktionieren braucht: Welche Prozessorleistung, welche Bandbreite beim Speicherzugriff, welche Netzwerkgeschwindigkeit sind nötig, damit alles läuft wie gewünscht? Gibt es Probleme mit dem genutzten Betriebssystem? Was ist die typische Belastung dieser Ressourcen bei einer bestimmten Verarbeitungslast? Und welche Elemente haben versagt oder sind unterdimensioniert, wenn eine Applikation nicht so arbeitet, wie sie sollte?
Ist bereits eine im Betrieb befindliche Infrastruktur vorhanden, auf der ein APM-Tool zum Einsatz kommt, geht es zunächst darum, alle dort arbeitenden Applikationen überhaupt erst einmal zu finden. Es ist nämlich durchaus nicht klar, dass jeder herumirrende Softwareschnipsel den Administratoren wirklich bekannt ist, gerade wenn es sich um ältere oder selten genutzte Produkte handelt. Erst dann folgt die Frage, ob die Anwendungen normal funktionieren. Gartner spricht in diesem Zusammenhang von Application Discovery, Tracing and Diagnostics.
Sind die Leistungen nicht wie erhofft, gilt es unter Umständen, tiefere Softwareschichten des Stacks genauer unter die Lupe zu nehmen, falls dort die Ursachen für Fehler oder langsames Arbeiten vermutet werden. Solche Deep Dives betreffen in der Regel eher Komponenten der Software-Infrastruktur, etwa Middleware, Messaging- oder Webserver.
Reporting muss sein
Schließlich empfiehlt es sich, die Messungen und ihre Ergebnisse in ein analytisches Berichtsformat zu bringen, das angepasst an den jeweiligen individuellen Bedarf des Nutzers ist. Vor allem sollte auf den Dashboards zur Leistung der Softwarelandschaft sofort deutlich sichtbar sein, wo es brennt und wie wichtig ein Fehler fürs Geschäft ist, um Meldungen zu priorisieren.
Angepasste Sichten für verschiedene Funktionsträger sind sinnvoll: Den CIO oder CFO interessiert vielleicht, welches Schadenspotenzial der Ausfall einer Applikation hat, die Administratoren eher technische Aspekte des Problems. Aus jeder Sicht sollte es aber möglich sein, auf alle darunterliegenden Themen zuzugreifen, sofern die betreffende Rolle dazu berechtigt ist. Das heißt, APM-Tools sollten auch über ein Berechtigungsmanagement hinsichtlich der Informationszugriffe und erst recht hinsichtlich aktiver Eingriffsmöglichkeiten in die Infrastruktur verfügen.
Eine übersichtliche, funktionale Darstellung hilft dem Management dabei, dort einzugreifen, wo das Geschäft am meisten leidet. Und Technologiespezialisten verstehen leichter, was mit den betreffenden Applikationen los ist und können gegebenenfalls die Leistung einzelner Applikationen vergleichen. Beispielsweise lassen sich APM-Tools vor dem Erwerb einer Software auch bei einem Proof of Concept installieren, um die Leistung ähnlicher Applikationen in einem realistischen Umfeld zu testen.
Entscheidend ist der individuelle Bedarf
Plant ein Unternehmen, in ein APM-System zu investieren, sollte es zunächst seinen Softwarebestand kennen. Denn das erworbene Werkzeug muss dazu und zu den konkreten Aufgabenstellungen passen. Viele APM-Tools sind nämlich auf bestimmte Applikationstypen spezialisiert. Grundsätzlich sind zwei Herangehensweisen möglich: Unternehmen entscheiden sich für eine möglichst breit anwendbare Lösung mit großer Funktionsvielfalt und modularer Erweiterbarkeit, die vielleicht auch Tools von Drittanbietern integrieren kann. Oder sie wählen ein Bündel von Spezialtools, die jeweils kleinere Aufgaben so gut wie möglich wahrnehmen (Best of Breed).
In der Praxis handelt es sich hier aber meist nicht um ein Entweder-oder. Nur selten kommt die IT-Abteilung in einer umfangreichen Umgebung mit lediglich einem APM-Tool für alles aus, zumal durch neue Anwendungstypen oder Erbringungsformen immer wieder neue Anforderungen hinzukommen. Vielleicht nutzen Verantwortliche für die interne IT das eine Produkt, für die Cloudbestandteile der Infrastruktur aber die APM-Tools der Hyperscaler.
Wer seine Anwendungslandschaft vorzugsweise aus den Produkten eines Herstellers aufgebaut hat, dürfte eher zum APM-Tool dieses Anbieters tendieren (wenn auch vielleicht nicht als Einziges). Denn der Hersteller kennt seine Softwarelösungen am besten und kann sie deswegen wahrscheinlich am besten analysieren.
Unübersichtlicher Markt
Unschärfen im Markt ergeben sich nicht nur durch Neugründungen, sondern auch durch Aufkäufe, Zusammenschlüsse, OEM-Vereinbarungen und andere strukturelle Veränderungen. So ist CA Application Performance Management nicht nur bei AWS als Service, sondern bei der einst lediglich für Mobil- und Drahtloschips bekannten, inzwischen aber deutlich ausgeweiteten Broadcom als DX Application Performance Management im Programm, da Broadcom CA im November 2018 aufkaufte.
Neben Angeboten der großen IT- respektive Software-Player wie HPE IMC, IBM Cloud App Management, Microsoft Azure Monitor oder Dell Foglight gibt es eine Fülle teils schon lang etablierter APM-Spezialisten wie SolarWinds oder Dynatrace mit einem breiten Spektrum an Monitoringwerkzeugen für die unterschiedlichsten Apps und Umgebungen. Schließlich wachsen immer mehr Anbieter aus anderen Bereichen wie etwa Riverbed oder Cisco (App Dynamics), häufig aus dem Netzwerkmanagement oder der Durchsatzoptimierung, in den APM-Markt hinein.
Etablierte Anbieter modernisieren ihre Produkte inzwischen durch Technologien zur Überwachung von As-a-Service-Angeboten. Ein Beispiel dafür ist IBM, das inzwischen APM auch als Clouddienst und selbstredend zum Management von Cloudapplikationen anbietet. Die Situation ist eine Chance für zahlreiche relativ neue und kleinere APM-Anbieter, die sich auf besondere Themen innerhalb des Marktes fokussieren. Dabei handelt es sich oft um Gründungen beispielsweise aus der Forschungs- oder Open-Source-Community heraus. Gartner prognostiziert beispielsweise, dass bis 2025 die Hälfte des Monitorings von cloudnativen Apps mit Hilfe von freien Produkten erfolgen wird.
Bild 2: Der aktuelle Magic Quadrant von Gartner zeigt ein breites Feld von Anbietern im Bereich APM. Cisco und Dynatrace führen es an.
Zahlreiche Nischenprodukte
Die Vielfalt der APM-Anwendungstypen ist inzwischen sehr groß, sodass für fast jede exotische Aufgabe ein passendes Werkzeug verfügbar ist. Dabei können Anwender heute meist zwischen unterschiedlichen Erbringungsformen (On-Premises-Nutzung per Kauf oder als Mietmodell, reiner Clouddienst et cetera) wählen. Gerade junge Organisationen entscheiden sich von vornherein, aus der Cloud und mit Dienstleistungen zu arbeiten. Auch hier müssen Nutzer die individuellen Bedingungen genau studieren.
Entsteht eine heterogene APM-Landschaft, so ist es wünschenswert, wenn sich die einzelnen Werkzeuge trotzdem in eine einheitliche Überwachungsoberfläche einbinden lassen. Das setzt entsprechende offene Schnittstellen der Werkzeuge voraus. Auch danach sollten IT-Verantwortliche also bei der Bewertung einzelner Produkte fragen. Hier einige Beispiele für spezialisierte APM-Lösungen und ihre Einsatzfelder:
- Wer auf agile Entwicklung von cloudnativen Apps setzt, benötigt ein Werkzeug, das Container und Microservices überwachen kann, wie etwa Epsagon. Arbeiten Organisationen viel mit serverlosen Funktionen von AWS (AWS Lambda), ist Thundras Plattform "Application Observability and Security" eine Option. Das Tool legt sich wie ein Mantel um die serverlosen Funktionen und erzeugt beispielsweise Topologien von Anwendungen.
- Ist der Aufbau einer komplexen IoT-Umgebung etwa in einer Fabrik geplant, in der vor allem Maschinendaten in Echtzeit erfasst und ausgewertet werden sollen, kann zum Beispiel die Continuous Intelligence Platform von Sumo Logic helfen.
- Opslogic betont die Eignung des eigenen APM-Services für DevOps in AWS-Umgebungen.
- Will ein Unternehmen vor allem die Ladezeit seiner Website im Auge behalten, gibt es inzwischen eine ganze Reihe von Webservices, die meist eine kostenlose Einstiegsversion und umfangreichere, kostenpflichtige Pro-Versionen umfassen. Beispiele sind GTmetrix, SpeedCurve und viele andere. Die Pingdom-Tools von SolarWinds dagegen fallen eher unter die Kategorie der Lastsimulatoren, können aber auch reale Nutzerdaten messen beziehungsweise verarbeiten.
- Geht es um die Transaktionsverarbeitung des Webservers mit dem Onlineshop, bietet Dynatrace entsprechende Tools an.
- Für Kunden, die ihre Anwendungen gern remote, am besten vom Smartphone aus überwachen möchten, ist eventuell Pulseway eine passende Anwendung.
Dies alles sind nur Beispiele. Meist dürften sich für einen Aufgabenbereich auf dem Markt mehrere mögliche Produkte finden. Funktionale Überschneidungen zwischen unterschiedlichen APM-Werkzeugen sind eher die Regel als die Ausnahme. Es ist davon auszugehen, dass die bunte APM-Anbieterlandschaft in nicht allzu ferner Zukunft eine Konsolidierung erfahren dürfte – spätestens dann, wenn die derzeit entstehenden neuen Infrastrukturtypen zum Alltag werden.
Wie überall gilt es bei der Auswahl eines relativ neuen und noch recht unbekannten APM-Produkts zu bedenken, wie groß seine Überlebensdauer beziehungsweise die des Entwicklers ist. Aufkäufe junger Softwareunternehmen sind in der IT-Branche eher die Regel als die Ausnahme. Wie aber genau die Integration einer Software in das Produktportfolio des übernehmenden Unternehmens aussieht, darauf haben die Anwender in der Regel keinerlei Einfluss. Was die wirtschaftliche Nachhaltigkeit angeht, befinden sich Anwender bei einem schon größeren, gereiften Anbieter wohl eher auf der sicheren Seite.
Fazit
APM ist in einer Zeit, in der geschäftlicher Erfolg vom reibungslosen Funktionieren der Applikationen abhängt, unverzichtbar. Aufgrund des eher zersplitterten Markts ist die Aufgabe, ein funktionierendes und lückenloses APM-Toolset zusammenzustellen, allerdings auch recht aufwendig. Denn je nach Applikationsportfolio und Infrastruktur dürfte es kaum mit einem Tool getan sein. Solange sich die digitale Transformation fortsetzt, wird der APM-Markt in Bewegung bleiben.