kafka缺少所需的配置" zookeeper.connect"没有默认值

时间:2017-01-31 08:38:25

标签: apache-kafka

我在vm中设置了kafka集群。

但我有一个问题。

我的kafka版本是kafka 2.11-0.0.0

 $ bin/kafka-server-start.sh config/zookeeper.properties 
[2017-01-31 09:15:55,216] FATAL  (kafka.Kafka$)
org.apache.kafka.common.config.ConfigException: Missing required configuration "zookeeper.connect" which has no default value.
    at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:148)
    at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:49)
    at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:56)
    at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:702)
    at kafka.server.KafkaConfig$.fromProps(KafkaConfig.scala:691)
    at kafka.server.KafkaServerStartable$.fromProps(KafkaServerStartable.scala:28)
    at kafka.Kafka$.main(Kafka.scala:58)
    at kafka.Kafka.main(Kafka.scala)

请帮帮我。

我的zookeeper.properties(向下)

zookeeper.properties

dataDir=/home/kafka01/zookeeper-data
# the port at which the clients will connect
clientPort=2181
# disable the per-ip limit on the number of connections since this is a non-production config
maxClientCnxns=0
initLimit=5
syncLimit=2
server.1=kafka01:2888:3888
server.2=kafka02:2888:3888
server.3=kafka03:2888:3888

server.properties

zookeeper.connect=kafka01:2181,kafka02:2181,kafka03:2181

问题是什么?

5 个答案:

答案 0 :(得分:6)

您正在尝试启动kafka服务器,但是您传递了错误的配置文件。

通常您想使用以下命令启动kafka服务器:

./kafka-server-start.sh ../config/server.properties

在此文件中指定zookeeper的地址:

zookeeper.connect=kafka01:2181,kafka02:2181,kafka03:2181

kafka官方文档中的快速入门指南非常好,我建议你看看它。你可以找到它here

答案 1 :(得分:5)

你盯着错误的剧本。它应该是:
bin/zookeeper-server-start.sh config/zookeeper.properties

答案 2 :(得分:1)

有两种方法可以启动Kafka服务器:

  1. (分别在本地或另一台计算机上)启动Zookeeper服务器
  2. 启动嵌入到Kafka服务器(kafka_2.12 / libs / zookeeper-3.4.13.jar)中的zookeeper服务器

第一种情况: 我假设您已经启动了zookeeper服务器,并且该服务器正在localhost:2181

上运行

所以现在您可以使用以下命令启动kafka服务器

bin\windows\kafka-server-start.bat ..\..\config\server.properties

在server.properties文件中,您必须告诉Kafka服务器Zookeeper在哪里运行。使用属性:

## zookeeper.connect=localhost:2181 [default]
zookeeper.connect=zk1:2181, zk2:2181, localhost:2181

在第二种情况下

首先启动Zookeeper(嵌入在Kafka服务器中)

bin\windows\zookeeper-server-start.bat ..\..\config\zookeeper.properties

然后,启动Kafka服务器:

bin\windows\kafka-server-start.bat ..\..\config\server.properties

答案 3 :(得分:1)

您正在尝试使用 zookeeper 配置属性文件启动 kafka 服务器,这就是您收到上述错误的原因。

改用以下命令:

动物园管理员:

.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

卡夫卡:

.\bin\windows\kafka-server-start.bat .\config\server.properties

答案 4 :(得分:0)

这是错误消息,因为您的命令存在问题。

要启动Zookeeper运行-

zookeeper-server-start.sh config/zookeeper.properties

要开始服务器运行-

kafka-server-start.sh config/zookeeper.properties