我的 kafka 服务器有问题。
我已经用端口2080运行apache druid,用端口2181运行zookeeper kafka,以避免在druid和kakfa之间压垮zookeeper。
我对 druid 没有任何问题,因为它运行正常,kafka Zookeeper 也运行得很好。
但是当我尝试按照以下语法运行 kafka 服务器时:
./bin/kafka-server-star.sh config/server.properties
及其配置:
zookeeper.connect=localhost:9092
我有一个问题,错误说它不会尝试使用 SSAL 进行身份验证(未知错误),就像我在下面放置的图片一样:
我以前很好,但我不知道它会不好。大家可以帮我解决这个问题吗?
我假设您指的是
zookeeper.connect
Kafka 配置文件中的 server.properties
属性。
zookeeper.connect
应指向zookeeper 连接字符串或仲裁。从你的例子来看,我猜 zookeeper.connect
属性指向 Kafka 服务器端口 9092 本身。由于给定地址上没有运行 Zookeeper 服务器localhost:9092
,zookeeper-client 无法连接到 Zookeeper 服务器并抛出以下错误
Opening socket connection to server localhost/0:0:0:0:0:0:0:1:9092. Will not attempt to authenticate using SASL (unknown error)
Zookeeper 服务器端口,使用名称
clientPort
配置,可以在 zookeeper.properties
配置文件中找到。
请尝试以下设置
zookeeper.connect=localhost:<clientPort, 2181 by default>
Zookeeper 连接字符串是逗号分隔的主机:端口对,每个对应一个 Zookeeper 服务器。
示例:
zookeeper.connect=localhost:2181
zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183
zookeeper.connect=127.0.0.1:2181
您还可以在 url 中附加可选的 chroot 字符串,以指定所有 Kafka znode 的根目录。
尝试降低你的jdk版本。我用
jdk-11
解决了这个问题。