用impala做實驗遇到了cloudera-scm-server dead but pid file exists問題。
問題發生的經過是這樣的:
首先我在單機配置的為2核4GB記憶體的5台虛擬機器上安裝了cloudera manager,然後用它安裝了cdh和impala
然後一切都是正常的,我就往叢集的hdfs裡面匯入了100GB的資料
然後一切仍然是正常的,可是突然有一天,cloudera manager的web介面無法訪問了(7180連接埠的那個),hadoop還可以用,impala掛掉了
之前用大記憶體的虛擬機器裝上百節點的impala都是沒問題的呀,估計是記憶體不足導致的(想起來之前裝過一次單機2GB記憶體的叢集,裝完不久cloudera manager就也打不開了,當時由於用不到這個叢集也就每台多想),查看了一下主節點上(也就是運行cloudera manager、即cloudera-scm-server的那個節點),果然啥也沒幹記憶體就只剩下400MB了。
看來安裝impala,單機記憶體配置至少應該是8GB。
不過還是嘗試解決了這個問題:
首先交代下實驗環境:
硬體設定上面已經說了,作業系統是CentOS6.4 64位,軟體cdh4.5.0.30+impala1.2.1.850
操作步驟如下:
查看服務:
# service --status-all
看到cloudera-scm-server dead but pid file exists
刪除pid檔案:
# rm -rf /var/run/cloudera-scm-server
重啟cloudera-scm-server-db:
# service cloudera-scm-server-db start
啟動cloudera-scm-server:
# service cloudera-scm-server start
OK,可能要等一會cloudera manager的7180 web介面才能開啟。
進入介面之後可以把狀態未知或者失敗的服務重啟一下,等一段時間各個服務應該會處於健康的狀態。