Wie kann ich benutzerdefinierte Metriken im Kubernetes Dashboard anzeigen lassen?

Melden
  1. Einführung in benutzerdefinierte Metriken und das Kubernetes Dashboard
  2. Voraussetzungen für benutzerdefinierte Metriken
  3. Integration benutzerdefinierter Metriken im Kubernetes Dashboard
  4. Schritte zur Einrichtung der Benutzerdefinierten Metriken
  5. Alternativen zum Kubernetes Dashboard für Benutzerdefinierte Metriken
  6. Zusammenfassung
  7. Hilfreiche Links

Einführung in benutzerdefinierte Metriken und das Kubernetes Dashboard

Das Kubernetes Dashboard zeigt standardmäßig grundlegende Metriken wie CPU- und Speichernutzung an, welche über den metrics-server bereitgestellt werden. Um jedoch benutzerdefinierte Metriken, die Sie z.B. aus eigenen Anwendungen oder speziellen Monitoring-Tools extrahieren, im Dashboard sichtbar zu machen, bedarf es einer erweiterten Konfiguration und Integration zusätzlicher Komponenten, da das Dashboard selbst diese erweiterten Metriken nicht direkt sammelt oder visualisiert.

Voraussetzungen für benutzerdefinierte Metriken

Mit Kubernetes können benutzerdefinierte Metriken mithilfe der Custom Metrics API oder der External Metrics API eingebunden werden. Hierbei agiert der metrics-server hauptsächlich als Quelle für die Standardmetrikendaten, während für erweiterte bzw. benutzerdefinierte Metriken zumeist System-Komponenten wie Prometheus Adapter verwendet werden. Diese Komponenten sammeln die Metriken, stellen sie über die Kubernetes-API bereit, und erlauben so auch die Nutzung z.B. in Horizontal Pod Autoscalers oder Custom Dashboards.

Integration benutzerdefinierter Metriken im Kubernetes Dashboard

Das Kubernetes Dashboard selbst verfügt allerdings aktuell nicht über eine native Funktion, benutzerdefinierte Metriken direkt anzuzeigen oder zu konfigurieren. Um trotzdem benutzerdefinierte Metriken sichtbar zu machen, gibt es einige Möglichkeiten.

Einerseits können Sie das Dashboard um eigene Widgets oder Panels erweitern, allerdings ist dies mit dem Standarddashboard eher schwierig und erfordert tiefe Eingriffe in den Quellcode oder ein eigenständiges Fork-Projekt. Andererseits besteht die gängige Praxis darin, eine spezialisierte Monitoring-Lösung wie Grafana in Kombination mit Prometheus zu verwenden, welche optimal auf die Visualisierung von benutzerdefinierten Metriken ausgelegt sind.

Möchten Sie dennoch Metriken über das Dashboard zugänglich machen, empfiehlt es sich, zunächst eine Lösung wie den Prometheus Adapter zu installieren und zu konfigurieren, um Ihre benutzerdefinierten Metriken über die Kubernetes API zugänglich zu machen. Danach können Sie im Dashboard, wo Ressourceninfo und Metriken angezeigt werden, zumindest die durch die API bereitgestellten Informationen sehen, sofern das Dashboard diese darstellt.

Schritte zur Einrichtung der Benutzerdefinierten Metriken

Als Erstes muss Prometheus so eingerichtet werden, dass es Ihre benutzerdefinierten Metriken eines Services oder einer Anwendung sammelt. Dies geschieht zumeist über Exporter oder direkt über Instrumentierung im Code.

Im Anschluss wird der Prometheus Adapter installiert. Diese Komponente übersetzt Prometheus-Metriken in das Kubernetes Custom Metrics API-Format. Dadurch können Kubernetes-Konzepte wie der Horizontal Pod Autoscaler oder andere API Tools auf diese Metriken zugreifen.

Nach der Installation sollten Sie vom Kubernetes Dashboard aus prüfen, ob die Metriken über die API verfügbar sind. Beachten Sie, dass das Kubernetes Dashboard jedoch nicht standardmäßig über die UI alle benutzerdefinierten Metriken visualisiert. Meist sind dort nur die Standardmetriken wie CPU und Speicher sichtbar.

Alternativen zum Kubernetes Dashboard für Benutzerdefinierte Metriken

Da das Kubernetes Dashboard in erster Linie für Management und Monitoring der allgemeinen Kubernetes-Ressourcen konzipiert ist, ist es oft sinnvoll, Spezialwerkzeuge zu verwenden. Werkzeuge wie Grafana bieten eine tiefe Integration mit Prometheus und damit die Möglichkeit, beliebige, auch benutzerdefinierte Metriken anschaulich und flexibel zu visualisieren.

Hierzu legen Sie in Grafana Dashboards an, die Prometheus als Datenquelle nutzen und auf diese Weise beliebige Metriken darstellen können. Zusätzlich lassen sich Alarme, Benachrichtigungen und weitere Funktionen konfigurieren, welche im Kubernetes Dashboard so nicht vorhanden sind.

Zusammenfassung

Das Anzeigen benutzerdefinierter Metriken direkt im Kubernetes Dashboard erfordert den Aufbau einer Monitoring-Infrastruktur mit Prometheus und dem Prometheus Adapter, welcher diese Metriken der Kubernetes API bereitstellt. Das Dashboard selbst hat jedoch keine integrierte Unterstützung zur direkten Darstellung dieser Metriken, weshalb separate Tools wie Grafana empfohlen werden. Möchten Sie dennoch innerhalb des Dashboards arbeiten, ist eine tiefere Anpassung oder Erweiterung notwendig, die über den Standardumfang hinausgeht.

Um Ihnen die Umsetzung zu erleichtern, finden Sie hier einige offizielle Ressourcen:

Prometheus Adapter GitHub Repository

Kubernetes offizielle Doku zu benutzerdefinierten Metriken

Grafana Dokumentation

0
0 Kommentare