Monitoring of Microservice Architectures

Open Source Systeme und Applikationen
06.09.2023Workshop abgesagt!

9:10 – 17:00 Uhr
Fachhochschule OST Campus Rapperswil
Max. Teilnehmer: 28

Einleitung

Beim Monitoring von Microservice-Architekturen gibt es zahlreiche Herausforderungen:

  • Hohe Komplexität durch eine Vielzahl von verteilten Komponenten
  • Dynamische Umgebung, welche Services flexibel bereitstellt und skaliert
  • Datenaggregation und Korrelation aus unterschiedlichen Quellen
  • Überwachung von hochskalierten Diensten und Performance-Optimierung
  • Kontextsensitives Monitoring der Kommunikationsflüsse zwischen den Services

Diesen Herausforderungen kann mit praxiserprobten Ansätzen begegnet werden:

  • Sorgfältige Definition der benötigten Monitoring-Informationen und Metriken
  • Verwendung einheitlicher Protokoll- und Tracing-Standards
  • Implementierung zentraler Log- und Tracing-Lösungen wie ELK Stack oder Distributed-Tracing-Tools
  • Implementierung von distributed tracing bzw. Protokollkorrelationstechniken zur Verfolgung des Nachrichtenflusses
  • Verwendung einer zentralen Monitoring-Plattform wie z.B. Prometheus und Grafana
  • Automatisierung des Monitorings mit Konfigurationsmanagement- und Orchestrierungstools
  • Effiziente Datenspeicherung und gezieltes Abfragen der benötigten Monitoring Informationen

Programm

  1. Einführung in die Überwachung von Microservice-Architekturen
    • Herausforderungen und Bedeutung von Monitoring in Microservice-Architekturen
    • Ziele und -Zwecke des Monitorings
  2. Grundlagen des Monitorings
    • Verschiedene Arten der Monitorings von Microservices (z. B. Anwendung, Infrastruktur, Protokolle, Leistung usw.)
    • Übersicht zu weit verbreiteten Open-Source-Monitoring-Tools wie Prometheus und Grafana
  3. Entwerfen einer effektiven Monitoring-Strategie
    • Identifizierung der wichtigsten Metriken und Indikatoren für das Monitoring
    • Definition von Monitoring-Anforderungen und -Zielen
    • Festlegung von Service Level Agreements (SLAs) und Key Performance Indicators (KPIs)
  4. Echtzeit-Überwachung und Alerting
    • Einrichten von Echtzeit-Überwachungssystemen mit Prometheus
    • Konfigurieren von Alarmen und Benachrichtigungen mit Alertmanager
  5. Logging und Tracing
    • Übersicht zum Logging und Log Management mit Tools wie ELK-Stack (Elasticsearch, Logstash, Kibana)
    • Nutzung von verteiltem Tracing mit Tools wie Jaeger oder Zipkin zur Fehlersuche und Leistungsoptimierung
  6. Metriken und Visualisierung mit Grafana
    • Integration von Prometheus-Metriken mit Grafana
    • Visualisieren und Interpretieren von Überwachungsdaten mit Grafana Dashboards
    • Anpassen und Teilen von Dashboards in Grafana
  7. Praktische Überwachungstechniken
    • Praktische Übungen und Demos mit Prometheus, Grafana und anderen Open-Source-Tools
    • Implementierung von Monitoring-Lösungen für Microservices mit konkreten Beispielen
  8. Fallstudien und Anwendungsfälle
    • Studium von Praxisbeispielen und ausgewählten Best Practices
  9. Fragen und Diskussion
    • Diskussion von Fragen und Anliegen der Teilnehmenden
    • Austausch von Erfahrungen und Erkenntnissen der Teilnehmenden
  10. Workshop-Abschluss
    • Zusammenfassung der wichtigsten Erkenntnisse
    • Ressourcen und Referenzen für das selbständige Vertiefen des Themas nach Abschluss des Workshops

Kursziel

Der Workshop vermittelt einen Überblick und praktisches Wissen zum Thema „Monitoring von Microservice Architekturen“. Die Teilnehmenden lernen konkrete Ansätze und Best Practices kennen, um ihre Microservices effektiv zu überwachen und die Performance zu optimieren. Durch den Einsatz populärer Open Source Tools wie Prometheus und Grafana erhalten sie Einblicke in die Tool-Nutzung und lernen, wie aussagekräftige Metriken gesammelt und analysiert werden können. Darüber hinaus bietet der Workshop Möglichkeiten, sich mit anderen Teilnehmern und Experten auszutauschen, neue Kontakte zu knüpfen und das berufliche Netzwerk zu erweitern.

Adressaten

Der Workshop richtet sich an Entwickler/innen, Softwarearchitekten/innen und IT-Fachleute, welche bereits über Grundkenntnisse im Bereich Microservices verfügen und ihre Kenntnisse bezüglich dem Thema Monitoring erweitern möchten.
Die Zielgruppe umfasst Personen, welche in der Entwicklung, Implementierung und Wartung von Microservice-Architekturen tätig sind und ein erweitertes Verständnis für den effektiven Einsatz von Monitoring-Strategien und -Werkzeugen entwickeln möchten.
Der Workshop bietet sowohl Anfängern als auch Fortgeschrittenen einen Mehrwert, da sowohl grundlegende Konzepte als auch fortgeschrittene Techniken behandelt werden.

 

Voraussetzungen

Es wird vorausgesetzt, dass die Teilnehmenden bereits Kenntnisse über Microservices bzw. Microservice Architekturen (idealerweise in einem Spring Boot Kontext) besitzen. Der Workshop konzentriert sich auf die Monitoring-Aspekte im Kontext von Microservice-Architekturen und bietet praktische Erfahrungen mit Open-Source-Tools wie Prometheus und Grafana.

Infrastruktur

Für diesen Workshop wird folgende Infrastruktur benötigt:

  • Laptop mit Administratorberechtigung.
  • Docker-Desktop für die einfache Bereitstellung von Anwendungen wie Grafana und Prometheus in Form von Docker-Containern. Während des Workshops werden verschiedene Container-Images von Docker Hub heruntergeladen.
  • Für einzelne Workshop-Übungen ist eine Entwicklungsumgebung wie Eclipse / IntelliJ etc. oder ein Texteditor notwendig.

Die Teilnehmenden sollten sich vor Beginn des Workshops vergewissern, dass die für einen reibungslosen Ablauf des Workshops erforderliche Infrastruktur und Software zur Verfügung stehen. Die genauen Anforderungen und Vorbereitungsanweisungen, einschliesslich der Docker-Installation und -Konfiguration, werden vom Trainer rechtzeitig vor dem Workshop mitgeteilt.

Referenten

Rolf Jufer

letsboot.ch / felixideas GmbH, Baslerstrasse 5a, 4102 Binningen


Ich bin Trainer bei letsboot.ch, Dozent an der Berner Fachhochschule sowie freiberuflicher Berater und Softwareentwickler. In meiner über 35-jährigen Berufstätigkeit habe ich Erfahrungen in zahlreichen Bereichen der IT gesammelt, wie Prozessmanagement mit BPMN (z.B. Camunda), Enterprise Application Integration (mit Frameworks wie Apache Camel) sowie Backend-Entwicklung mit dem Spring Ecosystem, Docker, Kubernetes etc.