Die folgenden Installationen verwenden alle das Verzeichnis ~/ als Stammverzeichnis der Installation. ElasticSearch Bild herunterladen: $ sudo docker pull elasticsearch:5.5.0 Führen Sie den ElasticSearch-Container aus: $ sudo docker run -it -d -p 9200:9200 -p 9300:9300 \ -v ~/elasticsearch/data:/usr/share/elasticsearch/data \ --name myes elasticsearch:5.5.0 Bitte beachten Sie, dass bei Verwendung von Version 6 oder höher JDK-Fehler auftreten. Überprüfen Sie die Protokolle. $ Docker-Protokolle -f myes Zeigen Sie die Protokolle an:
Die im Internet gefundene ungefähre Bedeutung lautet: jdk9 ist nicht sehr freundlich zu elasticSearch (die Version ist zu neu) und es muss JDK8 verwendet werden. Ich verwende JDK8u152 (jdk-8u152-windows-x64.exe). Wenn Sie JDK9 und elasticSearch-rtf (v5.1.1) verwenden, tritt der folgende Fehler auf. Bitte achten Sie besonders darauf, dass die Version elasticSearch6.0 JDK9 verwenden muss, da sonst das von der offiziellen Website heruntergeladene MSI nicht erfolgreich installiert werden kann. Der Grund wurde nicht sorgfältig geprüft. Das ist auch ein sehr ärgerliches Problem, deshalb habe ich einfach direkt die stabile Version v5.5.0 installiert. Logstash Bild herunterladen: $ sudo docker pull logstash:5.5.0 Erstellen Sie eine neue Konfigurationsdatei: $ mkdir ~/logstash/conf.d && cd logstash/conf.d $ vim logstash.conf logstash.conf: Eingabe { schlägt { Port => 5044 # Dieser Port muss derselbe sein wie der Port in filebeat.yml} Datei { Pfad => "/data/logs" # start_position => "Anfang" } } Filter { #grok { # Übereinstimmung => { "Nachricht" => "%{COMBINEDAPACHELOG}" } #} #Datum { # Übereinstimmung => ["Zeitstempel", "tt/MMM/jjjj:HH:mm:ss Z"] #} grok { patterns_dir => "/etc/logstash/conf.d/patterns" Übereinstimmung => {"Nachricht" => "%{TIMESTAMP_ISO8601:Zeit}\S%{MYSELF:msgid}%{MYSELF:Methode}%{MYDATA:Daten}%{MYSELF:Benutzerinfo}\S%{LOGLEVEL:Ebene}\S%{MYSELF:Thread}%{MYSELF:Anwendung}%{MYSELF:IP}"} } Datum { #match => [ "Zeit", "JJJJ-MM-tt HH:mm:ss,SSS" ] Übereinstimmung => [ "Zeit", "ISO8601" ] Ziel => "@Zeitstempel" Zeitzone => "Asia/Phnom_Penh" } } Ausgabe { stdout { Codec => Rubydebug } elastische Suche Aktion => "Index" Hosts => ["172.17.10.114:9200"] index => "%{[Felder][Indexname]}-%{+JJJJ.MM.tt}" } } Führen Sie den Logstash-Container aus: $ sudo docker run -it -d -p 5044:5044 \ -v ~/logstash/conf.d:/etc/logstash/conf.d \ -v ~/logstash/data/logs:/data/logs \ --name logstash logstash:5.5.0 \ -f /etc/logstash/conf.d/logstash.conf Kibana Bild herunterladen: $ sudo docker pull kibana:5.5.0 Erstellen Sie eine neue Konfigurationsdatei: $ mkdir ~/kibana && cd ~/kibana $ vim kibana.yml kibana.yml: Server-Port: 5601 server.host: "0.0.0.0" elasticsearch.url: "http://172.17.10.114:9200" Führen Sie den Kibana-Container aus: $ sudo docker run -it -d -p 5601:5601 \ -v ~/kibana:/etc/kibana \ --name kibana kibana:5.5.0 Filebeat Filebeat muss auf dem Server bereitgestellt werden, auf dem Protokolle gesammelt werden müssen. Bild herunterladen: $ sudo docker pull docker.elastic.co/beats/filebeat:5.5.0 Erstellen Sie eine neue Konfigurationsdatei: Dateibeat.prospectors: - Typ: Protokoll Pfade: - ~/filebeat/logs #Geben Sie den Pfad der zu erfassenden Protokolldateien an: indexname: xxx # Tragen Sie hier den Projektnamen entsprechend dem Index => "%{[fields][indexname]}-%{+YYYY.MM.dd}" ein. Ausgabe.logstash: Gastgeber: ["172.17.10.114:5044"] Führen Sie den Filebeat-Container aus: $ sudo docker run -it -d \ -v ~/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml \ --name filebeat docker.elastic.co/beats/filebeat:5.5.0 Anbei ein Flussdiagramm der ELK-Struktur: Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Mysql 5.6.37 Winx64-Installation Dual-Version MySQL-Hinweise
>>: Detaillierte Erklärung des DOM DIFF-Algorithmus in der React-Anwendung
Vorwort: Beim Entwerfen einer Tabelle in MySQL em...
MySQL-Dienst stoppen Klicken Sie in Windows mit d...
Ich habe viele Tutorials gelesen, aber festgestel...
Bildbeschleuniger Manchmal ist es schwierig, Bild...
Inhaltsverzeichnis 1. Sicherheitsprobleme mit Doc...
<br />Die Benutzererfahrung wird von chinesi...
Ergebnisse erzielen html <div Klasse="Con...
Deinstallieren Sie die alte MySQL-Version (übersp...
Das Projekt wurde in diesen Tagen getestet und de...
In diesem Blog besprechen wir zehn Leistungseinst...
1. Geben Sie das Verzeichnis ein, in dem Ihr Proj...
Ein allgemeiner Vorschlag besteht darin, Indizes ...
1. Einleitung Presto ist eine Open-Source-SQL-Abf...
Zugehörige Dokumente Ein Teil dieses Artikels wir...
1. Unterschiede zwischen JSON.stringify() und JSO...