Auswertung von Logfiles mit den Tools von Elastic Stack

Die ständig wachsende Menge an Logfiles ist ein Schatz und Problem zugleich. Der „Elastic Stack“ bietet eine einfache und kostensparende Lösung für die sinnvolle Nutzung von Logfiles.

Logfile-Auswertung mit Opensource ToolsEine Lösung, um Logdateien sinnvoll zu nutzen, bietet das auch mit dem Begriff „Elastic Stack“ bezeichnete Zusammenspiel der Tools Elasticsearch, Logstash, Kibana und Beats.

Vor zehn Jahren war das Archivieren und Durchsuchen von Logdateien noch ein vergleichsweise übersichtliches Thema: In den Zeiten vor Smartphone & Co. war die Datenmenge zwar höher als jemals zuvor, doch immer noch relativ überschaubar. Das hat sich fundamental geändert.

Fakt ist: Das Internet gehört zum Alltag. Vom Smartphone mal eben die Mails, WhatsApp? oder Facebook checken, per App die nächste Zugverbindung suchen und buchen – die Liste der Möglichkeiten ließe sich endlos fortsetzen. Die mit diesen Prozessen verbundenen Datenmengen sind in den letzten Jahren explodiert. Monitoring, Ressourcenplanung und Fehlersuche stellen IT-Experten zunehmend vor Herausforderungen.
Die Menge der durch Web- und Applikations­server anfallenden, protokollierenden Logdateien war noch vor zehn Jahren recht überschaubar. Zum Sammeln von Logfiles reichten Tools wie Rsyslog völlig aus, die Daten wurden meist auf einem einzelnen Server gespeichert. Doch in Anbetracht der heutigen Datenmenge sieht das anders aus: Der Speicher ist irgendwann voll und Speicherplatz teuer. Außerdem nutzt die Cloud-Technologie Server, die flexibel entstehen, aber auch wieder verschwinden. Und dann sind die Logdateien weg.

Die vier Open Source Tools Elasticsearch, Logstash, Kibana und Beats sind für jeden frei zugänglich und aufgrund der einfachen Handhabung sowie der guten Skalierbarkeit in den letzten Jahren recht bekannt geworden. Sie ermöglichen die einfache Speicherung, Auswertung und Visualisierung von Logdateien. Deshalb finden diese Werkzeuge vor allem im Monitoring von Zugriffen und bei der Fehlersuche ihre Anwendung.

Logfiles durchsuchen und preiswert speichern: Elasticsearch

Elasticsearch ist eine ursprünglich aus Lucene entstandene Suchmaschine, die die Ergebnisse in einer NoSQL-Datenbank speichert. Sie ermöglicht ein einfaches und komfortables Durchsuchen von Logdateien und macht Zusammenhänge transparent. Das Tool ist explizit darauf ausgelegt, preiswert in die Breite zu skalieren: Statt immer größere und teurere Server einzusetzen, macht Elasticsearch es möglich, die Datenspeicherung auf mehrere kleinere Server zu verteilen. Daraus ergibt sich ein weiterer Vorteil: Die Vorhaltezeit für die Logs ist nahezu unbegrenzt. Daten können bei Bedarf Monate oder Jahre gespeichert werden.

Logfiles konsolidieren und durchsuchbar machen: Logstash

Als Logserver mit eingebauten Analysetools kann Logstash die Protokolle vieler Server zentral archivieren. Gleichzeitig macht das Tool die Daten quasi nebenbei auch noch durchsuchbar: Es sammelt die Logdateien, bereitet sie auf, schickt sie an einen zentralen Logstash Server und schreibt sie in Elasticsearch. Das heißt, Logstash fasst jeden Logeintrag, der eine oder mehrere Zeilen umfasst, zu einer Entität zusammen und schreibt diese dann in die Datenbank. Zusammengehörende Einträge liegen zusammengefügt statt verteilt vor. Die Anzahl, Art und Weise der Datenaufbereitung bestimmt der Nutzer. Alternativ kann der zentrale Logstash Server auch Logs von Tools wie Rsyslog annehmen und wie beschrieben aufbereiten.

Logstash stellt damit eine Sammlung von Fehlerquellen zur Verfügung. Diese ermöglicht es, fehlerhafte oder problematische Server leicht zu identifizieren. Doch nicht nur das: Aufgrund der vollständigen Erfassung von Webserver- und Datenbank-Server-Logs können Probleme sehr gut miteinander in Verbindung gesetzt werden.

