ELK Stack Tutorial: Was ist Kibana? Logstash & Elasticsearch?
Was ist der ELK-Stack?
Die ELK-Stapel ist eine Sammlung von drei Open-Source-Produkten โ Elasticsearch, Logstash, und Kibana. Der ELK-Stack bietet eine zentralisierte Protokollierung, um Probleme mit Servern oder Anwendungen zu identifizieren. Damit kรถnnen Sie alle Protokolle an einem einzigen Ort durchsuchen. Es hilft auch, Probleme auf mehreren Servern zu finden, indem Protokolle wรคhrend eines bestimmten Zeitraums verbunden werden.
- E steht fรผr ElasticSearch: wird zum Speichern von Protokollen verwendet
- L steht fรผr LogStash : wird sowohl fรผr den Versand als auch fรผr die Verarbeitung und Lagerung von Holzstรคmmen verwendet
- K steht fรผr Kibana: ist ein Visualisierungstool (eine Webschnittstelle), die รผber Nginx oder Apache gehostet wird
ElasticSearch, LogStash und Kibana werden alle von der Firma Elastic entwickelt, verwaltet und gepflegt.
ELK Stack ist so konzipiert, dass Benutzer Daten aus jeder Quelle und in jedem Format รผbernehmen und diese Daten in Echtzeit durchsuchen, analysieren und visualisieren kรถnnen.
ELK-Stapel Architektur
Jetzt lernen wir in diesem ELK-Stack-Tutorial etwas รผber die ELK-Architektur:
Hier ist die einfache Architektur des ELK-Stacks

