kafka进程还在,但是该broker对应的机器没有流量出入。此时要如何处理?

小小火柴 发表于: 2017-02-24   最后更新时间: 2017-02-24  
  •   27 订阅,3219 游览

因为网络原因,出现kafka-manager监控到一个broker丢失。但是kafka进程还在。这种情况下,该如何恢复该broker。







发表于: 1年前   最后更新时间: 1年前   游览量:3219
上一条: kafka集群崩溃,报错Caused by: java.io.IOException: No space left on device
下一条: kerberos+acl 发送或消费数据时报LEADER_NOT_AVAILABLE

评论…


  • 我也遇到这样的问题,导致spark streaming已经出现消息重复消费,查看是kafka已经才出现重复数据了,请问楼主解决了吗
    • 没遇到过额,如果只针对kafka的话,重复有2种情况。
      1、生产者超时,生产者并不清楚消息是否真的成功发给了kafka集群,如果你配置了重发或代码逻辑重发,将会导致重复消息。
      2、消费者重复消费,当消费者拿到消息后,处理完成后,提交offset前,报错,则此条消息将会由其他消费者再次消费。
        • 那就是最大可能是:kafka消费能力不足,未来得及保存offset,结果被其他消费者(或者还是自己)消费,导致重复,那这怎么去修正,楼主有什么建议
            • 我这几天也遇到kafka进程还在,但是coordinator已经无法链接到那个broker 了(日志显示),请问这是网络问题导致吗,该怎么解决
                • 查看了,是broker id =1 无法被链接,重启后可以.还有,现在kafka出现消费重复了.请问如何,从生产者,消费者来进行消息去重处理,在集群配置,代码级别该如何处理
                    • 现在是spark streaming处理kafkastream 的消息,是连续的,而且如果记录key的话,从头开始都要记,可行吗,有没有相应的例子.
                        • 我都不知道你的消息是发送重复,还是消费的时候重复。
                          出现重复消息的2种原因我都给你说了,重启程序的时候不要kill -9,并关闭拉取消息的动作,就不会重复的。
                          剩下你得先确认重复的源头是哪。
                            • 楼主问下,kafka 在zookeeper中 brokerid不存在了,但是kafka进程还在,这个是网络问题,还是配置问题,你是怎么解决,避免再次发生的?
                                • 楼主你好,现在遇到个情况,kafka进程还在,但是在zookeeper,kafka中重启后,仍然无法在zookeeper无法看到对应kafka 的brokerid,请楼主给指导下怎么解决
                                    • 老哥,不是同一个问题,不要在这里问呀。新开个提问窗口吧。
                                      另外,这种异常,一定会伴随着不正常的日志,可以到新问题窗口里贴出来进行分析。
                                        http://orchome.com/33
                                        • 你好,是这样的,另一台的log日志已经报错了。
                                          WARN [ReplicaFetcherThread-0-1], Error in fetch kafka.server.ReplicaFetcherThread$FetchRequest@3aa0639b (kafka.server.ReplicaFetcherThread)
                                          java.io.IOException: Connection to 1 was disconnected before the response was read。

                                          broker1的kafka进程还在,但是已经没有数据写入这台了。这种情况下,去平衡leader有用吗?
                                            • 你好,同样的问题,但是这个平衡leader没有用。目前的现象是broker=1的那台机器的kafka进程还在,但是server.log 已经不更新了。另一台broker=0的server.log显示 WARN [ReplicaFetcherThread-0-1], Error in fetch kafka.server.ReplicaFetcherThread$FetchRequest@6ad018db (kafka.server.ReplicaFetcherThread)
                                              java.io.IOException: Connection to 1 was disconnected before the response was read
                                                • 我怀疑是网络问题:
                                                  1、首先这台broker是否健康(只消费和生产该kafka的消息)
                                                  2、hostname要配好对应的ip
                                                  3、确认外部能telnet通端口和ip
                                                    • 还有个问题,flume 进行数据采集,传输到kafka,如果此时kafka故障,无法启动,那么kafka在启动后,故障时传输的数据就丢失了吧
                                                      • 评论…
                                                        • in this conversation
                                                          提问