Image

filoo ClouDEasy

Sie wollen eine sichere Cloud? Dann haben Sie diese mit CloudEasy soeben gefunden. Hier bekommen Sie eine skalierbare Lösung, mit der Sie sofort loslegen können.
Es gibt keine lange Einarbeitungszeit – diese Cloud funktioniert einfach.

Jetzt direkt informieren

Komfortables Visualisieren von Daten: Kibana

Mit Kibana steht schließlich ein Webfront­end zur Verfügung, um die gesammelten Daten zu visualisieren: Das Tool kann die Daten lesen, nach Belieben filtern und je nach Sinn und Ziel ansprechende Visualisierungen daraus erstellen.

Logfiles mit Elastic Stack analysieren

Zum Vergrößern klicken

Die Anwendungsszenarien sind vielfältig: IT-Leiter können beispielsweise eine einfachere Übersicht über die Auslastung ihrer Webserver erhalten. Oder es können Aufrufe einer Website aus verschiedenen Ländern verglichen werden. Darüber hinaus lässt sich der Verlauf der Zugriffe über einen sehr langen Zeitraum in der Historie anzeigen, um daraus gegebenenfalls Aussagen für die Zukunft zu treffen. Ein anderes Beispiel ist das Betreiben mehrerer Webseiten auf einem Server. Reagiert ein Server langsam, ist recht schnell klar, ob die Ursache im immensen Traffic liegt. Mit Kibana lässt sich leicht herausfinden, welche Website den starken Traffic verursacht – Ressourcen können daraufhin gegebenenfalls neu geplant werden: Liegt die stark besuchte Website eventuell auf einem anderen Server, werden die übrigen Seiten nicht gestört. Das Gleiche gilt für Bilder und Videos, die häufig aufgerufen werden. Die Beispiele zeigen: Die Visualisierung der Daten mit Kibana vereinfacht wesentlich die Kampagnen- und Ressourcenplanung.

Das Maximum aus den Daten herausholen: Beats

Beats ist das neueste Tool im Elastic Stack. Es bietet mit operativen Analysen Einblicke in Konfigurationen, Kapazität, Fehler und Events der Server- und Netzwerkinfrastruktur-Elemente in Rechenzentren oder Cloud-­Infrastrukturen. Die Beats-Plattform sendet die Events sicher und geschützt an Logstash und Elasticsearch. Derzeit sind drei Beats verfügbar:

Topbeat dient der Zusammenstellung von CPU, Speicherplatz und anderen Prozessen. Der auf die Server verteilte Top-Befehl unterstützt Linux, OS X und Windows und sendet die Metriken regelmäßig an Logstash oder Elasticsearch. Systemweite Daten wie zur System- und Speicher- beziehungsweise Festplattenauslastung sowie prozessspezifische Metriken können zentral organisiert werden.

Packetbeat stellt Echtzeit-Analysen für das Internet, Datenbanken und andere Netzwerkprotokolle bereit. Dafür setzt es Anfrage und Antwort in einer Transaktion zueinander in Beziehung und fügt die Daten über jede Transaktion in Elasticsearch ein. Es überwacht somit die Kommunikation zwischen den Servern im Netzwerk und stellt Einblicke in die Anwendungen zur Verfügung.

Filebeat übernimmt schließlich das Weiterleiten der Logdateien. Die Konfiguration von Filebeat erfolgt ganz einfach nach der Installation: Auf den Servern werden nur die Pfade konfiguriert, die Filebeat absuchen soll.

Zahlreiche weitere Beats sind bereits in Planung. Basis der Beats-Plattform ist die Libbeat-Bibliothek, die in der relativ neuen Open-Source-Programmiersprache Go geschrieben ist und auch als „golang“ bezeichnet wird. Bei Google entwickelt, hat sie das Ziel, für große Systeme skalierbar zu sein. Sie dient darüber hinaus Networking- und Multiprocessing-Zwecken. Typische Anwendungsgebiete sind zum Beispiel Analysen von Netzwerken oder die Überprüfung der Systemauslastung.

Einfach zu bedienen und kostensparend

