2016-06-10 54 views
1

我有一臺運行Elasticsearch,Logstash和Kibana的服務器。使用Filebeat從大約10個遠程服務器將傳入消息推送到此服務器。峯值期間的Filebeat/logstash隊列消息

來自10臺主機的流量相當「突然」,並且在高峯時間,我預計即將到來的請求會在15分鐘內達到每分鐘10萬條記錄。

我的問題是,如果logstash無法每分鐘處理100k個請求,filebeat會開始遏制還是繼續向遠程logstash服務器發送請求?

另外,如果ELK服務器關閉或不可用,消息是否丟失或Filebeat是否等到ELK服務器再次可用,然後開始發送消息?

我查看了Filebeat文檔,似乎無法找到這些問題的答案。感謝任何指針。

+0

根據我的經驗,您應該使用Kafka或Redis作爲傳輸層,以確保在Logstash關閉時您的數據不會丟失。 –

+0

感謝您的評論,我已經將我的單個logstash管道分成了兩個,Redis充當了兩者之間的隊列以吸收請求中的任何尖峯。 –

回答

0

Filebeat是一個基於連接的服務,它確保它可以在發送日誌之前與服務器通話並等待這些日誌被Logstash確認。另外,如果Logstash無法跟上,節拍輸入插件將檢測到「管道放緩」,並會告訴Filebeat暫時退出。

生病看看我能否找到這些事實的官方參考。