Visualisieren Sie Apache -Protokolle mit Elk Stack

Visualisieren Sie Apache -Protokolle mit Elk Stack

Die Überwachung und Analyse von Protokollen für verschiedene Infrastrukturen in Echtzeit kann eine sehr langwierige Aufgabe sein. Wenn Sie sich mit Diensten wie Webservern befassen, die ständig Daten protokollieren, kann der Prozess sehr komplex und nahezu unmöglich sein.

Wenn Sie wissen, wie man mit Tools die Protokolle in Echtzeit überwacht, visualisiert und analysiert.

In diesem Tutorial wird erläutert, wie Sie eine der besten Echtzeit-Protokollsammlungen und Analyse von Tools-Elk verwenden können. Mit Elk, allgemein bekannt als Elasticsearch, Logstash und Kibana, können Sie Daten von einem Apache-Webserver in Echtzeit sammeln, protokollieren und analysieren.

Was ist Elchstapel?

Elk ist ein Akronym, das verwendet wird, um drei Haupttools für Open-Source-Tools zu beziehen: Elasticsearch, Logstash und Kibana.

Elasticsarch ist ein Open-Source. Es ist ein leichtes und schnelles Werkzeug, das mit Leichtigkeit mit Terabyte von Daten umgehen kann.

Logstash Die Engine ist eine Verbindung zwischen serverseitig und elasticsearch, mit der Sie Daten von einer Auswahl von Quellen zu Elasticsearch sammeln können. Es bietet leistungsstarke APIs, die mit Anwendungen, die in verschiedenen Programmiersprachen mit Leichtigkeit entwickelt wurden.

Kibana ist das letzte Stück des Elchstapels. Es handelt sich um ein Datenvisualisierungstool, mit dem Sie die Daten visuell analysieren und aufschlussreiche Berichte generieren können. Es bietet auch Grafiken und Animationen, mit denen Sie mit Ihren Daten interagieren können.

Elch Stack ist sehr leistungsfähig und kann unglaubliche Daten-Analytics-Dinge tun.

Obwohl die verschiedenen Konzepte, die wir in diesem Tutorial diskutieren werden.

Elasticsarch: https: // linkfy.zu/elasticsearch-referenz

Logstash: https: // linkfy.an/logstasreference

Kibana: https: // linkfy.nach/kibanaguide

So installieren Sie Apache?

Bevor wir mit der Installation von Apache und allen Abhängigkeiten beginnen, ist es gut, ein paar Dinge zu notieren.

Wir haben dieses Tutorial über Debian 10 getestet.6, aber es wird auch mit anderen Linux -Verteilungen funktionieren.

Abhängig von Ihrer Systemkonfiguration benötigen Sie Sudo- oder Root -Berechtigungen.

Die Kompatibilität und Benutzerfreundlichkeit von Elchstapel können je nach Versionen variieren.

Der erste Schritt besteht darin, sicherzustellen, dass Ihr System vollständig aktualisiert wird:

sudo apt-Get-Update
sudo apt-get upgrade

Der nächste Befehl besteht darin, den Apache2 -Webserver zu installieren. Wenn Sie einen minimalen Apache installieren möchten, entfernen Sie die Dokumentation und Dienstprogramme aus dem folgenden Befehl.

sudo apt-Get Installieren Sie Apache2 apache2-utils apache2-doc -y
sudo service apache2 starten

Inzwischen sollten Sie einen Apache -Server auf Ihrem System ausgeführt haben.

So installieren Sie Elasticsearch, Logstash und Kibana?

Wir müssen jetzt den Elchstapel installieren. Wir werden jedes Tool einzeln installieren.

Elasticsarch

Beginnen wir mit der Installation von Elasticsearch. Wir werden nützlich zur Installation verwenden, aber Sie erhalten hier eine stabile Veröffentlichung von der offiziellen Download -Seite hier:

https: // www.elastisch.CO/Downloads/ElasticSearch

Bei Elasticsearch muss Java laufen lassen. Glücklicherweise wird die neueste Version mit einem OpenJDK -Paket gebündelt, wobei der Ärger der Installation manuell entfernt wird. Wenn Sie eine manuelle Installation durchführen müssen, lesen Sie die folgende Ressource:

https: // www.elastisch.CO/Guide/EN/Elasticsearch/Referenz/Strom/Setup.HTML#JVM-Version

