Im Kontext der Cloud sollte man sich mit Machine Learning (ML) beschäftigen. Denn mittels lernfähiger Technik kann man unter anderem den Automationsansatz der Cloud – Ressourcen genau dann flexibel zur Verfügung zu stellen, wenn sie gebraucht werden – vorantreiben: Mit Skalierung in Echtzeit und vorausschauender Wartung lässt sich die IT-Infrastruktur weiter optimieren.

Die meisten IT-Organisationen warten ihre Rechenzentren heute reaktiv oder intervallartig. Beide Ansätze sind nicht optimal – bei ersterem kommt es meist zu einer Ausfallzeit, weil ein defektes Gerät zu wechseln ist. Bei der zweiten Variante tauscht man meist Teile, die noch Laufzeit hätten absolvieren können. Im Rahmen der Industrie-4.0-Entwicklung hat sich der Begriff Predictive Maintenance (vorausschauende Wartung) etabliert: Anhand verschiedener Laufzeitdaten des überwachten Geräts lässt sich der optimale Wartungszeitpunkt besser bestimmen und das Wartungsfenster in den laufenden Betrieb integrieren.

Ein Beispiel: Sogenannte smarte SSDs melden dem Monitoring-System, wann sie ihre als maximal festgesetzte Überschreibrate erreicht haben. Für den Administrator ist das eine wichtige Information, denn die Festplatte ist bald zu tauschen. Wann genau dies sinnvoll ist, geht aus dieser Information jedoch nicht hervor. Denn zwar mag die SSD eine bestimmte Anzahl an Schreibzyklen absolviert haben, praktisch ist sie jedoch deshalb noch nicht defekt und auch noch nicht zwingend zu ersetzen. Das wäre zwar vorausschauend, folgt aber einem festen Intervall. Erst in Korrelation mit anderen Daten lässt sich in solchen Szenarien das Optimum finden.

Schon dieses einfache Beispiel zeigt die Komplexität eines datenbasierten Ansatzes. Denn die IT muss die Daten präventiv erfassen, speichern, berechnen und analysieren. Ersteres – die Datenerfassung – ist dabei die geringste Herausforderung. Im laufenden Betrieb entstehen zahlreiche Telemetriedaten der Hardware und der Interaktion zwischen den Geräten. Die meisten Geräte bringen von Haus aus Sensoren mit, um beispielsweise die Temperatur der CPU, des Gehäuses oder der Festplatte zu messen, Latenzzeiten zu erfassen, I/O-Zugriffe zu zählen oder Vorgänge in Logfiles zu protokollieren.

Per Dashbaord behält das IT-Team wichtige Parameter wie etwa die CPU-Auslastung im Blick. Bild: Gridscale

Schwieriger ist die Interpretation der Daten. Um Abweichungen vom Normalbetrieb zu erkennen, muss definiert sein, was genau Anomalien für das spezifische System sind. Im Idealfall nutzt der IaaS- und PaaS-Anbieter (Infrastructure/Platform as a Service) dafür einen lernenden Algorithmus. Für dessen Nutzung legt man zunächst Attribute („Features“) fest. Aus der Menge der erfassbaren Telemetriedaten sollen dies jene sein, die in irgendeiner Art eine Bedeutung für die Funktionsfähigkeit der Infrastruktur haben. Der darüber gelegte Algorithmus muss nun aus den laufend erfassten Daten, deren Zusammenhängen und ihren Veränderungen lernen. Dafür wird jeder Moment, der von der Norm abweicht, als positives Ereignis markiert, also gewissermaßen als besonders wichtiger Lernpunkt.

Wichtig ist, dass die Anomalien nicht vorab einfach definiert sind. Dann würde sich die Systematik zu sehr beschränken und die Zusammenhänge zwischen den Daten kämen zu kurz. Je mehr Features man definiert, umso besser kann das System lernen. Der Aufwand für die Datenerfassung und die Auswertung steigt jedoch schnell an – der passende Mittelweg wird mit Data-Sample-Tests ausgesteuert. Das ganze System unterliegt somit einer ständigen Anpassung.

In einem mehrstufigen Konzept kann der Betreiber nun definieren, welche Ereignisse oder Anomalien automatisiert welche Aktionen auslösen. Übergeordnet finden laufend Prüfungen statt, ob es Werte gibt, die so stark herausstechen, dass von einem Problem auszugehen ist. Dies kann beispielsweise die extrem erhöhte Temperatur eines einzelnen Geräts sein, während alle anderen Metriken dem Normverhalten entsprechen; oder aber die I/O-Aktivitäten einer SSD sinken so stark, dass der Datenstrom abbricht, was auf einen Defekt hinweist.

Dank Echtzeitalarmen kann das IT-Team hier schnell, aber noch immer reaktiv eingreifen. Gleichzeitig – und hier kommen der datenbasierte Ansatz und das Machine Learning zur Geltung – analysiert der Algorithmus das System auf Basis der gelernten Datenzusammenhänge. Die gesetzten Features mit ihren Wertekorridoren geben dabei den Rahmen für die Beurteilung vor. So kann die IT bereits im Vorfeld erkennen, welches Ereignis – ein Gerätedefekt oder der Abbruch eines Datenstroms – sehr wahrscheinlich in Kürze eintreten wird.

Machine Learning erleichtert die intelligente Live-Skalierung, im Bild die einer MySQL-Instanz. Bild: Gridscale

Entscheidend ist schließlich, welche Maßnahmen man darauf basierend vollautomatisiert anstoßen kann. Aufgrund der Erfahrung, die das System gesammelt hat und laufend sammelt, lassen sich Prognosen beispielsweise hinsichtlich der Entwicklung von Workloads errechnen. Dies ermöglicht Szenarien wie automatisiertes Live-Scaling nach Bedarf. Mittels Live-Migration lassen sich Workloads automatisch umverteilen, wobei der Algorithmus berechnet, wie die Umverteilung in Bezug auf Qualität, Aufwand und Sicherheit am effektivsten erfolgt. Im Falle von Cyber-Attacken wie etwa Ransomware-Angriffen, gut erkennbar an der ungewöhnlich hohen Lese- und Schreibrate, kann das IT-Team sofort Daten- und Systemsicherungsmaßnahmen einleiten.

Das Konzept der Hochverfügbarkeit geht damit über herkömmliche Lösungen wie Cluster oder Backups hinaus. Vielmehr steht der Gedanke dahinter, die Infrastruktur jederzeit optimal an die Anwendung anzupassen – unter der Beachtung von Faktoren wie Performance, Kosten und Sicherheit. Wirtschaftlich funktioniert das nur, wenn der Automationsgrad entsprechend hoch ist. Besonders interessant ist dieses Konzept für Anbieter von Infrastruktur- und Plattform-Services. Es eignet sich weniger, um Unternehmen zu bedienen, die eine Cloud rein als flexibel buchbare Zusatzressource nutzen, sondern eher für Einsatzfälle, bei denen das Austarieren von Workloads und Performance wichtig ist. Denn ML verspricht mehr Automation bei gleichzeitiger Optimierung der Cloud-Ressourcen.

Henrik Hasenkamp ist CEO von Gridscale, gridscale.io.