Menü
Ein Beitrag von Adacor

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.

Ohne 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

Der magische Stundenplan mit Python

IT-News

Der magische Stundenplan mit Python

Als Azubi hat man es nicht leicht. Allein das Überprüfen des Stundenplans nach gewissen Vorfällen kostet gefühlt viel Zeit. Einmal Zeit investieren, dabei etwas...

weiter lesen

Paketanalyse mit Sflow oder Netflow

Hosting, IT-News

Paketanalyse mit Sflow oder Netflow

Sflow und Netflow stellen beide Mechanismen zur Verfügung, die eine Paketanalyse erlauben.

weiter lesen

Datenbanksysteme – von den Anfängen bis hin zu MySQL

IT-News

Datenbanksysteme – von den Anfängen bis hin zu MySQL

Von den Anfängen der Datenbanksysteme bis zu MySQL

weiter lesen


Neueste Nachrichten von Adacor

DevOps in Unternehmen

Hosting

Wann DevOps für Unternehmen sinnvoll ist

Das Zusammenfinden der beiden Bereiche „Entwicklung und Betrieb“ ist vor der ersten Zeile Code obligatorisch, denn DevOps ist kein Framework, sondern eine Kultur.

weiter lesen

Der Schlüssel zum effektiven Domain Management

Domains

Domain Management: Verwalten Sie Ihre Domains (noch) selbst?

Die Anzahl der Domains nimmt verstärkt zu. Deren Management wird zunehmend zur Herausforderung. Wir bieten Ihnen den Schlüssel zum effektiven Domain Management.

weiter lesen

So funktioniert Cloud Hosting

Cloud

So funktioniert Cloud Hosting

Das Modell Cloud Hosting verspricht jederzeit skalierbare, virtualisierte Server, die immer die Leistung zur Verfügung stellen, die gerade benötigt wird.

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.