filebeat.yaml
filebeat.prospectors: - input_type: log paths: - /var/log/messages output.kafka: hosts: ["10.23.215.95:9092","10.23.215.96:9092","10.23.215.97:9092"] topic: messages required_acks: 1
required_acks
0:這意味着生產者producer不等待來自broker同步完成的確認繼續發送下一條(批)消息。此選項提供最低的延遲但最弱的耐久性保證(當服務器發生故障時某些數據會丟失,如leader已死,但producer並不知情,發出去的信息broker就收不到)。
1:這意味着producer在leader已成功收到的數據並得到確認后發送下一條message。此選項提供了更好的耐久性為客戶等待服務器確認請求成功(被寫入死亡leader但尚未復制將失去了唯一的消息)。
-1:這意味着producer在follower副本確認接收到數據后才算一次發送完成。 此選項提供最好的耐久性,我們保證沒有信息將丟失,只要至少一個同步副本保持存活。 三種機制,性能依次遞減 (producer吞吐量降低),數據健壯性則依次遞增。