kafka第二課 zookeeper跟broker的關係

1)如何將kafka註冊到zookeeper上,而後能夠查詢到kafka的節點信息html

lsjava

ls會顯示該節點下的子節點信息apache

好比:socket

ls /ide


顯示zookeeper根目錄下的子節點,其中kafka的broker在zookeeper根目錄註冊了brokers節點server

kafka對外提供的meta info中的節點地址信息是直接讀取zookeeper的註冊信息,該註冊信息是在集羣啓動時寫入的,信息的最終來源爲server.properties。依據Kafka官方文檔http://kafka.apache.org/0101/documentation.html#brokerconfigs的描述,配置的優先級以下:htm

1.首先讀取advertised.listeners的值ip

2.若1中值爲空,使用advertised.host.name & advertised.port註冊到zookeeper文檔


鏈接上了broker,找到了zookeeper上對應的kafka的topic信息,接下來要往topic上發送數據的時候,zk上註冊的topic對應的信息是局域網的機器名稱和ip


[2020-05-18 16:33:58,912] WARN Session 0x0 for server ls:2181, unexpected error, closing socket connection and attempting reconnect (org.apache.zookeeper.ClientCnxn)
java.nio.channels.UnresolvedAddressException
 at sun.nio.ch.Net.checkAddress(Net.java:101)
 at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:622)
 at org.apache.zookeeper.ClientCnxnSocketNIO.registerAndConnect(ClientCnxnSocketNIO.java:277)
 at org.apache.zookeeper.ClientCnxnSocketNIO.connect(ClientCnxnSocketNIO.java:287)
 at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1021)
 at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1064)kafka

相關文章
相關標籤/搜索