| | 1 | 重建hbase |
| | 2 | 內容 |
| | 3 | 1 前言 |
| | 4 | 2 安裝 |
| | 5 | 3 設定 |
| | 6 | 前言 |
| | 7 | |
| | 8 | 之前有討論到 單機安裝 hbase ,以及叢集安裝,但若架設好叢集之後,發現架構想要換成單機,似乎不是少一台電腦而已,因為把另外一台電腦的regionserver停止,但整個hbase叢集就是會不斷地報錯。 |
| | 9 | |
| | 10 | 本篇討論如何不破壞正常的 hdfs 為前提,將原有的hbase砍掉重練,而非 無痛增加減少節點。 |
| | 11 | 安裝 |
| | 12 | |
| | 13 | 安裝參考之前的hbase 0.20 安裝相關的文章,接下來討論的是設定。 |
| | 14 | 設定 |
| | 15 | |
| | 16 | 1. 停止 hbase |
| | 17 | |
| | 18 | $ bin/stop-hbase.sh |
| | 19 | |
| | 20 | 確認hbase 停止再進行之後的步驟 |
| | 21 | |
| | 22 | $ jps |
| | 23 | * 執行jps ,如果只出現 hadoop的程序而沒有hbase 的程序就ok |
| | 24 | |
| | 25 | 2. 修改設定檔 |
| | 26 | |
| | 27 | |
| | 28 | hbase-site.xml |
| | 29 | ... |
| | 30 | <property> |
| | 31 | <name>hbase.zookeeper.quorum</name> |
| | 32 | <value> your_host_name, ... </value> |
| | 33 | </property> |
| | 34 | |
| | 35 | .... |
| | 36 | |
| | 37 | regionservers |
| | 38 | your_host_name |
| | 39 | ... |
| | 40 | ... |
| | 41 | |
| | 42 | |
| | 43 | 3. 刪除餘孽 |
| | 44 | |
| | 45 | 刪除在 hbase-site.xml 所指定的 hbase.tmp.dir ,相關的 log, pid 資料 (本文放在 /var/hadoop/hbase-xxx) |
| | 46 | |
| | 47 | $ rm -rf /var/hbase/hbase-* |
| | 48 | |
| | 49 | 刪除 hbase 在 hdfs 上的資料 |
| | 50 | |
| | 51 | $ hadoop dfs -rmr /hbase |
| | 52 | |
| | 53 | 4. 重新啟動 |
| | 54 | |
| | 55 | $ bin/start-hbase.sh |
| | 56 | |
| | 57 | 5. Good Luck |
| | 58 | |
| | 59 | |
| | 60 | ps : 順帶一題, hbase shell 模式內,執行任何指令出現的訊息很多,長得很像error message ,因此有點嚇人, |
| | 61 | 其實有些根本只是info ,想要讓他安靜一點,可以到 conf/log4j.properties 將 LEVEL 層級改小一點 |
| | 62 | DEBUG < INFO < WARN < ERROR < FATAL |
| | 63 | |
| | 64 | 因此要安靜一點就把他改成 |
| | 65 | |
| | 66 | # Custom Logging levels |
| | 67 | log4j.logger.org.apache.zookeeper=ERROR |
| | 68 | log4j.logger.org.apache.hadoop.hbase=ERROR |