啟動服務提示連線zookeeper失敗
阿新 • • 發佈:2021-02-08
今天日常更新內網(LINUX伺服器)專案,準備進行測試。出現一個意料之外的錯誤,提示說專案連線zookeeper失敗。一直在嘗試進行重連。 最後問題解決了,在此分享下處理問題的過程和經驗。 前面各種重試的逗比操作就不跟你們聊了。。。。。 正文來了。 總結下網上的說法,專案連線zookeeper失敗的幾種可能, 1.zookeeper服務掛了,一般情況下不會,而且這種情況也挺容易發現的。建議出現連線失敗後第一反應是想檢視zookeeper服務。 2.連線數過多。(我就是這種情況) 先說怎麼檢視連線數。 netstat -na | grep 2181 | wc -l 執行上述命令後可以看到當前伺服器連線2181的連結數(如果zookeeper埠不是2181的請自行修改命令) netstat -na | grep 2181 這個命令是檢視具體連線的詳細情況
一般zookeeper預設的單個IP伺服器的連線數是60,這就可以確認是不是連線數過多導致的問題。 連線數過多的問題有兩種解決方案。 1.修改zookeeper的zoo.conf配置檔案中的maxClientCnxns配置。沒有的可以加上,附上這個配置的詳解 maxClientCnxns:預設為60,不支援以系統屬性方式配置。從Socket層面限制單個客戶端與單臺伺服器之間的併發連線數,即以ip地址來進行連線數的限制。如果設定為0,表示不做任何限制。僅僅是單臺客戶端與單個Zookeeper伺服器連線數的限制,不能控制所有客戶端的連線數總和。 2.用netstat -na | grep 2181命令查詢當前連線的程式,無用的全部的kill掉。如果都是要用的,就去修改zookeeper的配置來實現
給後人少走彎路的經驗,有興趣的可以留言討論下。不喜勿噴!