Von JF Joly
Kubernetes ist eine bemerkenswerte Erfolgsgeschichte: Knapp drei Jahre nach ihrer offiziellen Einführung ist die Container-Orchestrierungstechnologie heute aus Tausenden von Unternehmen mit containerbasierten Anwendungsarchitekturen nicht mehr wegzudenken.
Doch so erstaunlich dieser Erfolg auch sein mag, wir fangen gerade erst mit Kubernetes an: Angesichts der momentanen Entwicklung gehen wir davon aus, dass unsere Kunden schon in wenigen Jahren Container-Orchestrierung in einer Größenordnung einsetzen werden, die heute übliche Bereitstellungen bei Weitem übersteigt.
Die Herausforderungen bei der Überwachung der Kubernetes-Performance
Dabei stellen sich schon heute viele Kunden den Herausforderungen, die der Betrieb umfangreicher Kubernetes-Umgebungen mit sich bringt. Sie sind begeistert von den Möglichkeiten, die Kubernetes bietet, befürchten aber, den Überblick über den Zustand und die Performance ihres System zu verlieren.
Denn mit zunehmender Größe und Komplexität der Kubernetes-Umgebung wird es immer schwieriger, einige grundlegende – aber auch sehr wichtige – Fragen zu beantworten: Wie ist der Zustand meines Clusters? Wie sehen die Hierarchie und der Zustand der Elemente (Knoten, Pods, Container und Anwendungen) in meinem Cluster aus? Wir finden, unsere Kunden sollten unbedingt über die Werkzeuge verfügen, die ihnen aussagekräftige Antworten auf diese Fragen liefern. Nur so können sie den Zustand und die Performance ihrer Kubernetes-Umgebung proaktiv überwachen – unabhängig von deren Größe und Komplexität.
Außerdem stellt sich die Frage, wie ein Team seine Fehlerbehebungsprozesse an das Wachstum seiner Kubernetes-Umgebung anpassen kann. Es ist meist schon schwierig genug, die Abhängigkeiten zwischen Anwendungen und der Infrastruktur zu durchschauen oder die vielen Einheiten – Container, Pods, Knoten, Bereitstellungen, Namespaces usw. – zu verwalten und zu untersuchen, die bei der Fehlerbehebung eine Rolle spielen können. Je komplexer die Umgebung wird, desto aufwendiger und teurer ist es auch, auftretende Probleme zu erkennen und zu beheben – und zwar möglichst bevor sie für die Kunden spürbar werden.
Unsere Lösung: der Kubernetes Cluster Explorer
Um diese Herausforderungen zu bewältigen, brauchen Betriebs- und Entwicklungsteams bessere Werkzeuge für die Darstellung und Überwachung des Zustands ihrer Kubernetes-Umgebung. Wir freuen uns, heute ein innovatives Tool für die kuratierte Visualisierung von Umgebungen vorzustellen, das diesen Anforderungen gerecht wird: den New Relic Kubernetes Cluster Explorer.
Der New Relic Cluster Explorer bietet unseren Kunden eine leistungsstarke und innovative Lösung für die mit dem Betrieb umfangreicher Kubernetes-Umgebungen verbundenen Herausforderungen.
Der Cluster Explorer erweitert die vorhandenen Kubernetes-Überwachungsfunktionen der New Relic-Plattform. Er nutzt erweiterte Filter-, Sortier- und Suchfunktionen zur Untersuchung der Beziehungen und Abhängigkeiten der Kubernetes-Entitäten innerhalb einer Umgebung und unterstützt Datenvisualisierungstechniken, mit deren Hilfe die Kunden ihre Fragen anhand intuitiver Darstellungen ihrer Kubernetes-Umgebung rasch beantworten können. Damit stellt er eine leistungsstarke und innovative Lösung für die mit dem Betrieb umfangreicher Kubernetes-Umgebung verbundenen Herausforderungen dar.
Schon viele Teams haben versucht, diese Herausforderungen alleine zu bewältigen – meist mit irgendeiner Kombination von Silo-Produkten, Kubernetes-Dashboards und selbst entwickelten Skripts zur Verknüpfung unterschiedlicher Komponenten. Doch solche Lösungen sind in der Regel uneinheitlich, bieten kaum Kontext und können nur von einigen wenigen Ingenieuren im Unternehmen genutzt werden.
Der Cluster Explorer bietet Ihrem Team schnellere Fehlerbehebung, mehr Performance und Konsistenz sowie eine effektive Möglichkeit, den Betrieb umfangreicher Kubernetes-Umgebungen zu vereinfachen. New Relic sorgt dafür, dass Ihre Cluster wie erwartet laufen und Performance-Probleme innerhalb Ihres Clusters rasch erkannt werden – noch bevor sie Ihre Kunden spürbar beeinträchtigen.
Besserer Einblick in den Zustand und die Performance von Kubernetes
Der Cluster Explorer stellt die Cluster mehrdimensional in einer hochpräzisen, kuratierten Benutzeroberfläche dar, in der das Team die Daten und Metadaten selbst komplexester Kubernetes-Umgebungen ganz einfach untersuchen kann. Auf diese Weise lassen sich die Performance und die Abhängigkeiten in jeder Kubernetes-Umgebung überwachen und Fehler, Engpässe und andere Auffälligkeiten rasch beheben – damit Ihre Anwendungen stets verfügbar sind, schnell laufen und ihren Zweck erfüllen.
Der Cluster-Explorer bietet eine Übersicht des gesamten Clusters in einer Ansicht, die sich bei Bedarf aber auch mühelos auf Hotspots innerhalb des Clusters fokussieren lässt – wobei die entscheidenden Elemente in der Mitte des Fensters angezeigt werden. Der Cluster wird in Form vier konzentrischer Ringe dargestellt:
- Der äußere Ring zeigt die Knoten des Clusters und ihre jeweilige CPU-, Speicher- und Datenspeicher-Performance an. So haben Sie den allgemeine Zustand der Knoten stets im Blick.
- Der nächste Ring liefert Informationen über die Verteilung und den Status der einem ausgewählten Knoten zugeordneten Pods.
- Im dritten Ring werden Pods angezeigt, die zwar noch laufen, aber eine Alarmschwelle überschritten haben, die auf bestehende Probleme hindeuten kann.
- Der innere Ring schließlich enthält Pods, die nicht aktiv sind oder die Kubernetes nicht zuordnen kann, zum Beispiel weil nicht genügen Ressourcen verfügbar sind oder ein falsches Container-Image angegeben wurde.
Schnellere und effektivere Fehlerbehebung
Wir bei New Relic wissen, wie wichtig es ist, dass unsere Kunden über den Zustand und die Performance ihrer Kubernetes-Entitäten Bescheid wissen. So ist es beispielsweise sinnvoll, den Zustand einer Umgebung während der Hauptgeschäftszeiten oder vor dem Zuweisen einer Bereitstellung oder eines Namespace für ein Team gezielt zu überprüfen. Die Entwicklung der Performance und des Zustands in diesen Momenten sind entscheidende Informationen, die auf potenzielle Probleme in der Kubernetes-Umgebung hindeuten können. Im Idealfall lassen sich solche Probleme so bereits erkennen und beheben, bevor sie das digitale Erlebnis eines Kunden beeinträchtigen.
Wir wissen aber auch, dass der globale Überblick über eine Kubernetes-Umgebung allein für die Fehlerbehebung noch nicht ausreicht. Ein Team muss auch in der Lage sein, die Auswirkungen oder Details eines Fehlers zu identifizieren und bei Bedarf im Cluster vom Knoten über den Pod und den Container bis hinunter zur Anwendung zu navigieren, um die Ursache des Problems zu beheben.
Nehmen wir beispielsweise an, eine Warnmeldung löst Maßnahmen zur Fehlerbehebung aus. In diesem Fall wird sich ein Team zunächst mit dem Cluster Explorer einen Überblick über den betreffenden Kubernetes-Cluster verschaffen und die wichtigsten Beziehungen (etwa zwischen einzelnen Knoten und Pods) untersuchen. Anschließend kann es sich auf einen oder mehrere Pods konzentrieren, den Zustand und die Performance einzelner Container und ihrer Anwendungen beobachten und gezielt den Kubernetes-Namespace oder die Kubernetes-Bereitstellung in Augenschein nehmen. Außerdem kann das Team den Cluster Explorer nutzen, um Wechselwirkungen zwischen Anwendungen und der Infrastruktur zu untersuchen, wenn beispielsweise ein hoher Anwendungsdurchsatz eine hohe CPU-Auslastung durch den Container verursacht. Ein weiteres Anwendungsbeispiel ist die Erkennung von Hot Spots, an denen sich Pod-Instanzen aus einem Replicaset auf einem Host ballen – und die sich mithilfe von Antiaffinitätsregeln auflösen lassen.
Das Cluster Explorer-Erlebnis: für jeden etwas
Ein einfacher und intuitiver Überblick über die Performance und den Zustand des Systems ist für alle Mitarbeiter des Management-Teams einer Kubernetes-Umgebung enorm hilfreich.
Die Entwickler können mit dem Cluster Explorer Wechselwirkungen zwischen Anwendungen und der Infrastruktur aufdecken und untersuchen: Weisen Anwendungslatenzen auf Fehler innerhalb der Anwendung hin, oder werden sie in Wirklichkeit durch ungenügenden Speicher auf der Knoten-, Pod- oder Containerebene verursacht? Den Entwicklern bietet der Kubernetes Cluster Explorer einen besseren Einblick in die an einer Anwendung beteiligten Kubernetes-Objekte (Cluster, Knoten, Namespaces, Bereitstellungen, Replicasets, Pods und Container). Auf diese Weise hilft er ihnen dabei, das Verhalten der Anwendung zu untersuchen, Fehler zu analysieren und ihre Performance zu optimieren. Wir möchten, dass Entwickler mehr Zeit für den eigentlichen Aufbau von Anwendungen haben – und weniger Zeit für das Instrumentieren und Verwalten ihrer Kubernetes-Umgebungen aufwenden müssen.
In der Zwischenzeit kann sich das Betriebsteam auf Fragen der Belastbarkeit und Zuverlässigkeit konzentrieren: Ist eine Kubernetes-Umgebung dem Hochbetrieb in Spitzenzeiten gewachsen, oder deuten Anwendungs- und Infrastrukturtrends auf ein potenzielles Problem hin? Die Operatoren erhalten einen Gesamtüberblick über den Zustand der einzelnen Cluster und können die verschiedenen Kubernetes-Objekte anhand wichtiger Metriken und Protokolle nach Belieben genauer unter die Lupe nehmen. Alle diese Funktionen unterstützen einen proaktiven Ansatz zur Überwachung Ihrer Kubernetes-Umgebung, durch den sich Probleme nach Möglichkeit vermeiden oder zumindest wesentlich effektiver beheben lassen.
Die kuratierten Visualisierungen und Funktionen des Cluster Explorers sind ebenso mächtig wie flexibel und können von den einzelnen Teammitgliedern in verschieden Situationen auf unterschiedliche Weise sinnvoll genutzt werden. Wir sind überzeugt, dass viele der Cluster Explorer-Funktionen für die Branche wegweisend sind. Hierzu gehören nicht zuletzt die mehrdimensionale Pod- und Knotendarstellung mit der visuellen Übersicht wichtiger Performance- und Zustandsmetriken oder die Möglichkeit, sich praktisch sofort auf relevante und enorm detaillierte Low-Level-Metriken zu konzentrieren. Und auch mit der Gegenüberstellung von Anwendungs- und Infrastrukturmetriken und Objekten im Kontext eines bestimmten Kubernetes-Knotens, -Pods oder -Containers oder eines bestimmten Anwendungstransaktions-Trace setzt der Cluster Explorer neue Maßstäbe.
Sind Sie bereit für den Cluster Explorer?
Wir möchten möglichst viele New Relic-Kunden dafür gewinnen, den Kubernetes Cluster Explorer auf Herz und Nieren zu testen. Ab Anfang 2019 steht deshalb die Public Beta für alle Infrastructure Pro-Kunden bereit. Die einzige Voraussetzung ist eine konfigurierte New Relic Kubernetes Monitoring-Integration. Alles Weitere erfahren Sie in unserer Dokumentation zur Kubernetes Monitoring-Integration.
Mit Tools wie dem Kubernetes Cluster Explorer möchte New Relic dazu beitragen, dass die massive Skalierbarkeit für Kubernetes-Nutzer kein Problem, sondern eine echte Chance darstellt. Wir würden uns freuen, wenn auch Sie diese Chance nutzen und wir Sie dabei heute und in Zukunft unterstützen dürfen.
Performance Monitoring für das digitale Unternehmen von heute
Mit New Relic erhalten Sie durchgängige Einsichten in Ihre Anwendungsperformance und Ihre dynamische Infrastruktur.
Die in diesem Blog geäußerten Ansichten sind die des Autors und spiegeln nicht unbedingt die Ansichten von New Relic wider. Alle vom Autor angebotenen Lösungen sind umgebungsspezifisch und nicht Teil der kommerziellen Lösungen oder des Supports von New Relic. Bitte besuchen Sie uns exklusiv im Explorers Hub (discuss.newrelic.com) für Fragen und Unterstützung zu diesem Blogbeitrag. Dieser Blog kann Links zu Inhalten auf Websites Dritter enthalten. Durch die Bereitstellung solcher Links übernimmt, garantiert, genehmigt oder billigt New Relic die auf diesen Websites verfügbaren Informationen, Ansichten oder Produkte nicht.