[英]Zookeeper refuses Kafka connection from an old client
我有一個在 GCE 上使用 Kubernetes 的集群配置,我有一個用於 zookeeper 的 pod 和其他用於 Kafka 的 pod; 它一直正常工作,直到 Zookeeper 崩潰並重新啟動,它開始拒絕來自 kafka pod 的連接:
拒絕客戶端
/10.4.4.58:52260
會話請求,因為它看到了zxid 0x1962630
完整的拒絕日志在這里:
2017-08-21 20:05:32,013 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@192] - Accepted socket connection from /10.4.4.58:52260
2017-08-21 20:05:32,013 [myid:] - WARN [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:ZooKeeperServer@882] - Connection request from old client /10.4.4.58:52260; will be dropped if server is in r-o mode
2017-08-21 20:05:32,013 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:ZooKeeperServer@901] - Refusing session request for client /10.4.4.58:52260 as it has seen zxid 0x1962630 our last zxid is 0xab client must try another server
2017-08-21 20:05:32,013 [myid:] - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@1008] - Closed socket connection for client /10.4.4.58:52260 (no session established for client)
因為 kafka 維護一個動物園管理員會話,它記住它看到的最后一個 zxid。 所以當zookeeper服務下來又來的時候,zk的zxid從一個較小的值開始。 而ZKserver認為kafka看到了更大的zxid,所以拒絕了。
嘗試重新啟動 kafka。
作為記錄,我遇到了這個問題,我所有的 kafka 都關閉了。
但是,我的 kafka 經理仍在傾聽動物園管理員的聲音。 關閉它解決了問題。
與@GuangshengZuo 的回答有關.... 步驟
zookeeper-server-stop.bat
zookeeper-server-start.bat .\\config\\zookeeper.properties
這樣就可以了
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.