Anwendungs-Leistungsmanagement in DevOps

Anwendungs-Leistungsmanagement in DevOps

  • ITOps & DevOps
6 Minuten Lesezeit Aktualisiert Feb 28, 2019

Auf einen Blick: Application Performance Management (APM) ist in DevOps entscheidend und ermöglicht Echtzeitüberwachung, um die Nutzererfahrungen zu verbessern und die Zusammenarbeit zwischen Entwicklungs- und Betriebsteams zu fördern. APM hilft, Probleme zu identifizieren, zu isolieren und zu diagnostizieren und so schnelle Reaktionen auf Leistungsherausforderungen zu gewährleisten.

  • APM verbessert die Agilität bei der Anwendungsbereitstellung.
  • Es unterstützt eine kontinuierliche Integration und Überwachung der Nutzererfahrungen.

In einer Zeit, in der Unternehmen sich auf den Paradigmenwechsel einer DevOps-Kultur einlassen, lernen moderne Fachleute den Wert von Microservices. Die Microservices-Architektur in Kombination mit Containern erleichtert es Entwicklern, Infrastrukturumgebungen, Anwendungsumgebungen und Ressourcenkonfigurationen mit Code zu standardisieren und zu automatisieren. Eine Möglichkeit, wie dies geschieht, ist das Anwendungsperformance-Management. Application Performance Management, allgemein bekannt als APM, wird auch manchmal als Application Performance Monitoring bezeichnet. Ein zentrales Element von DevOps, APM ermöglicht es Entwicklern und Stakeholdern von Operationsprojekten, das Backend von Anwendungen in Echtzeit zu überwachen und zu überprüfen. Mit APM-Tools können Entwickler schneller auf Fehler und Engpässe reagieren. Im folgenden Artikel werden wir APM untersuchen durch:

  • Definition der DevOps-Kultur und -Methodik
  • Erkundung, was APM ist und wie es in ein DevOps-Framework passt
  • Betrachtung des geschäftlichen Werts von APM
  • Diskussion über die Bedeutung von APM für Unternehmensunternehmen

Lesen Sie weiter, um die Fakten zum Leistungsmanagement und -monitoring von Anwendungen zu erfahren:

DevOps-Kultur und -Methoden

DevOps ist ein Kernsystem von Geschäftspraktiken, das die IT-Entwicklung stärkt, indem es Zusammenarbeit, Kommunikation und Integration zwischen Entwicklungsteams und operativen Stakeholdern in den Mittelpunkt stellt. Das Erste, was Geschäftsleiter bei DevOps tun müssen, ist, alte Denkweisen über Entwicklung und deren Rolle innerhalb der Organisation abzuschaffen. DevOps zentriert die IT-Abteilungen, indem es sie mit Unterstützung und Zusammenarbeit aus dem Betrieb stärkt, statt des sprichwörtlichen Kopfstoßes, das oft die Geschäfte von gestern erwartete. In DevOps werden Fingerzeigen und Fragen von Transparenz und Verantwortlichkeit durch Microservices ersetzt, die banale Aufgaben automatisieren und so eine bessere Kommunikation und Zusammenarbeit zwischen den Abteilungen ermöglichen. Indem sie sich den Prinzipien der kontinuierlichen Integration und kontinuierlichen Entwicklung verpflichten, werden Entwickler dazu ermutigt, auf das nächste Ziel hinzuarbeiten. Das Ergebnis eines richtig implementierten DevOps-Ansatzes ist die Agilität und Flexibilität, ständig Softwareentwicklungen zu liefern. Mit der Geschwindigkeit der Anwendungsentwicklung im Zentrum jedes Sprints ist APM zum aufsteigenden Stern von DevOps geworden.

APM-Methodik

In DevOps hat jeder APM drei Hauptziele zur Überwachung: Probleme zu identifizieren, Probleme zu isolieren und durch Ursachendiagnose zu lösen. Hier ein genauerer Blick auf jedes Modell:

Problemeerkennung

Das APM-Framework verbessert das Nutzererlebnis, indem es proaktiv Probleme überwacht, bevor ein Problem auftritt. Es gibt verschiedene Arten von Überwachungstools, die Unternehmen je nach Bedarf nutzen können. Diese Tools arbeiten auf Infrastruktur- und Anwendungsebene und können passive Lösungen wie Nutzererfahrungsüberwachung oder proaktive Lösungen wie synthetisches Monitoring anbieten, bei denen die Nutzerinteraktionen synthetisiert werden, um Probleme aufzudecken. Dies erfordert End-to-End-Discovery-Dienste, die alle Nutzerkontaktpunkte und Backend-Aktivitäten überwachen, um Probleme bei Auftreten zu erkennen.

Isolierende Probleme

Sobald Probleme entdeckt und identifiziert wurden, müssen sie von der Umgebung isoliert werden, um die Gesamtauswirkung des Problems zu verringern und es zu beheben. Ein APM sollte die Bereitstellung von Code in jede Umgebung verfolgen und Analysen bereitstellen. Dies ermöglicht es Entwicklern, Fehlerbehebungen zu verfolgen und die beste Lösung zu testen.

