docker kafka 修改hostname導致的問題


昨天發現開發環境的3台kafka無法消費,所以今日kafka的容器執行如下語句

bash-4.4# ./kafka-topics.sh --describe --zookeeper 192.168.0.170:2181 --topic nova2_plantree_topic
Topic:nova2_plantree_topic PartitionCount:3 ReplicationFactor:3 Configs:
Topic: nova2_plantree_topic Partition: 0 Leader: 2 Replicas: 2,1,0 Isr: 2,1,0
Topic: nova2_plantree_topic Partition: 1 Leader: 0 Replicas: 0,2,1 Isr: 0,2,1
Topic: nova2_plantree_topic Partition: 2 Leader: 1 Replicas: 1,0,2 Isr: 1,0,2

 

發現topic是好的

 

然后執行

bash-4.4# ./kafka-consumer-groups.sh --bootstrap-server 192.168.0.170:9092 --list

 

發現消費者group是空的,或者直接報錯

然后查看java的消費者日志,報錯很多   

2019-03-13 09:42:39.641 org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1 WARN org.apache.kafka.clients.NetworkClient$DefaultMetadataUpdater.handleCompletedMetadataResponse(NetworkClient.java:846) - Error while fetching metadata with correlation id 879 : {nova2_plantree_topic=LEADER_NOT_AVAILABLE}

 

后面網上查了一下,說可能是hostname被修改了而沒有修改kafka的配置的原因,和同事溝通了一下發現確實這幾天修改了hostname

所以我在docker 里對kafka的/opt/kafka_2.12-2.1.0/config/server.properties 加了如下的配置

advertised.host.name=win-jrh378d7scu.auth.hpicorp.net

然后重啟所有的三台docker上的zookeeper和kafka

然后再看java消費者的日志,沒有報錯LEADER_NOT_AVAILABLE了,但是239的kafka好像還是有問題,后面看了239的kafka的docker日志,發現連不上183和3的zookeeper

檢查了一下3台的zookeeper都是正常的監聽了2181端口,所以肯定是docker機器開機的時候沒有關閉防火牆,后來把防火牆關閉了沒有重啟docker導致有的zookeeper的端口訪問不了

 

所以我把三台的docker都systemctl stop后再start

再把三台zookeeper和kafka都啟動就好了

 

在kafka中執行也可以查詢到消費group了

bash-4.4# ./kafka-consumer-groups.sh --bootstrap-server 15.31.213.183:9094 --list
plantree_group

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM