ERROR Error when sending message to topic test_topic with key: null, value: 3 bytes……:部署Kafka时遇到两个问题

问题描述:
之前用的是ActiveMQ,Kafka比ActiveMQ好很多,于是要换成Kafka,在虚拟机的centOS里部署好了,改好配置文件后新建topic,producer,consumer 进行一个收发消息测试,结果遇到报错:ERROR Error when sending message to topic test_topic with key: null, value: 3 bytes……

分析和解决:
我在部署的时候犯了两个错误:
问题一: zookeeper配置错误。项目是做中间件的,在部署Kafka之前就已经有一个zookeeper用来做负载均衡,并且默认端口号是2181,而且服务已经启动了。但是在解压Kafka压缩包之后会发现Kafka自带一个zookeeper,这就是Kafka比ActiveMQ好的一个地方——支持集群,并且可以用zookeeper做负载均衡。但是我却在 Kafka/conf目录下的zookeeper.properties、server.properties,Kafka/Kafka-manager目录下的kafka.sh这三个文件里依然保持zookeeper端口号为默认的2181,这就有问题,两个zookeeper的端口号冲突了。其实是因为之前的一级zookeeper变成了两级,而Kafka应该连接自己的zookeeper而不是上一级的zookeeper。解决办法是将那三个文件里zookeeper的端口号改一下,随便改一个不冲突的就可以了,我改成了2185.
问题二:我手贱把Kafka/conf 下的server.properties
默认的listeners=PLAINTEXT://127.0.0.1:9092
改成了listeners=PLAINTEXT://192.168.232.128:9092

把Kafka/Kafka-manager下的kafka.sh里的默认的
export ZK_HOSTS=127.0.0.1:2185
改成了export ZK_HOSTS=192.168.232.128:2185

(192.168.232.128也就是我虚拟机的IP地址,等同于127.0.0.1)
我怀疑是虚拟机没联网,对IP识别可能有问题,所以直接换回默认的127.0.0.1就可以了。我也不是很确定到底为什么改了就不行,只是我的猜测而已。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值