리눅스에서 일반 계정으로 hbase 를 실행시키고 있었고 bin/stop-hbase.sh 실행시 종료가 안되는 경우가 발생했다. 계속 period만 찍히는 현상이 발생. "..............."
bin/stop-hbase.sh을 확인해보니, 스크립에서는 pid 정보를 보고 kill을 하는데, pid값이 잘못되어 있었다.
pid=${HBASE_PID_DIR:-/tmp}/hbase-$HBASE_IDENT_STRING-master.pid
while kill -0 `cat $pid` > /dev/null 2>&1; do
echo -n "."
sleep 1;
done
확인해보니. HBASE_PID_DIR를 지정을 안했었다. 디폴트로 /tmp로 되어 있는데, 일반계정으로 실행시키다 보니 write 를 할 수 없었던 것 같다.
hbase-env.sh에서 HBASE_PID_DIR을 실행계정에서 접근할 수 있도록 했다.
$ vi hbase-env.sh
export HBASE_PID_DIR=/home/hadoop/pids
그리고, hadoop/pids 디렉토리를 생성했다.
$mkdir -p /home/hadoop/pids
bin/start-hbase.sh 후 jps 결과로 나온 pid 확인
$ cat hbase-1001237-master.pid
13035
$ cat hbase-1001237-regionserver.pid
13193
정상적으로 stop되었음을 확인했다.
$ bin/stop-hbase.sh
stopping hbase...........
$
'nosql' 카테고리의 다른 글
[hbase] Hbase 설치하기 (Fully Distributed mode) (1) | 2013.04.23 |
---|---|
org.apache.hadoop.hbase.MasterNotRunningException 해결하기 (0) | 2013.04.23 |
[hbase] Phoenix ? (0) | 2013.04.22 |
[hbase] coprocessor 사용시 모든 테이블 동기화 (0) | 2013.04.22 |
[hadoop] java.io.IOException: File jobtracker.info could only be replicated to 0 nodes, instead of 1 (0) | 2013.04.19 |