Kafka 生产者、消费者命令行操作

1.查看操作生产者命令参数

bin/kafka-console-producer.sh

参数

--bootstrap-server <String: server toconnect to> ,连接的 Kafka Broker 主机名称和端口号。

--topic <String: topic>,操作的 topic 名称。

2.发送消息

bin/kafka-console-producer.sh --bootstrap-server hadoop102:9092 --topic first

3.消费者命令行操作

bin/kafka-console-consumer.sh

参数

--bootstrap-server <String: server toconnect to> ,连接的 Kafka Broker 主机名称和端口号。

--topic <String: topic>,操作的 topic 名称。

4.消费消息,再开一个终端

bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first

好像没有收到hello,再发些消息。

查看消费者

这次收到了新发的两个信息,这是因为hello在启动消费者之前发的信息,所以收不到。可以添加一个参数,收到历史信息。

bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first --from-beginning 

这样就能收到历史消息

执行的语句bin/kafka-console-producer.sh --bootstrap-server 10.0.0.11:9092 --topic test

但是报错了原因是版本不支持

It's not until Kafka 2.5.0, console producer accepts --bootstrap-server, 
before this version, use --broker-list

在2.5.0版本之前只支持 --broker-list
在2.5.0版本之后支持 --bootstrap-server

 

kafka连接生产者(消费者其实也一样的问题)出现了下面这个报错:(

WARN [Producer clientId=console-producer] Connection to node -1 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)

找到配置文件在kafka内的config/server.properties

在配置plaintext的时候,地址配置的是master(master是我在/etc/hosts文件里面配置的127.0.0.1),而我连接的时候,使用的是:

 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

改为:

bin/kafka-console-producer.sh --broker-list master:9092 --topic test

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