kafka-console-consumer.sh不停报WARN的解决
首先确认你的服务器你所需要的所有端口都打开了!
./kafka-console-consumer.sh --bootstrap-server 宿主机IP:9092 --topic 主题名 --from-beginning
端口都打开的情况使用以上命令还继续各种报WARN请检查kafka相关配置
listeners=PLAINTEXT://*********:9092
以上*处配置IP应为宿主机IP地址一致
./kafka-console-consumer.sh --bootstrap-server *********:9092 --topic 主题名 --from-beginning
问题得到解决
我是这个原因,可以从报错信息中得知解析地址中的broker失败了修改为宿主机IP得到解决
WARN [Consumer clientId=consumer-console-consumer-21595-1, groupId=console-consumer-21595] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
使用Kafka的kafka-console-consumer.sh不能消费消息
使用Ambari搭建的kafka集群,在使用kafka-console-producer.sh的时候,指定--broker-list的值需要从server.properties中查看listeners=PLAINTEXT://的值。
同理,使用kafka-console-consumer.sh的时候,指定--bootstrap-server也需要从server.properties中查看listeners=PLAINTEXT://的值。
所以,以上已经是确保了配置没有问题的情况下,出现了kafka使用kafka-console-consumer.sh没有消费消息。
问题
使用kafka-console-consumer.sh没有消费消息
解决
(1)在无意中查看了kafka的server.log日志,发现一直在报如下错误
ERROR [KafkaApi-1001] Number of alive brokers '2' does not meet the required replication factor '3' for the offsets topic (configured via 'offsets.topic.replication.factor'). This error can be ignored if the cluster is starting up and not all brokers are up yet. (kafka.server.KafkaApis)
(2)分析了下局面意思,大概就是broker的数量为2,但是server.properties配置的offsets.topic.replication.factor的值为3。
看到这里我大概有两个解决方案
一、添加broker的数目
二、修改server.properties中offsets.topic.replication.factor的值,改成2【Ambari中该值在kafka-broker中修改】
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。