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