Diagnose

Ein Problem, das mit beliebig vielen automatisierten Microservices zur Überwachung erkannt, identifiziert und isoliert wurde, wie die oben beschriebenen, ist bereit zur Diagnose. Dies ist die Stufe, in der die Überwachung von den Betriebsinteressengruppen an die Entwickler übergeben wird, um auf das erkannte Problem zu reagieren. Während dieser Phase können Entwickler Probleme auf Codeebene diagnostizieren, sie können Datenprotokolle zur Unterstützung der Diagnose überprüfen, sie können Chat-Kommunikation mit Betriebsstakeholdern über Kollaborationstools nutzen oder sich auf maschinelle Lerndaten verlassen, um Fehler zu markieren.

Weitere Definition von APM und seiner Rolle in DevOps

Wenn DevOps auf größere Agilität sowie Genauigkeit und Geschwindigkeit der Anwendungsentwicklung hinausgeht, dann hat APM für jedes Unternehmen, das diese Denkweise übernommen hat, einen intrinsischen Geschäftswert. Das liegt daran, dass APM eine wichtige Rolle dabei spielt, immer wieder eine fehlerfreie Endnutzererfahrung in einer kontinuierlichen Lieferumgebung zu liefern. All das unterstützt die Ziele von DevOps. So lautet es:

APM und Anwendungsabhängigkeiten

Zwischen Systeminfrastruktur und anderen Diensten, Microservices, Middleware und Bibliotheken haben Anwendungen eine Reihe von Abhängigkeiten. Es ist wichtig, dass Entwicklungsteams eine Möglichkeit haben, die Konfigurationen all dieser integrierten Systeme und Prozesse zu unterstützen. Das gilt besonders angesichts der raschen Einführung von Containern und virtuellen Maschinen in einen bereits hochintegrierten Bereich. Da all diese Ressourcen aufeinander angewiesen sind, ist es unerlässlich, dass Konfigurations- und Anwendungsabhängigkeiten überwacht werden. Um das bestmögliche Nutzererlebnis zu schaffen, müssen Entwicklung und Betrieb zusammenarbeiten, um alle Teile zu überwachen und zu warten, die die gesamte Infrastruktur bilden. Mit Anwendungen Performance-Management-Tools steht Unternehmensunternehmen ein hohes Maß an Überwachung als Microservice zur Verfügung.

Planung für Nutzungsszenarien

Auch wenn es unmöglich ist, all die Dinge vorherzusehen, die man wissen muss, um Ihre Anwendung zu verwalten, wie plötzliche Besucheranstiege oder plötzliches Interesse an einer bestimmten Funktion oder einem Produkt, können Betriebs- und Entwicklungsteams durch die Implementierung von DevOps-Best Practices innerhalb eines APM-Frameworks einen besseren Überblick über erwartete Nutzermuster und Verkehrsspitzen gewinnen. Dies geschieht durch Tools, die Nutzer in Echtzeit überwachen und es Entwicklern ermöglichen, schnell auf ungewöhnliches Nutzerverhalten zu reagieren.

Verwaltung der Anwendungsauslieferung

Schließlich ermöglichen APM-Tools dem DevOps-Team, das zu verwalten, was am wichtigsten ist: die Anwendungslieferung. Dies wird erreicht, indem ein Kommunikations- und Kooperationsumfeld zwischen allen an der Anwendung Beteiligten geschaffen wird – sei es Nutzer, Projektstakeholder, QA-Tester oder Entwicklungsteams. Jeder, der für den Erfolg der gelieferten Anwendung wichtig ist, ist Teil eines Kreislaufs nützlicher Rückmeldungen. Dies ermöglicht den Teams effektiv:

  • Berücksichtigen Sie alle Variablen, wie zum Beispiel wechselnde Bereitstellungsmodelle und Endpunkte.
  • Koordiniere zwischen den Teams, die für die Konfiguration der Umgebung in jedem Schritt des Entwicklungsprozesses verantwortlich sind.
  • Testen Sie mit mehreren gängigen Validierungen, wie Performance- oder Pre-Production-Tests, mit Transparenz.
  • Aktualisieren Sie die Anwendung für neue Funktionen und Validierungen, sobald sie bereitgestellt werden.

Aus diesen Gründen ist ein solides APM-Framework unerlässlich, um einen reibungslosen Anwendungslieferprozess für DevOps-Teams zu erreichen.

Die Bedeutung von APM für Unternehmensunternehmen

