前言

之前用的CDH 5.6.X版本,默认是没有Kafka的,刚刚搭建了一个新的集群,用的CDH6.2.1,自带了kafka不需要我们下载parcels包

在这里插入图片描述
根据以往在CDH安装组件的经验,应该是非常easy的,没想到…

问题一

在这里插入图片描述
这里我选择了五台Broker,其他的不需要填写,在启动的时候报错:
在这里插入图片描述
在网上搜了一圈,大概说是因为集群中broker默认都为0!!!我们必须得手动改为唯一的。

于是我把这五台服务的broker id分别改为0、1、2、3、4,并且发现默认的,zookeeper连接竟然是:

zookeeper.connect=localhost:2181

我的zookeeper在其他三台节点上面安装,于是手动将这五台服务器的zookeeper都配置了:

zookeeper.connect=master01:2181,master02:2181,master03:2181

然后重新安装

问题二

又是到了启动的这一步报错:

kafka.common.InconsistentBrokerIdException: Configured broker.id 1258 doesn't match stored broker.id 1186 in meta.properties. If you moved your data, make sure your configured broker.id matches. If you intend to create a new broker, you should remove all data in your data directories (log.dirs).
	at kafka.server.KafkaServer.getBrokerIdAndOfflineDirs(KafkaServer.scala:686)
	at kafka.server.KafkaServer.startup(KafkaServer.scala:209)
	at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:42)
	at kafka.Kafka$.main(Kafka.scala:75)
	at com.cloudera.kafka.wrap.Kafka$$anonfun$1.apply(Kafka.scala:91)
	at com.cloudera.kafka.wrap.Kafka$$anonfun$1.apply(Kafka.scala:91)
	at com.cloudera.kafka.wrap.Kafka$.runMain(Kafka.scala:102)
	at com.cloudera.kafka.wrap.Kafka$.main(Kafka.scala:94)
	at com.cloudera.kafka.wrap.Kafka.main(Kafka.scala)

大概意思是broker.id改了之后,这个时候和meta.properties配置文件中就不对应了,必须得一一对应才可以。

那么这个文件在哪呢?搜了一下,都说是看config下的server.properties,中的:

log.dirs=/tmp/kafka-logs

这里指定的哪就是哪…可把我坑惨了,我/tmp目录下根本就没有这个kafka-logs文件,擦。
经过一番查找,原来是在:

/var/local/kafka/data

于是我把这五台服务器的meta.properties文件都删除了,然后重新安装,结果非常happy:

在这里插入图片描述

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