Applications of Parallel and Distributed Systems

Open and Current Student Projects

Student projects in international study programmes

Open student projects

Hintergrund

Aus der zunehmenden Digitalisierung aller Unternehmensbereiche folgen stets komplexer werdende IT-Infrastrukturen, z.B. Cloud-Umgebungen, deren Management die IT-Welt vor viele Herausforderungen stellt. Einerseits sollen beispielsweise stets ausreichend Ressourcen für die sichere Ausführung der Anwendungen zur Verfügung stehen, andererseits soll auch die Sicherheit dieser Umgebungen gewährleistet werden. Für viele dieser Herausforderungen können Monitoringsysteme (z.B. TICK-Stack, Nagios, etc.) verwendet werden, die Daten sammeln, beispielsweise zur Auslastung einer virtuellen Maschine, und auf dieser Basis das Management der Cloud-Umgebungen vereinfachen können. Um detaillierte Informationen über das zu überwachende System zu erhalten, ist ein agentenbasiertes Monitoring unerlässlich. Hierbei werden auf dem Zielsystem sogenannte Agenten installiert, welche bestimmte Daten (CPU Auslastung, Logs von Anwendungen, Benutzerzugriffe, etc.) überprüfen, sammeln und an ein zentrales Monitoringsystem übermitteln. Auf Basis dieser übermittelten Daten können so genannte Alerts erstellt werden, um über kritische Zustände informiert zu werden. Beispielsweise kann eine E-Mail an einen Administrator geschickt werden, wenn die Auslastung der CPU einer virtuellen Maschine (VM) fünf Minuten lang bei über 90% liegt. Alerts werden an einer zentralen Stelle verwaltet, da dort alle gesammelten Daten vorliegen.

Aufgabe:

In einer bereits laufenden Masterarbeit wird das agentenbasierte Monitoring hin zu einem agentenzentrierten Monitoring-Ansatz entwickelt. Hierbei wird eine Architektur entwickelt, die darauf ausgelegt ist, einem Agenten mehr Funktionalität zuzuweisen. Somit soll es unter anderem ermöglicht werden, das Alerting lokal auszuführen. Der Vorteil hierbei ist, dass die benötigten Daten nicht mehr an eine zentrale Einheit geschickt werden müssen und somit massiv Netzwerkverkehr eingespart werden kann, ohne an Funktionalität oder Detailgrad des zugrundeliegenden Monitoringsystems einzusparen. In dieser Arbeit soll auf Basis der vorangegangenen Masterarbeit das lokale Alerting umgesetzt werden. Hierfür soll zuerst eine Einarbeitung in die Implementierung der Vorarbeit stattfinden. Anschließend soll das Mapping von Alerts, die in einer zentralen Komponente (z.B. Grafana) definiert und verwaltet werden, lokal ausgewertet werden. Hierfür soll zunächst ein Mapper entwickelt werden, der bereits definierte Alerts abfragt und auf die Syntax der lokalen Ausführungsengine (z.B. Esper) mappt. Im zweiten Schritt soll das Placement der Alerts stattfinden. Hierfür muss entschieden werden, z.B. ressourcenabhängig, wo welche Alerts ausgeführt werden sollen.Als Folge eines erkannten Alerts werden Nachrichtenkanäle wie E-Mail, Slack, usw., verwendet, deren Verwaltung weiterhin an zentraler Stelle verbleiben soll, um den Managementaufwand gering zu halten. Lokal ausgewertete Alerts werden daher an die zentrale Komponente weitergeleitet. Daher müssen als letzter Schritt auf Basis lokal erkannter Alerts an globaler Stelle Alerts versendet werden.

Zusammengefasst umfassen die Aufgaben
  • Einarbeitung in vorherige Arbeit
  • Erstellung eines Mappers von Grafana-Alerts auf Esper Queries
  • Placement von Alerts auf lokale VMs
  • Ersetzen und Verknüpfen von ursprünglichen Alerts
  • Zwischenvortrag nach 3 Monaten

Hinweis: Neben der schriftlichen Ausarbeitung werden die Ergebnisse dieser Arbeit dem Prüfer im Rahmen eines Abschlussvortrags vorgestellt. Des Weiteren sind alle im Rahmen dieser Arbeit entstandenen Implementierungen sowie deren Dokumentation Teil der Abgabe.

Empfohlene Voraussetzungen
  • Erfahrungen mit den Konzepten des Monitorings
  • Gute Programmierkenntnisse in einer höheren Programmiersprache (z.B. Java)
  • … oder die Bereitschaft sich diese anzueignen

Current student projects

To the top of the page