Komplexe IT-Infrastrukturen erleben häufig ein exponentielles Wachstum. Dadurch ist es für Administratoren und Entwickler schwierig, den Überblick über alle Systeme zu behalten. Zudem müssen diese auch hinsichtlich ihrer Auswirkungen auf die IT-Sicherheit genau überwacht werden.
Parallel zu den wachsenden IT-Infrastrukturen erwarten Kunden, Partner und Management drastisch verkürzte Reaktionszeiten. Darüber hinaus stellt der Mangel an IT-Fachkräften auf dem Arbeitsmarkt eine große Belastung für die IT-Administratoren dar, die mit immer weniger Leuten immer mehr arbeiten müssen. Auch ein großzügiges Budget für Personalausgaben hilft dabei aufgrund der aktuellen Situation wenig.
Allerdings müssen alle Anwendungen, ob die eigene verteilte Software auf Kundencomputern oder selbst genutzte Anwendungen wie ein Mailing-Programm, jederzeit einwandfrei funktionieren. Auch mögliche Ausfälle müssen sehr schnell behoben werden. Im IT-Sicherheitsumfeld ist die Situation keineswegs besser. Auch hier steht nicht genügend IT-Personal zur Verfügung. IT-Teams müssen in der Lage sein, auf die immer ausgefeilteren Angriffe zu reagieren. Ein guter Ansatz ist es, die Infrastruktur mit ihren Komponenten und Prozessen so transparent wie möglich zu halten. Wesentlich sind dabei Protokolldateien, die die Anwendungen während ihrer Funktion erstellen.
Andererseits kann man sich nicht vorstellen, dass IT-Experten Logfiles individuell und in Ruhe analysieren. Ihr Auftreten in einer IT-Infrastruktur ist dafür einfach zu hoch. Das bedeutet, dass es für IT-Administratoren schwierig sein wird, die Automatisierung dieses Prozesses zu vermeiden. Glücklicherweise gibt es dafür bereits Lösungen auf dem Markt. Sie richten sich in der Regel an Systemadministratoren, ITOps-Experten, Software Reliability Engineers (SREs), aber auch an DevOps-Spezialisten, die IT-Infrastruktur und -Anwendungen überwachen und warten sowie Fehlerbehebung betreiben. Durch die effiziente Auswertung von Protokollen können Administratoren beispielsweise kritische Fehler, Bugs und Sicherheitsbedrohungen identifizieren, die die IT-Leistung und Benutzerfreundlichkeit einschränken oder beeinträchtigen könnten.
Protokolldateien automatisch auswerten
Bei der Auswahl einer Lösung zur Auswertung von Protokolldateien ist zunächst darauf zu achten, dass sie auf Open-Source-Software basiert. Open-Source-Anwendungen sind transparenter als proprietäre Lösungen und verhindern, dass der Benutzer zu sehr an einen einzigen Anbieter proprietärer Software gebunden ist. So kann der Anwender jederzeit von einem Open-Source-Anbieter zum nächsten wechseln und bleibt flexibel.
Wie kann eine solche Lösung aussehen? Ein Beispiel dafür ist die Lösung des israelischen Anbieters Logz.io, der von Next47, dem globalen Venture Capital-Unternehmen von Siemens, unterstützt wird. Technisch basiert die Lösung auf der ELK-Plattform, benannt nach ihren Bestandteilen Elasticsearch, Logstash und Kibana. Die Suchmaschine Elasticsearch basiert auf Lucene, die in Java erstellt wurde. Sie speichert Dokumente im NoSQL-Format und ist eine der am weitesten verbreiteten Suchmaschinen. Gleichzeitig kann sie in einem Rechnerverbund ausgeführt werden.
Die Module Logstash und Beats sind für die Verarbeitung verantwortlich. Sie lesen Protokolldaten von verschiedenen Servern aus und exportieren die Ergebnisse nach Kibana, wo sie unter anderem über Dashboards visualisiert werden. Es handelt sich um ein Plugin für Elasticsearch, das unter anderem große Datenmengen mittels Balken-, Linien-, Streu- oder Kreisdiagramm verdeutlicht. Kibana bietet auch Canvas an, ein Tool, mit dem Benutzer Dia-Decks erstellen können, die ihre Daten direkt aus Elasticsearch abrufen. Logstash stellt einen Eingabestrom für Elasticsearch zur Verfügung.
Zusätzlich dient Kibana in seiner Funktion als Visualisierungsschicht als Hauptschnittstelle von Logz.io. Grafana wird für die Anzeige von Metriken und Zeitreihenvisualisierungen verwendet.
Vielseitige Integration
Bei der Konzeption ihrer Lösung haben die Entwickler von Logz.io auf eine hohe Interoperabilität geachtet. Es kann mit jeder Datenquelle integriert werden, indem eine Vielzahl von verschiedenen Integrationen für verschiedene Anwendungen und Plattformen wie Appender und Native Data Shipper verwendet werden. Darüber hinaus kann Logz.io in mehreren Netzwerken gleichzeitig verwendet werden. Hier können Daten aus mehreren Quellen aggregiert werden. Dazu gehören z.B. Anwendungen, die über Netzwerke verteilt sind. Der Einsatz verschiedener Cloud-Systeme wie AWS und Azure in mehreren Regionen ist denkbar.
Einsatz von künstlicher Intelligenz und Big Data
Um noch bessere Ergebnisse zu erzielen, kombiniert Logz.io menschliche Interaktion mit maschinellem Lernen, das Hunderte von verschiedenen Datentypen und Repositorien online überprüft und mit bereits im System erfassten Protokollen vergleicht. Einmal identifiziert, werden diese Ereignisse hervorgehoben und zusammen mit ausführbaren und kontextabhängigen Informationen angezeigt, die Administratoren helfen, Probleme schnell zu lösen.
Aber auch Big-Data-Methoden werden eingesetzt, um Wissen zu gewinnen. Hier wird der Data Optimizer zur Integration von Big-Data-Systemen mit Logz.io eingesetzt und nutzt die Terabyte an Maschinendaten, die ohnehin automatisch generiert werden. Aber obwohl einige dieser Daten wichtige Informationen über die Leistung des Systems enthalten, ist die große Mehrheit nicht immer korrekt. Die relevanten Daten unter den in der Cloud gespeicherten Daten müssen identifiziert werden, da die Bereitstellung irrelevanter Informationen extrem teuer und unnötig ist.
Aus diesem Grund ermöglicht der Datenoptimierer den Benutzern, relevante Daten in Konten ohne Ablaufdatum zu speichern und zu aggregieren. Erweiterte Analysen und maschinelles Lernen werden eingesetzt, um kritische Ereignisse zu identifizieren und zusammenzufassen. Auf diese Weise können Teams wählen, welche Daten länger gespeichert werden sollen, und wiederkehrende Daten aggregieren, um unnötige Daten und damit den benötigten Speicherplatz zu reduzieren.
Vorteile durch automatisierte Protokollauswertung
Die Vorteile einer automatisierten Protokollauswertung liegen auf der Hand. Administratoren erhalten einen kontinuierlichen Überblick über Anwendungen und die Infrastrukturen, auf denen sie laufen. Dadurch können sie die maximale Leistung und Verfügbarkeit für die Benutzer sicherstellen.
Zudem können Administratoren andere IT-Teams mit verbesserten Protokollberichten unterstützen. Open-Source-Überwachungs- und Fehlerbehebungswerkzeuge tragen beispielsweise dazu bei, dass Entwickler weniger Zeit mit der Fehlersuche verbringen und mehr Zeit für ihre eigentlichen Aufgaben bleibt.
Nicht zuletzt schont eine Protokollauswertung auch das IT-Budget. Sie reduziert mit einer Reihe von Analyse- und Optimierungswerkzeugen die Kosten für die Überwachung von IT-Ressourcen, während die IT-Infrastruktur komplexer wird und das Datenvolumen mit den eingesetzten Anwendungen steigt.