GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie den ELK-Stack unter Debian 10 / Debian 9 ein

Der ELK-Stack ist eine Datenanalyseplattform mit vollem Funktionsumfang und besteht aus Elasticsearch, Logstash und dem Open-Source-Tool Kibana. Es hilft Ihnen, Protokolle zentral zu speichern und zu verwalten, und gibt Ihnen die Möglichkeit, die Probleme zu analysieren.

Dieser Artikel hilft Ihnen bei der Installation des ELK-Stacks unter Debian 10 / Debian 9.

Installieren Sie den ELK-Stack

Elasticsearch – Es speichert eingehende Protokolle von Logstash und bietet die Möglichkeit, die Protokolle/Daten in Echtzeit zu durchsuchen

Logstash – Verarbeitung (Sammeln, Anreichern und Senden an Elasticsearch) von eingehenden Protokollen, die von Beats (Forwarder) gesendet werden.

Kibana – Bietet Visualisierung von Ereignissen und Protokollen.

Beats – Wird auf Client-Rechnern installiert und sendet Protokolle über das Beats-Protokoll an Logstash oder Elasticsearch.

Installieren Sie Java

Elasticsearch erfordert entweder OpenJDK oder Oracle JDK, das auf Ihrem Computer verfügbar ist. Hier verwende ich für diese Demo OpenJDK.

sudo apt updatesudo apt install -y openjdk-11-jre

Überprüfen Sie die Java-Version.

Java-Version

Ausgabe:

openjdk version „11.0.7“ 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1 , gemischter Modus, Teilen)

Wenn Sie OracleJDK verwenden möchten, lesen Sie:

LESEN:So installieren Sie Oracle Java unter Debian 10 / Debian 9

Elastic-Repository hinzufügen

Installieren Sie wget und HTTPS-Unterstützung für apt.

sudo apt install -y wget apt-transport-https curl

ELK-Pakete können aus dem Elastic-Repository bezogen werden.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

Elasticsearch installieren und konfigurieren

Zunächst installieren wir nun den Elasticsearch-Server, eine Open-Source-Suchmaschine auf Basis von Lucene. Es bietet eine in Echtzeit verteilte, mandantenfähige Volltextsuchmaschine mit einer HTTP-Webschnittstelle und schemafreien JSON-Dokumenten.

Elasticsearch speichert von Logstash gesendete Daten und zeigt sie auf Benutzeranfragen über Kibana an.

Installieren Sie Elasticsearch mit dem folgenden Befehl.

sudo apt updatesudo apt install -y elasticsearch-oss

Starten Sie den Elasticsearch-Dienst.

sudo systemctl start elasticsearchsudo systemctl enable elasticsearch

Warten Sie einige Minuten und führen Sie den folgenden Befehl aus, um den Status der Elasticsearch-REST-Schnittstelle anzuzeigen.

curl -X GET http://localhost:9200

Ausgabe:

{ „name“ :„debian10“, „cluster_name“ :„elasticsearch“, „cluster_uuid“ :„6y4OcEnYS3qkN_AetQAYMQ“, „version“ :{ „number“ :„7.8.0“, „build_flavor“ :„oss“ , „build_type“ :„deb“, „build_hash“ :„757314695644ea9a1dc2fecd26d1a43856725e65“, „build_date“ :„2020-06-14T19:35:50.234439Z“, „build_snapshot“ :false, „lucene_version“ :„8.5.1“, "minimum_wire_compatibility_version" :"6.8.0", "minimum_index_compatibility_version" :"6.0.0-beta1" }, "tagline" :"You Know, for Search"}

Die obige Ausgabe bestätigt, dass Elasticsearch einwandfrei funktioniert.

Logstash installieren und konfigurieren

Logstash ist eine Open-Source-Engine zur Datenerfassung und Protokollanalyse. Es sammelt Protokolle, analysiert und speichert sie für die Suche auf Elasticsearch. Für Logstash sind mehr als 160 Plug-ins verfügbar, die die Möglichkeit bieten, verschiedene Arten von Ereignissen ohne zusätzliche Arbeit zu verarbeiten.

sudo apt install -y logstash-oss

Die Logstash-Konfigurationsdatei besteht aus drei Abschnitten, nämlich Eingabe, Filter und Ausgabe. Sie können alle drei Abschnitte in einer einzigen Datei oder einer separaten Datei für jeden Abschnitt ablegen und mit .conf enden.

Hier verwenden wir eine einzelne Datei zum Platzieren von Eingabe-, Filter- und Ausgabeabschnitten. Erstellen Sie eine Konfigurationsdatei im Verzeichnis /etc/logstash/conf.d/.

sudo nano /etc/logstash/conf.d/beats-syslog.conf

Im Eingabebereich konfigurieren wir Logstash so, dass es auf Port 5044 auf eingehende Protokolle von Beats (Forwarder) lauscht, die sich auf Client-Computern befinden.

input { beats { port => 5044 ssl => false }}

Im Filterabschnitt werden wir Grok verwenden, um Protokolle zu parsen, bevor sie zum Speichern an Elasticsearch gesendet werden.

Der folgende Grok-Filter sucht nach beschrifteten Syslog-Protokollen und versucht, sie zu parsen, um einen strukturierten Index zu erstellen.

