1。以前的日誌傳輸的方案: Nginx => Logstash =>ES AND Kakfa 。 存在的問題,若是Es掛掉,整個的 Logstash 傳輸的pipline 管道就會阻塞,Kafka 端也收不到消息,耦合性很強。一個 Logstash 進程 屬於一個 pipline 管道。日誌
2.爲了解決上述問題,採用 Nginx => Logstash =>Kafka =》logstash =>ES AND =》Kafka Consumer。 消息同一由Logstash 傳輸到 Kafka 。 kafka 到 Logstash =>Es; kafka 到 Consumer 到 Hdfs 這種方式。blog
其中涉及到的問題:Logstash 配置文件中 input 配置 多個kafka 問題,每一個kafka 必需要有 client_id,而且每一個kafka的client_id 不能夠相同。進程
根據 type 字段 區分到 es的不一樣index。ip
配置多個kafka 每一個kafka group.id 不相同 達到區分 的問題。kafka