zookeeper啓動報錯:already running as process

通過腳本啓動zookeeper集羣,發現主節點zookeeper進程並未起來,其餘節點zookeeper進程都起來了

查看zookeeper·的啓動腳本可以發現Zookeeper的進程名叫QuorumPeerMain

 

於是手動啓動了一下主節點的zookeeper,發現報錯:

JMX enabled by default
Using config: /export/servers/zookeeper-3.4.5-cdh5.14.0/bin/../conf/zoo.cfg
Starting zookeeper ... already running as process 3041.

查看zookeeper·的啓動腳本可以發現:

判斷$ZOOPIDFILE這個文件是否存在
kill -0 表示不發送任何信號給PID對應的進程,但是仍會對變量值PID對應的
/dev/null 2>&1; 表示不輸出錯誤信息
進程是否存在進行檢查,如果$pid對應的進程存在,則返回0,不存在返回1

分析啓動腳本我們可以知道錯誤的原因是:

    機器異常關閉緩存目錄中殘留PID文件。 那肯定是之前服務器異常斷電過。

查看zookeeper的日誌目錄可以發現:

我們把這個文件輸出就行!!!!   

rm -rf zookeeper_server.pid 

讓後再起啓動,會發現我們的zookeeper起來了,一切正常!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章