Application Performance Management mit New Relic Leistungsüberwachung von Cloud-Apps

Autor / Redakteur: Michael Matzer / Florian Karlstetter

Application Performance Management (APM) ist eine Software für das Management von IT-Services, mit der sich Cloud-, On-Premises- und Hybridanwendungen sowie die IT-Infrastruktur intelligent überwachen, analysieren und steuern lassen. Admins können damit das Benutzererlebnis überwachen, die Stabilität der Anwendungsinfrastruktur steigern und Ausfällen vorbeugen. New Relic hat eine neue Version seiner APM-Lösung veröffentlicht.

Anbieter zum Thema

Ein Dashboard in New Relic Insights mit beispielhaften Visualisierungen, die für den Ereignistyp MobileRequestError erzeugt werden können.
Ein Dashboard in New Relic Insights mit beispielhaften Visualisierungen, die für den Ereignistyp MobileRequestError erzeugt werden können.
(Bild: ®New Relic)

Die Kundenzufriedenheit ist für immer mehr Unternehmen von oberster Priorität, insbesondere im E-Commerce oder auf Online-Buchungsportalen. Um sie aufrechtzuerhalten, ist es unerlässlich, Problemursachen in den IT-Systemen wie auch in den Cloud-Anwendungen aufzuspüren. Das Werkzeug, das die Überwachung und Wartung von Cloud-Anwendungen erlaubt, ist Application Performance Management (APM).

Es gibt zahlreiche Anbieter von APM-Lösungen, so etwa IBM, Oracle, Materna und New Relic. Ihre Nutzer sind u.a. Admins und Software-Entwickler. In unterschiedlicher Ausprägung bietet ein APM-Paket mehrere zentrale Vorteile. Dazu gehört die Messung der Anwendungsleistung aus der Benutzerperspektive, das Verhalten der Anwendungsleistung während der tatsächlichen Geschäftstransaktion; die Diagnose von Engpässen und Leistungseinbußen; analytische Einblicke zum Management dynamischer Trends; das Erkennen von Anwendungskomponenten in Systemumgebungen und die Vorhersage von möglichen Ausfällen, sei es von VMs, Mikroservices oder ganzen Anwendungen.

Für den Admin einer Unternehmens-Website ist APM ein unerlässliches Werkzeug. Durch Ergänzung mit Infrastructure Performance Management (IPM) und Application Testing kann er das Gesamtbild, das er von seiner Cloud-Umgebung erhalten will, erweitern, etwa um eine Planungskomponente.

New Relic APM

Seit 2017 ist die 2008 gegründete Firma New Relic auch im deutschsprachigen DACH-Raum tätig, hier ist Oliver Manojlovic der Manager für die Region. Dass eine hohe Nachfrage nach APM-Services besteht, belegen die Geschäftszahlen. Im Fiskaljahr 2017 (endete 31.3.2017) stieg der Umsatz um 45 Prozent auf einen Jahresumsatz von über 263 Mio. USD. Dieser soll bis zum 31.3.2018 auf 344 Mio. USD steigen, was einem Wachstum von 31 Prozent im wiederkehrenden Jahresumsatz entspräche.

New Relic bietet eine sogenannte „Digital Intelligence Platform“, die APM, IPM und Analytics („Insights“) umfasst, und betreibt diese Plattform ausschließlich in der Cloud. Das Betriebsmodell ist hybrid, das heißt, die Kunden können ihre wertvollen Daten weiterhin im eigenen Hause halten und schicken an das APM von New Relic lediglich ihre anonymisierten Nutzungsdaten (ohne IP-Adressen) an das Rechenzentrum in Chicago. Die Anwender sind nach Angaben von Oliver Manojlovic nicht nur Admins und Entwickler, sondern auch CEOs, CIOs, das Marketing, Produktmanager und mehr. Sie arbeiten in Branchen mit „hohem Reifegrad hinsichtlich der digitalen Transformation“, etwa im E-Commerce, in Buchungsportalen, aber auch im Automobilbau, in den Medien und im europäischen Mittelstand.

Die APM-Werkzeuge

Nutzer können in konfigurierbaren Dashboards mit der Query Language Suchabfragen formulieren und starten, die ergebnisoffen sind. Für verschiedene Aufgaben wie etwa Monitoring oder Ursachensuche können sie Widgets nutzen, etwa für Analysen. Diese Analysen können historisch, Real-time oder prädiktiv orientiert sein. Es ist also möglich, Vorhersagen über mögliche Ausfälle zu machen.

Generiert werden die Daten vor Ort in den Kundensystemen mithilfe von New Relic-spezifischen Agenten. Das sind kleine, schlanke Stücke Software, die Verbindung zum Rechenzentrum in Chicago haben. In Kürze soll auch ein Rechenzentrum in Deutschland hinzukommen. Da die Agenten so klein sind, erzeugen sie keine Overhead-Einbußen hinsichtlich der Performance und des I/O-Durchsatzes. „Ein Update des jeweiligen Agenten dauert höchstens zehn Minuten und erfolgt automatisch“, so Oliver Manojlovic. „Der TCO sei also sehr niedrig, die Lösung stehe nach wenigen Stunden zur Verfügung.“

Bildergalerie
Bildergalerie mit 14 Bildern

Transaktionen, Datenbankaufrufe, Protokolle, Application Requests

