Kafka:Configured broker.id 2 doesn't match stored broker.id 0 in meta.properties.

      在安装Kafka集群的时候,碰到这个问题。

      我们知道在搭建Kafka集群的时候,我们需要设置broker.id,以作为当前服务器在整个集群的唯一标志。

网上搜查资料是说,log.dirs目录下的meta.properties中配置的broker.id和配置目录下的server.properties中的broker.id不一致了,解决问题的方法是将两者修改一致后再重启。

      而当时为何会产生这个问题?

1、Kafka配置目录下文件server.properties中一个broker.id

# The id of the broker. This must be set to a unique integer for each broker.
broker.id=2
# A comma seperated list of directories under which to store log files
log.dirs=/tmp/kafka-logs

      另外还有一个属性log.dirs,这是kafka产生log目录,log目录 下有meta.properties文件,而meta.properties文件中也写有broker.id,这是在运行时产生的。

#Wed Nov 08 15:59:53 PST 2017
version=0
broker.id=2

2、实际操作的因素

      我是先搭建了单台的kafka,在上面试验了一把(注意:这个时候已经在kafka的日志记录下产生了相应的日志文件和meta.properties文件)。

      然后开始搭建kafka集群,以前面的一台虚拟机为副本,直接克隆了另外2台kafka主机。

      这样在新的2台机器上,虽然改了另外两台的server.properties的broker.id,第1台产生的日志记录在另外两台仍然存在,用meta.properties文件中的broker.id也需要修改成与server.properties中的broker.id一样,所以造成了这个问题。

参考文档

      http://blog.csdn.net/shandadadada/article/details/50615866

原文地址:https://www.cnblogs.com/gudi/p/7847100.html