monitoring mit prometheus und grafana bei systemen unter last · monitoring mit prometheus und...

23
Monitoring mit Prometheus und Grafana bei Systemen unter Last Antje Landschulz Java User Group Darmstadt 14. Februar 2019

Upload: others

Post on 15-Jun-2020

28 views

Category:

Documents


0 download

TRANSCRIPT

Monitoring mit Prometheus und Grafana bei Systemen unter Last

Antje Landschulz

Java User Group Darmstadt14. Februar 2019

Monitoring mit Prometheus und Grafana bei Systemen unter Last 2

Antje Landschulz● Software-Entwicklerin im Smart Home-Umfeld bei der

Deutschen Telekom AG

● Zuvor Java-Entwicklerin bei IT-Consultingunternehmen in Deutschland und in der Schweiz

● Branchenerfahrung: Smart Home, Automobil- und Flugzeugindustrie, Finanzindustrie, öffentlicher Verkehr und Transport (Bahnwesen)

[email protected]

Monitoring mit Prometheus und Grafana bei Systemen unter Last 3

Agenda● Motivation● Prometheus● Grafana● Fazit

Monitoring mit Prometheus und Grafana bei Systemen unter Last 4

Agenda● Motivation● Prometheus● Grafana● Fazit

Monitoring mit Prometheus und Grafana bei Systemen unter Last 5

Motivation● Frühzeitige Erkennung und Behebung system-

kritischer Probleme● Proaktives Handeln bei Überschreiten eines

definierten Schwellenwertes● Benachrichtigung per Alert Notification● Trending zur Ermittlung des Hardwarebedarfs

Monitoring mit Prometheus und Grafana bei Systemen unter Last 6

Agenda● Motivation● Prometheus● Grafana● Fazit

Monitoring mit Prometheus und Grafana bei Systemen unter Last 7

Was ist Prometheus?● Open-Source Monitoring und Alerting System● 2012 von SoundCloud entwickelt● Seit 2016 Teil der Cloud Native Computing

Foundation ● Größtenteils in Go geschrieben

Monitoring mit Prometheus und Grafana bei Systemen unter Last 8

Besonderheiten von Prometheus● Modularer Aufbau● Zeitreihendatenbank● Eigene Abfragesprache PromQL● Pullen von Metrikdaten

Monitoring mit Prometheus und Grafana bei Systemen unter Last 9

Prometheus Architektur

Quelle: https://prometheus.io/docs/introduction/overview

Monitoring mit Prometheus und Grafana bei Systemen unter Last 10

Prometheus Datenmodell● Speichern der Daten als Zeitreihen● Eindeutige Identifizierung einer Zeitreihe über Metrikname

und Label● Metrikname:

– Allgemeines Merkmal eines Systems

● Label:– Bestimmte Eigenschaft einer Metrik

Monitoring mit Prometheus und Grafana bei Systemen unter Last 11

Metriken● Counter● Gauge● Histogram● Summary

Monitoring mit Prometheus und Grafana bei Systemen unter Last 12

Abfragesprache PromQL● Spezielle Abfragesprache zum Auslesen von

Metrikdaten aus der Zeitreihendatenbank Prometheus

● Kein SQL ● Nur Lesezugriff

Monitoring mit Prometheus und Grafana bei Systemen unter Last 13

PromQL Beispiele (1)● Einfache Zeitreihenabfragen: http_requests_total

http_requests_total{job="apiserver", handler="/api/comments"}

http_requests_total{job="apiserver", handler="/api/comments"}[5m]

Monitoring mit Prometheus und Grafana bei Systemen unter Last 14

PromQL Beispiele (2)● Zeitreihenabfragen unter Verwendung von Funktionen

und Operatoren: rate(http_requests_total[5m])

sum(rate(http_requests_total[5m])) by (job)

topk(3, sum(rate(instance_cpu_time_ns[5m])) by (app, proc))

Monitoring mit Prometheus und Grafana bei Systemen unter Last 15

Einsatzgebiete von Prometheus● Cloud-Umgebungen● Verteilte Systeme● Microservices

Prometheus Live-Demo

Monitoring mit Prometheus und Grafana bei Systemen unter Last 17

Agenda● Motivation● Prometheus● Grafana● Fazit

Monitoring mit Prometheus und Grafana bei Systemen unter Last 18

Was ist Grafana?● Open-Source Visualisierungstool● Server mit grafischem Webinterface● Plug-in-Schnittstelle für verschiedene Backends● Funktionalitäten zum Erstellen von

Dashboards, Definieren von Alert Rules und Versenden von Alert Notifications

Grafana Live-Demo

Monitoring mit Prometheus und Grafana bei Systemen unter Last 20

Agenda● Motivation● Prometheus● Grafana● Fazit

Monitoring mit Prometheus und Grafana bei Systemen unter Last 21

Fazit● Unkompliziertes Aufsetzen eines Monitoring und Alerting

Systems bestehend aus Prometheus und Grafana

● Zeitreihendatenbank Prometheus ideal zum Speichern von Metrikdaten

● Schnelles Auslesen der gespeicherten Metrikdaten mit PromQL

● Komfortable Visualisierung der relevanten Daten in Grafana

● Bequeme Realisierung des Alertings mit Grafana

Monitoring mit Prometheus und Grafana bei Systemen unter Last 22

Links● Prometheus:

– https://prometheus.io

● Grafana:– https://grafana.com

Vielen Dank!

Ich freue mich auf eure Fragen.

[email protected]