越努力,越幸运

朱季谦

腾讯云社区2022年度最佳作者、阿里云专家博主认证

kafka3.0创建topic出现zookeeper is not a recognized option

在linux云服务器上搭建了一套kafka3.0集群,然后安装以前的创建topic指令,例如这样——

./kafka-topics.sh --bootstrap-server master:2181,slave1:2181,slave2:2181 --replication-factor 1 --partitions 1 --topic test

然而,却出现了这样一个异常提示:

Exception in thread "main" joptsimple.UnrecognizedOptionException: zookeeper is not a recognized option
	at joptsimple.OptionException.unrecognizedOption(OptionException.java:108)
	at joptsimple.OptionParser.handleLongOptionToken(OptionParser.java:510)
	at joptsimple.OptionParserState$2.handleArgument(OptionParserState.java:56)
	at joptsimple.OptionParser.parse(OptionParser.java:396)
	at kafka.admin.TopicCommand$TopicCommandOptions.<init>(TopicCommand.scala:517)
	at kafka.admin.TopicCommand$.main(TopicCommand.scala:47)
	at kafka.admin.TopicCommand.main(TopicCommand.scala)

愣了一下,百度一番,才明白,原来新版本的kafka,已经不需要依赖zookeeper来创建topic,新版的kafka创建topic指令为下:

./kafka-topics.sh --create --bootstrap-server master:9097 --replication-factor 1 --partitions 1 --topic test1

注意,这里的master是我主机ip映射的主机名,改成该kafka服务器对应的IP即可。

测试一下,在master服务器上创建一个topic为test,然后生产几条信息——

[root@master bin]# ./kafka-console-producer.sh --broker-list master:9097 --topic test
>hello
>world

在另一台机器上,开启消费者控制台,监听test的topic,发现可以收到数据——

[root@slave1 bin]# ./kafka-console-consumer.sh --bootstrap-server slave1:9097  --topic test --from-beginning
hello
word
posted @ 2021-10-19 22:50  朱季谦  阅读(5444)  评论(0编辑  收藏  举报