Ein APM ist ein unverzichtbares Werkzeug, um einen DevOps-Fokus in Ihrer Organisation zu übernehmen. Auch wenn es kein neues Produkt für den Ressourcenmarkt für Unternehmensunternehmen ist, sind APMs erst kürzlich über ein rein operatives Werkzeug hinausgewachsen, dank der durch DevOps geschaffenen Brücke zwischen Betriebs- und Entwicklungsteams. Mit einer neu implementierten DevOps-Denkweise kann eine richtig implementierte APM-Instanz sowohl Betriebs- als auch Entwicklungsteams wichtige Informationen und Zusammenarbeit bieten. Das Ergebnis ist, dass Entwicklungsteams in der Entwicklungsphase mehr Zugang zu Feedback, Daten und Analysen haben, als sie normalerweise erst nach der Produktion einer Anwendung hätten. Die Natur von APM-Frameworks ergänzt DevOps natürlich. Ein Beispiel dafür, wie in diesem Artikel beschrieben, ist, wie die Nutzung von APM Entwicklern helfen kann, zu verstehen, was sie aus Sicht der Benutzerplanung erwarten können, sodass sie Notfallpläne vor der Veröffentlichung einbauen können. Dies wird durch die kontinuierliche Bereitstellung von Funktionen unterstützt, die für DevOps charakteristisch ist. Selbst nachdem eine Anwendung geliefert wurde, ermöglichen die verbesserten Überwachungsfunktionen von APM eine schnelle Identifizierung, Isolation, Diagnose und letztlich die Lösung frustrierender Fehler und Engpässe, die sonst die Nutzererfahrung beeinträchtigen würden. In dieser Hinsicht ist ein APM ein unverzichtbares Werkzeug, um DevOps-Teams mit den Lieferzielen in Einklang zu bringen, während man sich dennoch auf Probleme früherer Releases konzentrieren kann.

BMC: Ihre DevOps-Partner

Wenn das Staging Ihrer Organisation für DevOps Sie völlig überfordert hat, sind Sie nicht allein. Mit vielen Frameworks und Microservices zur Auswahl scheinen die Möglichkeiten endlos. Die DevOps-Experten von BMC unterstützen Sie in jeder Phase Ihres Übergangs. Mit BMC als DevOps-Partner sind Sie auf dem besten Weg, Ihre Release-Zeiten radikal zu verkürzen und Ihre DevOps-Organisation reibungsloser laufen zu lassen. Sie haben alle Werkzeuge zur Hand, um alles zu tun – vom Aufbau kollaborativer Workflows bis hin zur Orchestrierung dieser Workflows.

DevOps-Leitfaden

  1. Was ist DevOps? Eine umfassende Einführung
  2. Eine kurze Geschichte von DevOps
  3. Einführung in die DevOps-Architektur
  4. Automatisierung in DevOps: Warum und wie man DevOps-Praktiken automatisiert
  5. Was ist CI/CD? Kontinuierliche Integration und kontinuierliche Lieferung erklärt
  6. Wie man eine CI/CD-Pipeline mit Jenkins aufbaut
  7. DevOps-Metriken zur Optimierung von CI/CD-Pipelines
  8. Kontinuierliche Liefermetriken
  9. Ist Continuous Integration in Continuous Deployment ein Fortschritt – oder nicht?
  10. Unterschiede zwischen Continuous Integration (CI), Delivery (CD) und Deployment
  11. Quellcode und Versionskontrolle in DevOps
  12. Was ist kontinuierliche Testung?
  13. Testautomatisierungs-Frameworks: Der ultimative Leitfaden
  14. Release Management in DevOps
  15. Erklärt: Monitoring & Telemetrie in DevOps
  16. Anwendungs-Leistungsmanagement in DevOps
  17. DevOps-Orchestrierung im SDLC
  18. Einführung in Datenbank-DevOps
  19. Die Rolle der Microservices in DevOps
  20. Die Rolle der Virtualisierung in DevOps
  21. Container & DevOps: Wie Container in DevOps-Lieferpipelines passen
  22. Was ist eine Containerpipeline?
  23. Was ist eine DevOps-Toolchain?
  24. Verwaltung von Containern und Code für DevOps
  25. Die Rolle von Agile in DevOps
  26. Die Rolle der Cloud in DevOps
  27. Was ist FinDevOps?
  28. Top-DevOps-Trends im Jahr 2022
  29. DevOps-Werte & Prinzipien
  30. DevOps-Kennzahlen und KPIs
  31. DevOps-Ratschläge für kleine, mittlere und große Organisationen
  32. DevOps-Teamstruktur
  33. Top-DevOps-Bücher, die man heute lesen sollte
  34. Buchrezension von The Phoenix Project: DevOps For Everyone
  35. DevOps-Influencer: 11 DevOps-Experten, denen Sie auf Twitter folgen können
  36. GitHub, GitLab, Bitbucket & Azure DevOps: Was ist der Unterschied?
  37. Best Practices: Wie man Anwendungen für Kubernetes architekt
  38. Konfigurationsmanagement in DevOps
  39. DevOps-Verzweigungsstrategien erklärt
  40. DevOps-Jobbezeichnungen, Rollen und Verantwortlichkeiten
  41. Testen in DevOps: Konzepte, Best Practices und mehr
  42. Der vollständige DevOps-Zertifizierungsleitfaden für 2022
  43. Was ist das Kubernetes-Operator-Muster?

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus ITOps & DevOps

Interessieren Sie sich für mehr von BMC?

The Brief ist unsere monatliche E-Mail zum Mainframe und zur Enterprise-Orchestrierung: Recherchen, Kundenberichte, Produktnachrichten, Events.

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Sie haben The Brief abonniert

Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.