公司要将数据分享给第三方使用,所以要运维再内网搭建一单节点的kafka做消息中间件,kafka搭建好后,生产者生产数据正常,
将kafka的9092端口映射到外网的9092端口,但是无法消费数据,会卡住,解决方法是
1先检查主机名,主机名要与hosts文件里的一至
2再检查advertised.listeners=PLAINTEXT://shzl-mq-2:9092,这里的要填主机名,如果是仅在内网消费这里也可以写本机的IP
3然后消费者上也得写成与他一至的主机名加端口
consumer= KafkaConsumer('VideoMessage',group_id='kafka_test',bootstrap_servers=['shzl-mq-2:9092'])
注意:kafka的搭建中一下zookeeper和kafka配置文件中的主机名要保持一至,生产者和消费者代码中的主机名也要与此一致
server.1 = shzl-mq-2:2888:3888 zookeeper配置文件中的一项
kafka配置文件中的两项
advertised.listeners=PLAINTEXT://shzl-mq-2:9092
zookeeper.connect=shzl-mq-2:2181/kafka