Im nächsten Schritt müssen wir den offiziellen elastischen APT -Signierschlüssel mit dem Befehl herunterladen und installieren:

WGet -qo - https: // Artefakte.elastisch.CO/GPG-KEY-ELASTICSECHSEARCH | sudo apt-key add -

Vor dem Fortfahren benötigen Sie möglicherweise ein APT-transport-HTTPS-Paket (für Pakete, die über HTTPS bedient werden), bevor Sie mit der Installation fortfahren.

sudo apt-get installieren APT-transport-https

Fügen Sie nun die APT -Repo -Informationen zu den Quellen hinzu.Liste.D Datei.

Echo “Deb https: // Artefakte.elastisch.co/pakete/7.X/APT Stable Main | | sudo tee/etc/apt/Quellen.Liste.d/elastic-7.X.Liste

Aktualisieren Sie dann die Liste der Pakete in Ihrem System.

sudo apt-Get-Update

Installieren Sie Elasticsearch mit dem folgenden Befehl:

sudo apt-Get Installieren Sie Elasticsearch

Nach der Installation von Elasticsearch, starten und aktivieren Sie einen Start beim Start mit den SystemCTL -Befehlen:

sudo systemctl dämon-reload
sudo systemctl aktivieren elasticsearch.Service
sudo systemctl starten elasticsearch

Der Service kann eine Weile dauern, bis der Start. Warten Sie ein paar Minuten und bestätigen Sie, dass der Service mit dem Befehl in Betrieb ist:

sudo systemctl Status Elasticsarch.Service

Testen Sie mit Curl, ob die Elasticsearch -API verfügbar ist, wie in der folgenden JSON -Ausgabe gezeigt:

curl -x bekommen "localhost: 9200/?hübsch"

"Name": "Debian",
"cluster_name": "Elasticsearch",
"cluster_uuid": "vzhcutuqssko1ryhqmdwsg",
"Ausführung" :
"Nummer 7.10.1 ",
"Build_Flavor": "Standard",
"Build_type": "Deb",
"Build_hash": "1C34507E66D7DB1211F66F3513706FDF548736AA",
"Build_date": "2020-12-05T01: 00: 33.671820z ",
"Build_snapshot": Falsch,
"Lucene_version": "8.7.0 ",
"minimum_wire_compatibility_version": "6.8.0 ",
"minimum_index_compatibility_version": "6.0.0-beta1 "
,
"Slogan": "Weißt du, für die Suche"

So installieren Sie Logstash?

Installieren Sie das Logstash -Paket mit dem Befehl:

sudo apt-Get Installieren Sie Logstash

So installieren Sie Kibana?

Geben Sie den folgenden Befehl ein, um Kibana zu installieren:

sudo apt-Get Installieren Sie Kibana

So konfigurieren Sie Elasticsearch, Logstash und Kibana?

So konfigurieren Sie den Elch -Stack:

So konfigurieren Sie Elasticsearch?

In Elasticsearch werden Daten in Indizes bestellt. Jeder dieser Indizes hat einen oder mehrere Scherde. Eine Shard ist eine in sich geschlossene Suchmaschine, die zum Verarbeiten und Verwalten von Indizes und Abfragen für eine Untergruppe in einem Cluster innerhalb von Elasticsearch verwendet wird. Ein Shard funktioniert als Instanz eines Lucene -Index.

Die Standardinstallation von Elasticsearch erstellt fünf Scherben und eine Replik für jeden Index. Dies ist ein guter Mechanismus in der Produktion. In diesem Tutorial werden wir jedoch mit einer Scherbe und ohne Nachbildungen arbeiten.

Erstellen Sie zunächst eine Indexvorlage im JSON -Format. In der Datei setzen wir die Anzahl der Scherben auf ein und null Replikate für übereinstimmende Indexnamen (Entwicklungszwecke).

In Elasticsearch bezieht sich eine Indexvorlage darauf, wie Sie Elasticsearch bei der Einrichtung des Index während des Erstellungsprozesses anweisen.

In der JSON -Vorlagendatei (index_template.JSON) geben Sie die folgenden Anweisungen ein:


"Vorlage":"*",
"Einstellungen":
"Index":
"number_of_shards": 1,
"number_of_replicas": 0


Wenden Sie die JSON -Konfiguration mit Curl auf die Vorlage an, die auf alle erstellten Indizes angewendet wird.

