1. 程式人生 > >解決Zookeeper啟動zkServer.cmd閃退問題

解決Zookeeper啟動zkServer.cmd閃退問題

主要提供一種解決啟動zKServer.cmd閃退的解決思路,遇到類似的問題,都可以採用以下的思路解決。

原因定位

編輯zkServer.cmd檔案,在末尾新增pause 。這樣執行出錯就不會退出,會提示錯誤資訊,方便找到原因。例如原因如下:
錯誤提示

圖中顯示Invalid config, exiting abnormally 無效的配置檔案,初步判斷可能是配置的問題。

排查

到zookeeper目錄中找conf\zoo.cfg ,沒有找到此檔案,但找到zoo_sample.cfg ,檔案部分內容如下圖。這個是一些zookeeper伺服器的引數配置樣板,zookeeper的配置可以參考這個檔案。
zoo_sample.cfg檔案

解決

以上分析,需要重要配置zoo.cfg 的路徑檔案。
編輯zkEnv.cmd 檔案(該檔案是環境配置,如資料夾目錄等。一般啟動出錯是在由於環境變數配置導致相關檔案查詢不到,只需要在其中配置相關變數即可),改變ZOOCFG 的值為%ZOOCFGDIR%\zoo_sample.cfg 即可。

set CLASSPATH=%ZOOCFGDIR%

REM make it work in the release
SET CLASSPATH=%~dp0..\*;%~dp0..\lib\*;%CLASSPATH%

REM make it work for developers
SET CLASSPATH=%~dp0..\build\classes;%
~dp0..\build\lib\*;%CLASSPATH% set ZOOCFG=%ZOOCFGDIR%\zoo_sample.cfg @REM setup java environment variables if not defined JAVA_HOME ( echo Error: JAVA_HOME is not set. goto :eof )