AI-powered Monitoring

Quick Check

Ausgangssituation

Adaptive Cruise Control (ACC) SSC-Services ist für die Entwicklung und den produktiven Betrieb einer Vielzahl von Softwarekomponenten verantwortlich. Dabei kommen umfangreiche Monitoring-Lösungen zum Einsatz, sodass eine Person meist für viele Systeme verantwortlich ist. Im Zuge dessen muss viel Zeit für die Pfl ege von Alerting-Regeln aufgewendet werden, um etwaige Probleme bzgl. der Systemstabilität abzudecken.

Dieses Problem lässt sich als Anomalie-Erkennung formulieren und so bspw. mit der automatischen Erkennung von Kreditkartenbetrug vergleichen. Aufgrund der großen verfügbaren Datenmenge ist das Problem ideal für Machine Learning (ML) geeignet.

 

Lösungsidee 

Anhand der durch das Monitoring-System aufgezeichneten Daten, wie CPU-Auslastung oder Festplattenaktivität, ist ein reichhaltiger Zeitreihendatensatz entstanden: In gesetzten Zeitintervallen sind diverse Informationen über den Systemzustand vorhanden.

Da sich Systemabstürze schon im Voraus in Systemdaten widerspiegeln, oft nach denselben Mustern, soll durch ML, ein Systemabsturz so lange wie möglich im Voraus prädiziert werden. Konkret werden drei Ansätze erprobt:

1) Supervised Learning: »herkömmliche« Modelle, wie Random Forests, Gradient Boosting oder Support Vector Machines

2) Deep Learning: Long Short-Term Memory Neural Networks

3) Unsupervised Learning: Autoencoder

© Fraunhofer IAO
Verhalten verschiedener Systemkennwerte über die Zeit

Nutzen

Eine Monitoringlösung mit Frühwarnsystem kann softwareunabhängig auf Systeminfrastrukturen eingesetzt werden und verhindert kostennegative Totalausfälle des Systems. Ebenso besteht eine bessere Skalierbarkeit sowie die Absicherung vor menschlichen Fehlern. Weiterhin kommt es zu einer Arbeitsentlastung, da falsch-positive Alert-Nachrichten aus bisherigen Monitoringsystemen umgangen werden können. Ebenso können unattraktive Arbeiten, wie das händische Überwachen, vermieden werden.

 

Umsetzung der KI-Applikation 

SSC-Services lieferte Zeitstempel, die ungewollte Systemzustände beschreiben. Aus diesen wurden Remaining Useful Lifetime-Label (RUL) erstellt. Die RUL beschreibt die Zeitschritte im Datensatz, bis zu einem ungewollten Systemzustand.

Die Supervised und Deep Learning Modelle wurden anhand ihres Vermögens die RUL zu prädizieren, evaluiert. Der Unsupervised Ansatz benötigt keine Labels und wurde anhand des Rekonstruktionsfehlers evaluiert.

Auf Zeitintervallen von einer Stunde konnten die Modelle keine zuverlässigen Prädiktionen liefern. Allerdings konnte auf einem Referenzdatensatz in 5-min. Intervallen gezeigt werden, dass die Modelle besser abschneiden würden.

SSC-Services wird daher Systemdaten in einer 5-min. Zeitauflösung aufnehmen. In einem Exploring Project werden die besser abschneidenden Modelle anschließend weiterentwickelt.

Partnerunternehmen

»Um die hohe Verfügbarkeit unserer Systeme sicherzustellen, spielt für uns die Möglichkeit, bei Problemen frühzeitig einzugreifen eine entscheidende Rolle. Durch den Quick Check konnten wir verschiedene Ansätze ausprobieren, um mithilfe von Machine Learning das volle Potenzial unserer Monitoringdaten auszuschöpfen.«

 

Tobias Kaatze, Leiter Prozesse und Methoden bei SSC-Services GmbH

Exploring Project

Ausgangssituation

Die SSC-Services GmbH ist für die Entwicklung und den produktiven Betrieb einer Vielzahl von Softwarekomponenten verantwortlich. Um diese Aufgabe effizient bewerkstelligen zu können, wird bereits jetzt ein großer Wert auf Automatisierung gelegt. Umfangreiche Monitoring-Lösungen wie Dynatrace loggen verschiedene Systemressourcen und schlagen Alarm, sobald Systeme blockiert sind. Einzuschreiten, sobald ein System schon blockiert ist, stellt allerdings schon einen Schaden dar - Ziel ist nämlich die Annäherung an eine 100%ige Systemverfügbarkeit. Eine Methode, die möglichst früh schädliche Systemzustände erkennt, bevor sie eintreten, bietet einen integralen Mehrwert.

Ein wichtiger Bestandteil dieses präventiven Monitorings ist auch die Erkennung mutwilliger sowie versehentlicher schädlicher Systemzugriffe.  Die verfügbaren Logdaten können Aufschluss darüber geben, ob solche Fälle vorliegen, sind aber von Menschen oder regelbasierten Systemen nicht leicht zu analysieren.

 

Lösungsidee 

Aus den vorhandenen Logdaten von Dynatrace werden Sessions und ihre zugehörigen Details analysiert, um auffällige Zugriffe zu identifizieren. Da schädliche Zugriffe bisher nicht verlässlich in klare Regeln gefasst werden können und sich mit der Zeit auch verändern können, wird zu einem KI-basierten Ansatz gegriffen. Neue Sessions werden mithilfe einer Anomalieerkennung im Kontext einer Vielzahl vergangener Sessions untersucht. Sobald deutliche Auffälligkeiten bemerkt werden, kann die KI Bescheid geben oder direkt reagieren.

© Fraunhofer IAO
Abbildung 1: Visualisierung von Beispiel-Sessions: Jede Spalte zeigt Werte für eine Session. In den Zeilen sind 6 verschiedene Variablen aus den Session-Logs dargestellt. Der Farbwert gibt den Grad der Auffälligkeit an: Grün ist unauffällig, gelb leicht auffällig und rot stellt eine starke Auffälligkeit dar.

Nutzen

Die frühzeitige Erkennung von mutwilligen oder versehentlichen schädlichen Systemzugriffen in Echtzeit ermöglicht, direkt auf diese zu reagieren. Es kann automatisiert Schaden abgewendet werden, beispielsweise indem Zugriffe oder sogar Sessions oder IP-Adressen blockiert werden. Somit kann die Stabilität und Verfügbarkeit des Gesamtsystems zusätzlich erhöht werden.

 

Umsetzung der KI-Applikation 

Auf Basis von Domänenwissen sowie einer Korrelationsanalyse wurden relevante Werte aus den Logdaten für Sessions identifiziert, welche als Daten für eine KI genutzt wurden. Zur Anomalieerkennung wurde mit diesen Daten ein Autoencoder umgesetzt, welcher gelernt hat, Daten über eine Zwischenkodierung in sich selbst zu übersetzen. Je schlechter der Autoencoder für einzelne Sessions funktioniert, desto größer sind die Auffälligkeiten in dem Verhalten hinter der jeweiligen Session. Eine Visualisierung beispielhafter Sessions ist in Abbildung 1 dargestellt.

Partnerunternehmen

»Durch das Exploring Project haben wir einen besseren Einblick in die Zugriffe auf unsere Systeme bekommen können. Im nächsten Schritt werden mögliche Maßnahmen diskutiert, wie wir auf die erkannten Anomalien reagieren können. Die Zusammenarbeit mit den Fraunhofer-Kollegen gestaltete sich dabei stets direkt und unkompliziert.«

 

SSC-Services GmbH