Das Zusammenspiel von Elasticsearch, Logstash, Kibana und Beats vereinfacht das Monitoring von Web- und Applikationsservern: Schwer zu konsolidierende Daten werden auswertbar – und damit transparent und nutzbar, zum Beispiel als Entscheidungsgrundlagen. Und das zu sehr geringen Kosten. Die Open Source Tools sind einfach in der Anwendung – und das für jede Applikation, unabhängig von deren Größe. Außerdem sind sie für jeden einfach zugänglich. Das macht den Elastic Stack ziemlich einmalig: Alternativen wie Splunk und Greylog sind kostenpflichtig und in Deutschland kaum verbreitet.

Das Gesamtkonzept ist wichtig

Dennoch: Wichtig ist auch hier, genau zu überlegen, was das Ziel der Datensammlung und -auswertung sein soll. Das wird häufig unterschätzt: Die gesammelten Daten haben an sich noch keinen Nutzen. Das Sammeln von 300 Millionen Einträgen von einer Applikation ist leicht gemacht, doch sinnlos, wenn nicht klar ist, was damit passieren soll. Die Tools sind im Sammeln und Aufbereiten der Daten nicht wählerisch. Es empfiehlt sich deshalb, frühzeitig darüber nachzudenken, was am Ende mit den Daten erreicht werden soll und dann nur die dafür notwendigen Daten zu sammeln. Für Einsteiger hat der Elastic Stack den Vorteil, dass sie erst mal mit kleinen Applikationen beginnen und sich ausprobieren können.

Fazit

Das Zusammenspiel der für jeden kostenfrei zugänglichen Open Source Tools Elasticsearch, Logstash, Kibana und Beats ermöglicht das einfache Konsolidieren, Durchsuchen, Speichern und Auswerten von Logdateien. Letzteres eröffnet mit operativen Analysen umfassende Einblicke in Konfigurationen, Kapazität, Fehler und Events der Server- und Netzwerkinfrastruktur-Elemente in Rechenzentren oder Cloud-Infrastrukturen. Momentan stehen Topbeat, Packetbeat und Filebeat zur Verfügung. Es sind aber weitere Beats geplant. Während Logstash die Daten zusammenführt, durchsuchbar macht und sie auf einem zentralen Server ablegt, übernimmt die Suchmaschine Elasticsearch die Speicherung – bei Bedarf auf mehreren kleineren Servern. Das Webfrontend Kibana dient schließlich der Visualisierung der Suchergebnisse: Verschiedene ansprechende Diagramme und Graphen stehen je nach Sinn und Zweck der Auswertung zur Verfügung.

 

, , , , , , ,


Weitere Artikel zum Thema lesen

Verschlüsselung digitaler Kommunikation

Biz & Trends, IT Security, IT-News

Verschlüsselung digitaler Kommunikation

In unserer neuen Serie zur Verschlüsselung digitaler Kommunikation starten wir mit der Geschichte der Kryptografie.

weiter lesen

PXE Boot im Einsatz bei der ADACOR

IT-News

PXE Boot im Einsatz bei der ADACOR

PXE Boot ist die Abkürzung für Preboot Execution Environment. Dies bezeichnet eine Umgebung mit dem sich Rechner booten lassen, ohne Festplatten oder andere Speichermedien...

weiter lesen


Neueste Nachrichten von Adacor

Cloud Integration

Cloud

Beschleunigte Digitalisierung durch Cloud Computing

Ohne Prozessveränderungen kein Fortschritt bei der Digitalisierung. Doch Erfolgsfaktoren für eine erfolgreiche Cloud-Integration lassen sich benennen.

weiter lesen

Definition DevOps

Cloud

DevOps: Automatisieren anstelle von Reparieren

DevOps erforden ein Umdenken bei der Adminstration. OpenStack oder OpenNebula – womit gelingt die schnellere Umsetzung von Webservices?

weiter lesen

Mit SSL sicher verschlüsselt

IT Security, IT-News

SSL-Zertifikate mit dreijähriger Laufzeit am Ende

Erste Anbieter haben dreijährige Zertifikate bereits aus dem Programm genommen. Welche Auswirkungen hat dies auf den Bezug und die Erneuerung von SSL-Zertifikaten?

weiter lesen

Diese Website verwendet Cookies. Mit der weiteren Nutzung der Website stimmen Sie unserer Datenschutzerklärung zu.
Für weitere Informationen klicken Sie bitte hier.