filter {if [type] =="syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } date {match => [ "timestamp", "MMM d HH:mm :ss", "MMM tt HH:mm:ss" ]} }}

Weitere GROK-Filtermuster finden Sie hier.

Im Ausgabeabschnitt definieren wir, wo die Protokolle gespeichert werden sollen, im Falle des ELK-Stacks natürlich Elasticsearch.

output { elasticsearch { hosts => localhost index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" }stdout { codec => rubydebug }}

Starten und aktivieren Sie nun den Logstash-Dienst.

sudo systemctl start logstashsudo systemctl enable logstash

Wenn Sie auf ein Problem stoßen, sehen Sie sich die Logstash-Datei an.

sudo cat /var/log/logstash/logstash-plain.log

Kibana installieren und konfigurieren

Kibana bietet die Visualisierung von Daten, die auf Elasticsearch gespeichert sind. Installieren Sie Kibana mit dem folgenden Befehl.

sudo apt install -y kibana-oss

Standardmäßig lauscht Kibana auf dem lokalen Host, was bedeutet, dass Sie von einem anderen Computer aus nicht auf die Kibana-Weboberfläche zugreifen können. Datei /etc/kibana/kibana.yml bearbeiten.

sudo nano /etc/kibana/kibana.yml

Nehmen Sie Änderungen an der unteren Zeile mit Ihrer Server-IP-Adresse vor.

server.host:"192.168.0.10"

Starten und aktivieren Sie Kibana beim Start des Computers.

sudo systemctl start kibanasudo systemctl enable kibana

Filebeat installieren

Filebeat ist eine Software, die auf dem Client-Rechner läuft. Abhängig von der Konfiguration werden Protokolle zum Parsen an den Logstash-Server oder zum Speichern an Elasticsearch gesendet.

Installieren Sie wget und HTTPS-Unterstützung für apt.

sudo apt install -y wget apt-transport-https curl

ELK-Pakete können aus dem Elastic-Repository bezogen werden.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

Installieren Sie Filebeat mit dem folgenden Befehl.

sudo apt updatesudo apt install -y filebeat-oss

Die Hauptkonfigurationsdatei von Filebeat ist /etc/filebeat/filebeat.yml.

sudo nano /etc/filebeat/filebeat.yml

Wir müssen diese Datei bearbeiten, um Protokolle an den Logstash-Server zu senden.

Die folgenden Konfigurationen senden Syslog (/var/log/syslog) an den Logstash-Server. Für diese Demo habe ich /var/log/*.log auskommentiert, um zu vermeiden, dass alle Protokolle an den Logstash-Server gesendet werden.

. . .filebeat.inputs:# Jedes - ist eine Eingabe. Die meisten Optionen können auf der Eingangsebene festgelegt werden, sodass # Sie verschiedene Eingänge für verschiedene Konfigurationen verwenden können. # Unten sind die eingangsspezifischen Konfigurationen aufgeführt. - Typ:log # Auf wahr ändern, um diese Eingangskonfiguration zu aktivieren. aktiviert:wahr # Pfade, die gecrawlt und abgerufen werden sollen. Glob-basierte Pfade. Pfade:- /var/log/syslog . . .

Kommentieren Sie im Abschnitt Outputs den Abschnitt output.elasticsearch:aus, da wir keine Protokolle bei Elasticsearch speichern werden.

Gehen Sie nun zur Zeile output.logstash:und ändern Sie die Einträge, um Protokolle an Logstash zu senden, und geben Sie den Pfad zur kopierten SSL-Datei an.

Hinweis: Ersetzen Sie „192.168.0.10“ durch die IP-Adresse des Logstash-Servers.

. . .#----------------------------------------- Logstash-Ausgabe ------------------ ---------------output.logstash:# Die Logstash-Hosts hosts:["192.168.0.10:5044"]. . .

Starten Sie den Filebeat-Dienst neu.

sudo systemctl restart filebeat

Zugriff auf Kibana

Sie können über die folgende URL auf die Kibana-Weboberfläche zugreifen.

http://deine-ip-adresse:5601/

ODER

http://Ihr-Server-Name:5601

Bei Ihrer ersten Anmeldung müssen Sie den Filebeat-Index zuordnen. Klicken Sie auf Selbst erkunden um ein Indexmuster zu erstellen.

Klicken Sie auf das Menü (Hamburger-Symbol)>> Stapelverwaltung>>Indexmuster>> Indexmuster erstellen .

Geben Sie Folgendes in das Feld Indexmuster ein und klicken Sie auf Nächster Schritt.

filebeat-*

Wählen Sie @timestamp aus und klicken Sie dann auf Indexmuster erstellen.

@Zeitstempel

Gehen Sie die Felder im Index und ihren von Elasticsearch erfassten Kerntyp durch.

Klicken Sie im linken Navigationsbereich auf Entdecken, um die eingehenden Protokolle von einem Client-Rechner anzuzeigen.

Schlussfolgerung

Das ist alles. Ich hoffe, Sie haben gelernt, wie man den ELK-Stack auf Debian 10 / Debian 9 installiert. Bitte teilen Sie Ihr Feedback im Kommentarbereich mit.


Debian
  1. So installieren Sie Elasticsearch unter Debian Linux

  2. So installieren Sie Elasticsearch auf Debian 9

  3. So installieren Sie Elasticsearch unter Debian 10

  4. So installieren Sie ELK unter Ubuntu 20.04

  5. So installieren Sie den ELK-Stack auf RHEL 8

So installieren Sie den ELK-Stack unter Debian 10

So installieren Sie Elasticsearch unter Debian 11

So installieren Sie den LAMP-Stack unter Debian 11

So installieren Sie den ELK-Stack unter CentOS 7

So installieren Sie den ELK-Stack unter CentOS 8

So installieren Sie den ELK-Stack unter Debian 8