2017-06-06 3 views
2

Ich habe online über ELK Stack für mein neues Projekt studiert.Welche Rolle spielen Logstash Shipper und Logstash Indexer im ELK-Stack?

Obwohl es in den meisten Tech-Blogs darum geht, ELK einzustellen.

Obwohl ich mehr Informationen zu Beginn benötigen.

  1. Was ist Logstash? Weiter, Logstash Shipper und Indexer.
  2. Was ist die Rolle von Elasticsearch?

Alle Leads werden auch geschätzt, wenn nicht eine richtige Antwort.

+0

Elasticsearch ist eine verherrlichte Datenbank mit einem effektiven Suchmechanismus. Logstash ist eines von vielen Daten-Frontends, das Daten in Elasticsearch-freundlicher Weise liefern kann - folglich indiziert Logstashs Indexer die Daten (Extrahieren von Feldern, Entscheiden, welcher Index zum Speichern der Daten usw. verwendet wird), und der Versender liefert die Daten an Elasticsearch. .. – zwer

Antwort

3

Ich werde versuchen, Ihnen den Elchstapel mit einem Beispiel zu erklären.

Anwendungen generieren Protokolle, die alle das gleiche Format (Timestamp | Loglevel | Nachricht) auf jedem Computer in unserem Cluster haben und diese Protokolle in eine Datei schreiben.

Filebeat (ein Logshipper aus Elk) verfolgt diese Datei, sammelt regelmäßig Aktualisierungen der Datei und leitet sie über das Netzwerk an Logstash weiter. Im Gegensatz zu logstash ist Filebeat eine leichtgewichtige Anwendung, die sehr wenig Ressourcen verbraucht, so dass es mir nichts ausmacht, sie auf jedem Rechner im Cluster auszuführen. Es merkt, wenn Logstash inaktiv ist und wartet mit Datentransfer bis Logstash wieder läuft (keine Logs sind verloren).

Logstash empfängt Nachrichten von allen Log-Shillern über das Netzwerk und wendet Filter auf die Nachrichten an. In unserem Fall teilt es jeden Eintrag in Timestamp, Loglevel und Message auf. Dies sind separate Felder und können später leicht gesucht werden. Alle Nachrichten, die diesem Format nicht entsprechen, erhalten ein Feld: ungültiges Protokollformat. Diese Nachrichten mit Feldern werden nun in einer Geschwindigkeit an die elastische Suche weitergeleitet, mit der die elastische Suche umgehen kann.

Elastische Suche speichert alle Nachrichten und Indizes (bereitet für schnelle Suche) alle Felder im Nachrichten. Es ist unsere Datenbank.

Wir verwenden dann Kibana (auch von Elk) als GUI für den Zugriff auf die Protokolle. In Kibana kann ich so etwas machen: Zeige mir alle Logs zwischen 3-5 Uhr heute mit Loglevel Fehler, dessen Nachricht MyClass enthält. Kibana wird elasticsearch nach den Ergebnissen fragen und diese anzeigen

+0

Ich glaube, wenn Sie Logstash in diesem Fall sagen, meinen Sie Logstash Indexer. Becaus elogstash Versender versendet nur Protokolle. Hab ich recht ? –

+0

Soweit ich weiß logstash shipper wurde durch Beats ersetzt. Es gibt verschiedene Beats, die alle als Versender zum Logstash dienen, aber für verschiedene Arten von Daten (Logs in Dateien, Performancedaten, Netzwerkaktivität ...). Und ja, wenn ich über logstash sprechen, wird sein logstash indexer – herm

+0

Beats auf Maschinen installiert, von denen der leichte Beat-Agent Daten an logstash shipper sendet. Mein Zweifel ist (wenn ich recht habe), holt logstash shipper Log von verschiedenen Beats und schickt sie an indexer, indem er sie irgendwie konsolidiert? Nur ein Zweifel. –