在命令行中的kafka中创建多个使用者

llycmphe  于 2021-06-09  发布在  Kafka
关注(0)|答案(5)|浏览(409)

我是Kafka的新人。当我在命令行中运行快速入门示例时,我发现我无法在命令行中创建多个使用者。
条件:
我用3个分区构建了一个名为test的主题,并在此主题上构建了一个producer。
然后我想创建两个不同的消费者,在这个主题上共享一个名为test1的消费者组。
我按如下方式运行了两次命令:

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --group test1

第一个有效,但当我运行第二次时,第一个会断开,第二个有效。
那么,如何在命令行中的同一个使用者组中创建两个或多个使用者呢?

WARN Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect (org.apache.zookeeper.ClientCnxn)
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)
    at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1146)
fnatzsnv

fnatzsnv1#

除了使用 --consumer.config 像secfree的答案一样,你也可以使用 --consumer-property group.id=your_group 选项指定组名而不编辑配置文件。

enyaitl3

enyaitl32#

使用此选项:

--partition <Integer: partition>        The partition to consume from.
kiz8lqtg

kiz8lqtg3#

违约, kafka-console-consumer.sh 将创建一个随机组。
如果要指定组名,可以:
添加 group.id=group_name 到本地文件 filename 使用 --consumer.config filename 选择 kafka-console-consumer.sh 设置组
你可以在Zookeeper那里查看你的小组 /consumers/ 目录。
请参阅:kafka/core/src/main/scala/kafka/tools/consoleconsumer.scala

t0ybt7op

t0ybt7op4#

当您使用没有groupid的topic时,kafka会为会话创建随机groupid。您可以指定groupid--consumer property group.id=test consumer group if groupid exist,也可以在使用会话时添加新的groupid(name),如果group不存在--topic second topic--group my first group p和kafka将创建新组

798qvoo8

798qvoo85#

您可以使用以下命令在“test consumer group”到“test”主题的组中创建使用者:

bin/kafka-console-consumer.sh --bootstrap-server <brokerIP>:9092 --topic test --consumer-property group.id=test-consumer-group

下面的命令将列出用户组配置:

bin/kafka-consumer-groups.sh --bootstrap-server <brokerIP>:9092 --describe --group test-consumer-group

如:

GROUP || TOPIC || PARTITION || CURRENT-OFFSET || LOG-END-OFFSET || LAG      || OWNER
test-consumer-group || test || 0 || 10 || 10 || 0 || consumer-1_/10.210.223.170

相关问题