Ho una serie di applicazioni ancorate su più server e cerco di configurare la registrazione centralizzata a livello di produzione con ELK. Sto bene con la parte ELK stessa, ma sono un po 'confuso su come inoltrare i log ai miei logstashes. Sto cercando di usare Filebeat, a causa della sua funzione loadbalance. Vorrei anche evitare di riempire Filebeat (o qualsiasi altra cosa) in tutte le mie finestre mobili, e tenerlo separato, messo in bacino o meno.Registrazione di app Docker con Filebeat e Logstash
Come posso procedere?
Ho provato quanto segue. I miei Docker eseguono l'accesso su stdout, quindi con un filebeat non ancorabile configurato per leggere dallo stdin, faccio:
log docker -f mycontainer | ./filebeat -e -c filebeat.yml
Sembra funzionare all'inizio. I primi registri vengono inoltrati al mio logstash. Quello in cache credo. Ma a un certo punto si blocca e continua a inviare lo stesso evento
E 'solo un bug o sono diretto nella direzione sbagliata? Quale soluzione hai installato?
Ho appena provato la stessa cosa con il vecchio logstash-forwarder: log docker -f mycontainer | ./logstash-forwarder_linux_amd64 -config forwarder.conf E funziona. Ho il sospetto di un bug di Filebeat. L'unico problema rimane che c'è solo una connessione casuale a un logstash senza bilanciamento del carico. – Gianluca
Quale versione di filebeat stai usando? Questo sembra un potenziale bug. Sentiti libero di aprire un problema [qui] (https://github.com/elastic/filebeat/issues) in modo che possiamo analizzare più a fondo il problema. Per riferimento: alcune discussioni aggiuntive sull'implementazione della finestra mobile possono essere trovate qui: https://github.com/elastic/libbeat/issues/37 – ruflin