啟動zookeeper報錯already running as process


今天啟動zookeeper的時候報錯:

[root@hadoop-one zookeeper-3.4.5]# bin/zkServer.sh start
JMX enabled by default
Using config: /root/zookeeper/zookeeper-3.4.5/bin/../conf/zoo.cfg
Starting zookeeper ... already running as process 947..

看了下947這個進程,發現是linux系統進程,應該不會沖突。又檢查了下zookeeper會使用到的幾個端口號,也都沒有被占用。

后來打開bin/zkServer.sh啟動腳本,搜了下會拋出上面那段話的地方:

    echo  -n "Starting zookeeper ... "
    if [ -f $ZOOPIDFILE ]; then
      if kill -0 `cat $ZOOPIDFILE` > /dev/null 2>&1; then
         echo $command already running as process `cat $ZOOPIDFILE`.
         exit 0
      fi
    fi

看到$ZOOPIDFILE,想到應該是進程ID文件已經存在,導致啟不起來。

去dataDir下看,果然有一個zookeeper_server.pid,最后一次修改時間是幾天前了。由於機器上次是因為斷電異常關閉,大概導致了這個pid file的殘留。

刪掉,重啟,OK。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM