启动 ksql-server-start /etc/ksql/ksqlserver.properties 时出现 KsqlException

KsqlException when launching ksql-server-start /etc/ksql/ksqlserver.properties

我们正在使用 Docker 设置 ksql。但它抛出

Exception in thread "main" io.confluent.ksql.util.KsqlException: Unable to check broker compatibility against a broker without any topics

这是 /etc/ksql/ksqlserver.properties 文件的内容:

bootstrap.servers=0e234781853f:9092,5e9fbcd03294:9092,c48090cb8e79:9092
ksql.command.topic.suffix=commands_2018-01-10-022223
listeners=http://0.0.0.0:8080
commit.interval.ms=1000
auto.offset.reset=earliest

"0e234781853f:9092,5e9fbcd03294:9092,c48090cb8e79:9092" 是 kafka 代理容器。我们可以从 ksql 容器向代理生成消息。

我们使用 "confluentinc/ksql-cli:0.3" dockerhub 镜像作为基础。那么,我的设置有什么问题吗?

根据日志消息,您似乎需要先在您的代理上至少创建一个主题,例如使用命令行:

kafka-topics --zookeeper <your_zookeeper> --create --topic test --partitions 1 --replication-factor 1

是的,正如 David Cheung 所说,兼容性检查需要在您的 kafka 集群中至少有一个主题。我们将在下一个版本中删除此要求。