curl -x put http: // localhost: 9200/_template/defaults -h 'content -type: application/json' -d @index_template.JSON
"Anerkennung": true

Nach der Bewerbung wird Elasticsearch mit einer bestätigten: True -Erklärung antworten.

So konfigurieren Sie Logstash?

Damit Logstash Protokolle von Apache sammelt, müssen wir es konfigurieren, um Änderungen in den Protokollen durch das Sammeln, Verarbeiten und Speichern der Protokolle in Elasticsearch zu beobachten. Damit dies geschieht, müssen Sie den Sammelprotokollpfad in Logstash einrichten.

Starten Sie mit der Erstellung von Logstash -Konfiguration in der Datei/etc/logstash/conf.D/Apache.Conf

Eingabe
Datei
Path => '/var/www/*/logs/Access.Protokoll'
Typ => "Apache"


Filter
grock
match => "message" => "%kombiniertapachelog"


Ausgang
Elasticsearch

Stellen Sie nun sicher, dass Sie den Logstash -Service aktivieren und starten können.

sudo systemctl aktivieren logstash.Service
sudo systemctl starten logstash.Service

So aktivieren und konfigurieren Sie Kibana?

Um Kibana zu aktivieren, bearbeiten Sie die Haupt .YML -Konfigurationsdatei in/etc/kibana/kibana.YML. Suchen Sie die folgenden Einträge und wenden Sie sich an. Verwenden Sie nach Abschluss SystemCTL, um den Kibana -Service zu starten.

Server.Port: 5601
Server.Gastgeber: "Localhost"
sudo systemctl aktivieren kibana.Service && sudo systemctl starten kibana.Service

Kibana erstellt Indexmuster basierend auf den verarbeiteten Daten. Daher müssen Sie Protokolle mit Logstash sammeln und in Elasticsearch speichern, die Kibana verwenden kann. Verwenden Sie Curl, um Protokolle von Apache zu generieren.

Sobald Sie Protokolle von Apache haben, starten Sie Kibana in Ihrem Browser mit der Adresse http: // localhost: 5601, mit der die Kibana -Indexseite startet.

Im Haupt. Standardmäßig verwendet Kibana das Logstash* Index -Muster, das alle von Logstash generierten Standardindizes entspricht.

Wenn Sie keine Konfiguration haben, klicken Sie auf Erstellen, um die Protokolle anzuzeigen.

So sehen Sie Kibana -Protokolle?

Während Sie weiterhin Apache -Anforderungen ausführen, sammelt Logstash die Protokolle und fügt sie zu Elasticsearch hinzu. Sie können diese Protokolle in Kibana anzeigen, indem Sie auf die Option Discover im linken Menü klicken.

Mit der Registerkarte Discover können Sie die Protokolle ansehen, sobald der Server sie generiert. Um die Details eines Protokolls anzuzeigen, klicken Sie einfach auf das Dropdown -Menü.

Lesen und verstehen Sie die Daten aus den Apache -Protokollen.

So suchen Sie nach Protokollen?

In der Kibana -Schnittstelle finden Sie eine Suchleiste, mit der Sie nach Daten suchen.

Beispiel: Status: aktiv

Erfahren Sie hier mehr über Elk Query Strings:

https: // www.elastisch.co/leitfaden/en/elasticsearch/reference/5.5/Query-DSL-Query-String-Query.html#query-string-syntax

Da wir uns mit Apache -Protokollen befassen, ist eine mögliche Übereinstimmung ein Statuscode. Suchen Sie daher:

Antwort: 200

Dieser Code sucht nach Protokollen mit dem Statuscode von 200 (OK) und zeigt ihn Kibana an.

So visualisieren Sie Protokolle?

Sie können visuelle Dashboards in Kibana erstellen, indem Sie die Registerkarte Visualisieren auswählen. Wählen Sie den Art des Dashboards zum Erstellen aus und wählen Sie Ihren Suchindex aus und wählen Sie Ihren Suchindex aus und wählen Sie. Sie können den Standard für Testzwecke verwenden.

Abschluss

In diesem Leitfaden haben wir einen Überblick über die Verwendung des Elk -Stacks zum Verwalten von Protokollen besprochen. Diese Technologien können jedoch noch mehr abdecken. Wir empfehlen, selbst zu erkunden.