2017-04-14 3 views
0

Ich habe den Dateibeat in einem Andock-Container ausgeführt und Logstash in einem anderen Docker-Container ausgeführt.Kann Pipeline nicht von Dateibeat zu Logstash setzen

In der Konfiguration von filebeat.yml wird die logstash-IP als mit der IP-Adresse von logstash als http: //: 5044 festgelegt.

die folgenden Fehler Facing

DNS Lookup-Fehler Warn "http://172.17.0.2:5044": Lookup http://localhost:5044/: ungültige Domain-Namen 2017.04.14 14: 16: 51,537977 single.go: 126: INFO Verbindungsfehler publishing Ereignisse (retrying): Lookup http://localhost:5044/: ungültiger Domain-Name 2017.04.14 14: 16: 51,538000 single.go: 152: INFO scheitern senden

Konfiguration von filebeat.yml hinsichtlich Stash Konfiguration

output: 
logstash: 
    enabled: true 
hosts: 
    - "172.17.0.2:5044" 
anmelden

Soll die Docker-IP des Log-Stash verwendet werden oder eine separate IP verwendet werden?

+0

Dies ist ein Konfigurationsproblem. Bitte geben Sie die Konfiguration an, die Sie verwenden. –

+0

In Dateibeat.yml wird logstash als Ausgabe konfiguriert, wobei nur das untere Feld unkommentiert ist. ### Logstash als Ausgabe logstash: # Die Logstash-Hosts Hosts: ["http://172.17.0.2:5044/"] Außerdem ist der Prospector für einen Pfad wie folgt konfiguriert: - /var/log/*.log Abgesehen von diesen beiden sind keine der Felder in Dateibeat.yml unkommentiert und werden verwendet. – Sudhi

Antwort

1

Die Verbindung zwischen Beats und Logstash basiert nicht auf dem HTTP-Protokoll. Konfigurieren Sie daher die Option hosts nicht mit einer URL. Jeder Logstash-Host sollte das Format host:port haben. Wie Sie anhand der Fehlermeldung sehen können, versucht es, den vollen Wert aufzulösen, den Sie als einen Domänennamen angegeben haben, der falsch ist (d. H. Er entspricht dem Wert nslookup "http://localhost:5044/").

Der Einzug in der in der Frage gezeigten Konfiguration ist ebenfalls deaktiviert. Die hosts Einstellung sollte ein Kind von logstash sein, so dass es eingerückt werden muss. Versuchen Sie es mit dieser statt einer Vertiefung Probleme zu vermeiden:

output.logstash.hosts: ['logstash:5044']

Wenn beide Logstash und Filebeat Behälter in der gleichen Docker Umgebung sind, dann können Sie die beiden Behälter verknüpfen und verwenden den Namen des Logstash Container als Host-Namen in Ihrer Konfigurationsdatei. Wenn sie sich auf separaten Hosts befinden, müssen Sie den Port 5044 von LS freilegen und die IP-Adresse des Host-Rechners in Ihrer FileBeat-Konfiguration verwenden.

+0

Einrückung ist ein Bearbeitungsproblem beim Kopieren und Einfügen. Probieren Sie Ihren Rat und udpate aus. – Sudhi

+0

Vorschlag funktioniert! Vielen Dank. – Sudhi

Verwandte Themen