- Protokolle: Es werden Serverprotokolle identifiziert, die analysiert werden mรผssen
- Logstash: Sammeln Sie Protokolle und Ereignisdaten. Es analysiert und transformiert sogar Daten
- ElasticSearch: Die transformierten Daten von Logstash is Speichern, suchen und indizieren.
- Kibana: Kibana verwendet Elasticsearch DB zum Erkunden, Visualisieren und Teilen
Es ist jedoch eine weitere Komponente erforderlich, nรคmlich die Datenerfassung namens Beats. Dies fรผhrte dazu, dass Elastic ELK in Elastic Stack umbenannte.
Beim Umgang mit sehr groรen Datenmengen benรถtigen Sie mรถglicherweise Kafka oder RabbitMQ zum Puffern und fรผr die Ausfallsicherheit. Aus Sicherheitsgrรผnden kann nginx verwendet werden.
Jetzt in diesem Elastic-Stack-Tutorial: Lassen Sie uns alle diese Open-Source-Produkte genauer unter die Lupe nehmen:
Was ist Elasticsearch?
Elasticsearch ist ein NoSQL-Datenbank. Es basiert auf der Lucene-Suchmaschine und ist mit RESTful APIS erstellt. Es bietet einfache Bereitstellung, maximale Zuverlรคssigkeit und einfache Verwaltung. Es bietet auรerdem erweiterte Abfragen zur Durchfรผhrung von Detailanalysen und speichert alle Daten zentral. Dies ist hilfreich, um eine schnelle Suche in den Dokumenten durchzufรผhren.
Elasticsearch ermรถglicht Ihnen auch das Speichern, Durchsuchen und Analysieren groรer Datenmengen. Es wird meist als zugrundeliegende Engine fรผr Anwendungen verwendet, die Suchanforderungen erfรผllen. Es wurde in Suchmaschinenplattformen fรผr moderne Web- und Mobilanwendungen รผbernommen. Neben einer schnellen Suche bietet das Tool auch komplexe Analysen und viele erweiterte Funktionen.
Funktionen der elastischen Suche
- Der Open Source-Suchserver wird geschrieben mit Java
- Wird zum Indizieren heterogener Daten aller Art verwendet
- Verfรผgt รผber eine REST-API-Webschnittstelle mit JSON-Ausgabe
- Volltextsuche
- Nahezu-Echtzeit-Suche (NRT).
- Shardierter, replizierter, durchsuchbarer JSON-Dokumentspeicher
- Schemafreier, REST- und JSON-basierter verteilter Dokumentenspeicher
- Unterstรผtzung fรผr mehrere Sprachen und Geolokalisierung
Vorteile von Elasticsearch
- Speichern Sie schemalose Daten und erstellen Sie auรerdem ein Schema fรผr Ihre Daten
- Bearbeiten Sie Ihren Datensatz Datensatz fรผr Datensatz mithilfe von Multi-Dokument-APIs
- Filtern und fragen Sie Ihre Daten ab, um Erkenntnisse zu gewinnen
- Basierend auf Apache Lucene und bietet RESTful API
- Bietet horizontale Skalierbarkeit, Zuverlรคssigkeit und Mandantenfรคhigkeit fรผr die Echtzeitnutzung der Indizierung, um die Suche zu beschleunigen
- Hilft Ihnen, vertikal und horizontal zu skalieren
Wichtige Begriffe, die in der elastischen Suche verwendet werden
In diesem ELK-Tutorial lernen wir nun die in ElasticSearch verwendeten Schlรผsselbegriffe kennen:
| Bedingungen | Anwendungsbereich |
|---|---|
| Cluster | Ein Cluster ist eine Sammlung von Knoten, die gemeinsam Daten enthalten und gemeinsame Indizierungs- und Suchfunktionen bereitstellen. |
| Knoten | Ein Knoten ist eine Elasticsearch-Instanz. Es wird erstellt, wenn eine Elasticsearch-Instanz beginnt. |
| Index | Ein Index ist eine Sammlung von Dokumenten mit รคhnlichen Merkmalen, z. B. Kundendaten, Produktkataloge. Er ist sehr nรผtzlich bei der Durchfรผhrung von Indizierungs-, Such-, Aktualisierungs- und Lรถschvorgรคngen. Er ermรถglicht Ihnen, beliebig viele Indizes in einem einzigen Cluster zu definieren. |
| DokumentAAA | Es ist die grundlegende Informationseinheit, die indiziert werden kann. Es wird in einem JSON-Paar (Schlรผssel:Wert) ausgedrรผckt. '{โuserโ: โnullconโ}โ. Jedem einzelnen Dokument ist ein Typ und eine eindeutige ID zugeordnet. |
| Scherbe | Jeder Index kann in mehrere Shards aufgeteilt werden, um Daten verteilen zu kรถnnen. Der Shard ist der atomare Teil eines Indexes, der รผber den Cluster verteilt werden kann, wenn Sie weitere Knoten hinzufรผgen mรถchten. |
Was ist Logstash?
Logstash ist das Datenerfassungs-Pipeline-Tool. Es sammelt Dateneingaben und speist sie in Elasticsearch ein. Es sammelt alle Arten von Daten aus den verschiedenen Quellen und stellt sie fรผr die weitere Verwendung bereit.
Logstash kann Daten aus unterschiedlichen Quellen vereinheitlichen und die Daten an die gewรผnschten Ziele normalisieren. Es ermรถglicht Ihnen, alle Ihre Daten fรผr die Analyse und Visualisierung von Anwendungsfรคllen zu bereinigen und zu demokratisieren.
Es besteht aus drei Komponenten:
- Eingang: รbergeben von Protokollen, um sie in ein maschinenverstรคndliches Format zu verarbeiten
- Filter: Es handelt sich um eine Reihe von Bedingungen zum Ausfรผhren einer bestimmten Aktion oder eines bestimmten Ereignisses
- Ausgang: Entscheidungstrรคger fรผr verarbeitetes Ereignis oder Protokoll
Funktionen Logstash
Lassen Sie uns nun in diesem LogStash-Tutorial etwas รผber die Funktionen von LogStash lernen:
- Ereignisse werden mithilfe interner Warteschlangen durch jede Phase geleitet
- Ermรถglicht verschiedene Eingaben fรผr Ihre Protokolle
- Filtern/Parsen fรผr Ihre Protokolle
Vorteil von Logstash
- Angebote zentralisieren die Datenverarbeitung
- Es analysiert eine Vielzahl strukturierter/unstrukturierter Daten und Ereignisse
- ELK LogStash bietet Plugins zur Verbindung mit verschiedenen Arten von Eingabequellen und Plattformen
Was ist Kibana?
Kibana ist eine Datenvisualisierung, die den ELK-Stack vervollstรคndigt. Dieses Tool wird zur Visualisierung der Elasticsearch-Dokumente verwendet und hilft Entwicklern, einen schnellen Einblick darin zu erhalten. Das Kibana-Dashboard bietet verschiedene interaktive Diagramme, Geodaten und Grafiken zur Visualisierung komplexer Anfragen.
Es kann zum Suchen, Anzeigen und Interagieren mit Daten verwendet werden, die in Elasticsearch-Verzeichnissen gespeichert sind. Kibana hilft Ihnen, fortgeschrittene Leistungen zu erbringen Datenanalyse und visualisieren Sie Ihre Daten in einer Vielzahl von Tabellen, Diagrammen und Karten.
In Kibana gibt es verschiedene Methoden zum Durchsuchen Ihrer Daten.
Hier sind die hรคufigsten Suchtypen:
| Suche Art | Anwendungsbereich |
|---|---|
| Freitextsuche | Es wird zum Suchen einer bestimmten Zeichenfolge verwendet |
| Suchen auf Feldebene | Es wird fรผr die Suche nach einer Zeichenfolge in einem bestimmten Feld verwendet. |
| Logische Aussagen | Es wird verwendet, um Suchen zu einer logischen Aussage zusammenzufassen. |
| Suche in der Nรคhe | Es wird zum Suchen von Begriffen innerhalb einer bestimmten Zeichennรคhe verwendet. |
In diesem Kibana-Tutorial lernen wir nun die wichtigen Funktionen von Kibana kennen:
Merkmale von Kinbana:
- Leistungsstarkes Front-End-Dashboard, das indizierte Informationen aus dem Elastic Cluster visualisieren kann
- Ermรถglicht die Echtzeitsuche indizierter Informationen
- Sie kรถnnen in Elasticsearch gespeicherte Daten durchsuchen, anzeigen und mit ihnen interagieren
- Fรผhren Sie Abfragen zu Daten durch und visualisieren Sie Ergebnisse in Diagrammen, Tabellen und Karten
- Konfigurierbares Dashboard zum Aufteilen und Zerlegen von Logstash-Protokollen in Elasticsearch
- Kann historische Daten in Form von Grafiken, Diagrammen usw. bereitstellen.
- Echtzeit-Dashboards, die einfach konfigurierbar sind
- Kibana ElasticSearch ermรถglicht die Echtzeitsuche indizierter Informationen
Vor- und Nachteile von Kinbana
- Einfache Visualisierung
- Vollstรคndig in Elasticsearch integriert
- Visualisierungstool
- Bietet Echtzeitanalyse-, Diagramm-, Zusammenfassungs- und Debugging-Funktionen
- Bietet eine instinktive und benutzerfreundliche Oberflรคche
- Ermรถglicht das Teilen von Snapshots der durchsuchten Protokolle
- Ermรถglicht das Speichern des Dashboards und die Verwaltung mehrerer Dashboards
Warum Log-Analyse?
In Cloud-basierten Umgebungsinfrastrukturen sind Leistung und Isolation sehr wichtig. Die Leistung virtueller Maschinen in der Cloud kann je nach spezifischer Auslastung, Umgebung und Anzahl der aktiven Benutzer im System variieren. Daher kรถnnen Zuverlรคssigkeit und Knotenausfall zu einem erheblichen Problem werden.
Protokollverwaltungsplattform kann alle oben genannten Probleme รผberwachen sowie Betriebssystemprotokolle, NGINX, IIS-Serverprotokolle fรผr die Webverkehrsanalyse, Anwendungsprotokolle und Protokolle auf AWS verarbeiten (Amazon Web-Services).
Die Protokollverwaltung hilft DevOps-Ingenieuren und Systemadministratoren, bessere Geschรคftsentscheidungen zu treffen. Daher ist eine Protokollanalyse รผber Elastic Stack oder รคhnliche Tools wichtig.
ELK vs. Splunk
| Elch | Splunk |
|---|---|
| Elk ist ein Open-Source-Tool | Splunk ist ein kommerzielles Tool. |
| Elchstapel bietet nicht an Solaris Portabilitรคt dank Kibana. | Splunk-Angebote Solaris Portabilitรคt. |
| Die Verarbeitungsgeschwindigkeit ist streng begrenzt. | Bietet genaue und schnelle Prozesse. |
| ELK ist ein Technologie-Stack, der mit der Kombination Elastic Search- erstellt wurde.Logstash-Kibana. | Splunk ist ein proprietรคres Tool. Es bietet sowohl On-Premise- als auch Cloud-Lรถsungen. |
| In ELK sind Suche, Analyse und Visualisierung erst mรถglich, nachdem der ELK-Stack eingerichtet wurde. | Splunk ist ein komplettes Datenverwaltungspaket, das Ihnen zur Verfรผgung steht. |
| Das ELK-Tool unterstรผtzt keine Integration mit anderen Tools. | Splunk ist ein nรผtzliches Tool zum Einrichten von Integrationen mit anderen Tools. |
Case Studies
Netflix
Netflix verlรคsst sich stark auf den ELK-Stack. Das Unternehmen verwendet den ELK-Stack, um das Sicherheitsprotokoll des Kundendienstbetriebs zu รผberwachen und zu analysieren. Damit kann es Dokumente aus mehr als fรผnfzehn Clustern mit fast 800 Knoten indizieren, speichern und durchsuchen.
Die bekannte Social-Media-Marketing-Site LinkedIn verwendet den ELK-Stack zur รberwachung von Leistung und Sicherheit. Das IT-Team hat ELK mit Kafka integriert, um seine Last in Echtzeit zu unterstรผtzen. Ihr ELK-Betrieb umfasst mehr als 100 Cluster in sechs verschiedenen Rechenzentren.
Tripwire
Tripwire ist ein weltweites Security Information Event Management-System. Das Unternehmen verwendet ELK zur Unterstรผtzung der Protokollanalyse von Informationspaketen.
Medium
Medium ist eine berรผhmte Blog-Publishing-Plattform. Sie verwenden den ELK-Stack, um ihre Produktionsprobleme zu beheben. Das Unternehmen nutzt ELK auch zur Erkennung DynamoDB Heiรe Tรถpfe. Darรผber hinaus kann das Unternehmen mit diesem Stack jede Woche 25 Millionen einzelne Leser sowie Tausende von verรถffentlichten Beitrรคgen unterstรผtzen.
Vor- und Nachteile des ELK-Stacks
Vorteile
- ELK funktioniert am besten, wenn Protokolle von verschiedenen Apps eines Unternehmens in einer einzigen ELK-Instanz zusammenlaufen
- Es liefert erstaunliche Erkenntnisse fรผr diese einzelne Instanz und macht auรerdem die Anmeldung bei Hunderten verschiedener Protokolldatenquellen รผberflรผssig
- Schnelle Installation vor Ort
- Einfach einzusetzen. Skaliert vertikal und horizontal
- Elastic bietet eine Vielzahl von Sprachclients, darunter auch Ruby. Python. PHP, Perl, .NET, Java und JavaSkript und mehr
- Verfรผgbarkeit von Bibliotheken fรผr verschiedene Programmier- und Skriptsprachen
Nachteile
- Die Handhabung unterschiedlicher Komponenten im Stapel kann schwierig werden, wenn Sie zu komplexen Konfigurationen รผbergehen
- Es gibt nichts Besseres als Versuch und Irrtum. Je mehr Sie also tun, desto mehr lernen Sie dabei
Zusammenfassung
- Eine zentralisierte Protokollierung kann hilfreich sein, wenn Sie versuchen, Probleme mit Servern oder Anwendungen zu identifizieren
- Der ELK-Server-Stack ist nรผtzlich, um Probleme im Zusammenhang mit dem zentralisierten Protokollierungssystem zu lรถsen
- Der ELK-Stack ist eine Sammlung der drei Open-Source-Tools Elasticsearch, Logstash Kibana
- Elasticsearch ist eine NoSQL-Datenbank
- Logstash ist das Datenerfassungs-Pipeline-Tool
- Kibana ist eine Datenvisualisierung, die den ELK-Stack vervollstรคndigt
- In Cloud-basierten Umgebungsinfrastrukturen sind Leistung und Isolation sehr wichtig
- Im ELK-Stack ist die Verarbeitungsgeschwindigkeit streng begrenzt Splunk bietet prรคzise und schnelle Prozesse
- Netflix, LinkedIn, Tripware und Medium nutzen alle den ELK-Stack fรผr ihr Unternehmen
- ELK Syslog funktioniert am besten, wenn Protokolle von verschiedenen Apps eines Unternehmens in einer einzigen ELK-Instanz zusammenlaufen
- Die Handhabung unterschiedlicher Komponenten im Stapel kann schwierig werden, wenn Sie zu komplexen Konfigurationen รผbergehen
Verweisen Sie auf unsere Fragen und Antworten zum ElasticSearch-Interview sowohl fรผr Neueinsteiger als auch fรผr erfahrene Kandidaten.