Für die Effektivität des APM müssen möglichst viele Daten erfasst werden. Ein New Relic-Agent erfasst Transaktionen, Datenbankaufrufe, Protokolle, Application Requests komplett, d.h. es werden keine Stichproben (Sampling) genommen. Die Performance von JVM(s) und HTML5-Code lässt sich damit überwachen, analysieren und verbessern. Das gilt auch für Single-Page-Applikationen auf Mobilgeräten. Dort gelangen ja ebenfalls Webseiten zu Anzeige und Ausführung.

Für eine Shop-Webseite ist etwa die Performance von erfolgsentscheidender Bedeutung, die sich in der Ladezeit der Webseiten ausdrückt. Lädt eine Seite zu lang, weil etwa versteckte, umfangreiche Medien-Dateien von einem anderen Rechenzentrum geladen werden, dann kann dieser Flaschenhals identifiziert und hoffentlich beseitigt werden.

Eine Cloud-Infrastruktur ist eine hochdynamische Umgebung. Ständig ändern sich VMs, IP-Adressen, Speicherzuweisungen, Nutzerzahlen, Speicher, von Ausfallzeiten ganz zu schweigen. Das APM von New Relic zeigt Konfigurationsänderungen an und erlaubt die Ursachensuche. Manchmal werden IT-Leiter nicht über Ereignisse wie bevorstehende Marketing-Kampagnen in Kenntnis gesetzt, die viel Traffic generieren, dann ist guter Rat teuer.

Das Monitoring von Cloud- und Mobile-Anwendungen kann nicht nur real vor Ort, sondern auch „synthetisch“ erfolgen. Manojlovic: „Die Prüfung erfolgt extern mit einem Ping-Test, der die Verfügbarkeit einer Seite prüft, mit einem Antwortzeitentest, einem Endlosschleifen-Test und vielen mehr.“ Ein reiner Funktionstest sei nicht transparent genug, denn er berücksichtige meist keine Ladezeiten im Hintergrund, die Antwortzeiten verlängern. Abgestürzte Mobil-Apps werden untersucht, dabei kann auch das Infrastruktur-Monitoring (on-premise) hinzugezogen werden.

New Relic Insights und Alerts

Ganz wichtig sind nach Manojlovics Ansicht die Analysen und die Alerts, die die Lösung erstellt. Während die Kunden ihre Reports selbst erstellen und diese gegebenenfalls den Beratern schicken, werden die Alerts als Service von New Relic automatisch erstellt und verschickt.

New Relic hat den „Dynamic Baseline Alert“ (DBA) entwickelt. Dieser auf Machine Learning basierende Algorithmus erzeugt aus historischen und aktuellen Daten einen „Normalfall“ als Baseline und lässt auf dieser – lernenden, anpassbaren – Basis nicht nur Was-wäre-wenn-Szenarien zu, sondern auch Vorhersagen.

Das „Projekt Seymour“, das diesen Machine Learning Algorithmus umfasst, ist in der Lage, selbständig Problemzonen zu suchen und Ratschläge zu erteilen. Für einen Saison-Höhepunkt wie den Black Friday werden selbstverständlich Engpässe, Ausnahmen und Gegenmaßnahmen empfohlen. Im B2B-Bereich wirkt sich ein Flaschenhals sofort auf die Erfüllung der Service Level Agreements (SLAs) aus und kann zu Konventionalstrafen gegen den Provider führen. New Relic garantiert 99 Prozent Uptime und praktisch keine Ausfallzeiten. „New Relic bietet entweder direkt oder durch sein Partnernetzwerk ergänzende Dienstleistungen an“, so Manojlovic.

Bildergalerie
Bildergalerie mit 14 Bildern

Preisgestaltung

Im August 2016 schaffte New Relic das Einheitspreismodell ab und ersetzte es durch die Cloud Pricing Option, die flexibel ist und sich an der realen Nutzung orientiert. Der Preis richtet sich nach dem Umfang der Instanz, auf der die überwachte Anwendung läuft, und nach der Dauer, die sie mit New Relic verbunden ist. Der Begriff „Instanz“ betrifft nur VMs, die in der Public Cloud laufen, also nicht Container oder JVMs.

Danach berechnet sich die Maßeinheit Compute Unit (CU) wie folgt:

Anzahl der CUs = (Anzahl der CPUs + Anzahl von GB RAM) mal Nutzungsdauer in Stunden.

Ein Beispiel: Man nutzt New Relic APM auf einer Applikation, die auf einer AWS t2.micro-instance läuft, die 24x7 in Betrieb ist. Eine AWS t2.micro-instance verfügt über 1 virtuelle CPU und 1 GB RAM. Bei einer Nutzungsdauer von 750 h pro Monat ergibt sich folgende Berechnung:

Anzahl der CUs = (1 CPU + 1 GB RAM) x 750 Stunden = 1500 CUs. Mit wieviel Dollar eine CU zu Buche schlägt, nennt New Relic allerdings nicht. Wahrscheinlich gibt es dafür pro Kunde Vereinbarungen.

Cloud Pricing ist also kein Pay-as-you-go-Modell; die Kunden schätzen im Voraus und zahlen für eine zugewiesene Anzahl von CUs pro Monat. Für die schnelle Hinzunahme von Kapazitäten (Bursting) und das Host-Pricing gibt es gesonderte Modelle.

(ID:44936115)