有時會遇到CDH集群的7180頁面無法訪問,通過命令查看服務發現:
1 service --status-all 2 cloudera-scm-server dead but pid file exists
刪除pid文件:
1 rm -rf /var/run/cloudera-scm-server
然后啟動服務cloudera-scm-server時會遇到過一段時間自己掛掉,並返回cloudera-scm-server dead but pid file exists的問題,主要是在cloudera-scm-server-db沒有正常啟動的情況,表現為如下情況:
1 [root@gyvm-4 data]# service cloudera-scm-server start 2 Starting cloudera-scm-server: [ OK ] 3 [root@gyvm-4 data]# 4 [root@gyvm-4 data]# service cloudera-scm-server status 5 cloudera-scm-server (pid 60761) is running... 6 [root@gyvm-4 data]# service cloudera-scm-server status 7 cloudera-scm-server (pid 60761) is running... 8 [root@gyvm-4 data]# service cloudera-scm-server status 9 cloudera-scm-server (pid 60761) is running... 10 [root@gyvm-4 data]# service cloudera-scm-server status 11 cloudera-scm-server dead but pid file exists
這時候想要完整重啟cloudera-scm server-db/server,發現cloudera-scm-server-db無法重啟
1 [root@gyvm-4 data]# service cloudera-scm-server-db stop 2 waiting for server to shut down............................................................... failed 3 pg_ctl: server does not shut down
無法停止server-db的原因是殘留了一個pid文件,status顯示不正確,刪除該文件,通過status查看,server-db其實已經停止了。
1 [root@gyvm-4 data]# cd /var/lib/cloudera-scm-server-db/data 2 [root@gyvm-4 data]# service cloudera-scm-server-db status 3 pg_ctl: server is running (PID: 17378) 4 /usr/bin/postgres "-D" "/var/lib/cloudera-scm-server-db/data" 5 [root@gyvm-4 data]# rm postmaster.pid 6 rm: remove regular file `postmaster.pid'? y 7 [root@gyvm-4 data]# service cloudera-scm-server-db status 8 pg_ctl: no server running
再次開啟server-db,成功,啟動server,成功。
1 [root@gyvm-4 data]# service cloudera-scm-server-db start 2 DB initialization done. 3 waiting for server to start.... done 4 server started 5 [root@gyvm-4 data]# service cloudera-scm-server start 6 Starting cloudera-scm-server: [ OK ]
【結論】
究其原因,是cloudera-server-db沒有正常啟動,但是殘留了pid文件postmaster.pid,所以查看cloudera-server-db狀態時,顯示有誤,返回cloudera-server-db是啟動的狀態。在此基礎上,每次啟動cloudera-server就會失敗。
轉自:http://blog.csdn.net/c1990/article/details/54706330