{{{ #!html
重建 hbase
砍掉重練法
}}} [[PageOutline]] = 前言 = 之前有討論到 單機安裝 hbase ,以及叢集安裝,但若架設好叢集之後,發現架構想要換成單機,似乎不是少一台電腦而已,因為把另外一台電腦的regionserver停止,但整個hbase叢集就是會不斷地報錯。 本篇討論如何不破壞正常的 hdfs 為前提,將原有的hbase砍掉重練,而非 無痛增加減少節點。 = 安裝 = 安裝參考之前的hbase 0.20 安裝相關的文章,接下來討論的是設定。 = 設定 = == 1. 停止 hbase == {{{ $ bin/stop-hbase.sh }}} 確認hbase 停止再進行之後的步驟 {{{ $ jps }}} 執行jps ,如果只出現 hadoop的程序而沒有hbase 的程序就ok == 2. 修改設定檔 == conf/hbase-site.xml {{{ #!text ... hbase.zookeeper.quorum your_host_name, ... .... }}} conf/regionservers {{{ #!text your_host_name ... ... }}} == 3. 刪除餘孽 == 刪除在 hbase-site.xml 所指定的 hbase.tmp.dir ,相關的 log, pid 資料 (本文放在 /var/hadoop/hbase-xxx) {{{ $ rm -rf /var/hbase/hbase-* }}} 刪除 hbase 在 hdfs 上的資料 {{{ $ hadoop dfs -rmr /hbase }}} == 4. 重新啟動 == {{{ $ bin/start-hbase.sh }}} == 5. Good Luck == ps : 順帶一題, hbase shell 模式內,執行任何指令出現的訊息很多,長得很像error message ,因此有點嚇人, 其實有些根本只是info ,想要讓他安靜一點,可以到 conf/log4j.properties 將 LEVEL 層級改小一點 {{{ #!text DEBUG < INFO < WARN < ERROR < FATAL }}} 因此要安靜一點就把他改成 {{{ #!text # Custom Logging levels log4j.logger.org.apache.zookeeper=ERROR log4j.logger.org.apache.hadoop.hbase=ERROR }}}