Container machen agiler

Im Gespräch mit Peter Putz von Dynatrace

Komplexe und dynamische IT-Umgebungen auf Basis von Containern und Microservices stellen deutlich höhere Anforderungen an das Monitoring als herkömmliche Anwendungen, betont Peter Putz, Product Marketing Manager bei Dynatrace, Spezialist für Application Performance Management. Abhilfe versprechen Monitoring-Lösungen, die auf KI-Algorithmen zurückgreifen.
Peter Putz: Product Marketing Manager bei Dynatrace
Quelle: Dynatrace
Computerworld: Herr Putz, welche speziellen Anforderungen in Bezug auf das Performance-Management stellen Container und Kubernetes?
Peter Putz: Kubernetes und Container sind Technologien, die agile Software-Entwicklungsprozesse und skalierbare Microservice-Architekturen möglich machen. Monolithische Applikationen waren im Vergleich dazu relativ statisch. Performance-Testing beschränkte sich bei ihnen auf wenige, gut beherrschbare Szenarien und Parameter.
Demgegenüber sind Microservice-Applikationen mit Tausenden von Containern, die in der Cloud dynamisch und automatisch repliziert oder abgeschaltet werden, hochkomplexe Systeme. Damit sind auch Leistungsengpässe nicht mehr so einfach zu diagnostizieren.
Computerworld: Durch welche Faktoren können solche Engpässe verursacht werden?
Putz: Es kommen mehrere Punkte infrage: Ist ein bestimmter Service schlecht implementiert? Liegt es an der Container-Orchestrierung? Oder an den Cloud-Ressourcen? Gibt es ein regionales oder globales Problem? Tritt das Problem temporär oder kontinuierlich auf? Zudem ist es wichtig, Kostenfaktoren im Auge zu behalten. Cloud-Umgebungen können fast unbeschränkt Ressourcen zur Verfügung stellen, was aber natürlich seinen Preis hat. Dementsprechend stehen Cloud-Architekten vor der Herausforderung, Skalierbarkeit, Performance und Kosteneffizienz parallel zu optimieren.
Computerworld: Erschweren Cloud-Umgebungen, in denen Container und Kubernetes eingesetzt werden, ein End-to-End-Monitoring?
Putz: Alle etablierten Cloud-Service-Provider bieten mittlerweile native Kubernetes-Implementierungen an. Zudem unterstützen sie die Verwendung von Open-Source-Versionen wie Kubernetes und Rancher sowie kommerzielle Distributionen wie Red Hat OpenShift oder Pivotal Cloud Foundry. Monitoring-Lösungen sollten idealerweise das gesamte Ökosystem abdecken. Zudem ist zu bedenken, dass viele Unternehmen nicht nur auf einen Cloud-Anbieter setzen, sondern zunehmend auf hybride Multi-Cloud-Infrastrukturen. Für ein wirkliches End-to-End-Monitoring sind also Tools notwendig, die Transaktionen lückenlos durch unzählige Microservices verfolgen können, die in verschiedenen Cloud- und On-Premise-Umgebungen laufen, Stichwort Distributed Tracing.
Computerworld: Welche Tools stehen Anwendern zur Verfügung, um Leistungsbremsen zu identifizieren und zu beseitigen?
Putz: Anwender können auf viele Open-Source-Werkzeuge zurückgreifen, die unterschiedliche Aspekte im Bereich Monitoring von Kubernetes abdecken. So gibt es spezielle Tools für Metriken, Logs, Traces und Dashboarding.
Computerworld: Worauf müssen Unternehmen achten, wenn sie eine Performance-Monitoring-Lösung für Container, Kubernetes und Microservices beschaffen wollen?
Putz: Wesentliche Kriterien für die Auswahl sind ein automatisches Erkennen von dynamischen Abhängigkeiten zwischen Microservices, Pods und Containern zu unterschiedlichen Zeitpunkten sowie eine zusammenhängende Analyse von unterschiedlichen Monitoring-Daten. Dazu gehören Metriken, Logs, Events, ein Distributed Tracing und eine Analyse des Verhaltens von Services aus Sicht des Nutzers, das User-Experience-Monitoring. Wichtig ist zudem, dass eine Monitoring-Lösung unterschiedliche Entwicklungsumgebungen und Software-Plattformen abdeckt, beispielsweise .NET Core, Node.js, Golang, Python und Java. Eine weitere Anforderung ist eine automatische Fehler-Erkennung.



Das könnte Sie auch interessieren