配置HBase时,首先考虑的肯定是Hbase版本与你所装的hadoop版本是否匹配,这一点我在之前
的博客中已经说明清楚,hadoop版本与hbase版本的匹配度,那是官方提供的。下面的实验就是本人没参照版本匹配尝试投机的方法,出现了错误。
版本说明:
hadoop1.1.2
hbase-0.94.7(lib下的是hadoop-core-1.0.4.jar)
jdk 1.6.0.24
一、查看hadoop版本和hbase的版本是否匹配(这里出现错误,这步可省略)
如果不匹配,可将hadoop下的hadoop-core-*的jar包复制替换hbase/lib下的hadoop-core-*的jar包。
我的hadoop版本是hadoop-1.1.2的
Hbase下lib的版本是
所以覆盖jar包:
二、修改hbase-env.xml的配置
a) 指定jdk路劲和hadoop下conf的路径
b) 打开hbase对zookeeper的管理
三、修改hbase-site.xml文件
a) 将hbase/src/main/resource/ 下的hbase-default.xml复制到hbase/conf目录下。
b) 修改hbase的根目录
注:根目录路劲是建在hdfs上的
c) 将分布式的配置设成true,这样hbase就明白我们是做分布式。
d) 修改hbase的临时目录
e)配置zookeeper运行的的机器,通常设置是基数个
f)配置zookeeper存放数据的目录
四、修改conf/regionservers.xml
去掉localhost,添加 Slave1 Slave2
五、将配置好的hbase分发到slave1和slave2的上
a) Scp -r hbase yao@slave1:/home/yao/
b) Scp -r hbase yao@slave2:/home/yao/
六、配置vi /etc/profile下的文件(每台机器都需这样配置):
a) export HBASE_HOME=/home/yao/hbase
export PATH=$PATH:$HBASE_HOME/bin
七、启动hbase
a) Start-hbase.sh
出错了:报的是版本不兼容。
Hbase启不启来,多方考证原来是我想多了:
两个问题:1)一开始不需要将hbase中的jar包替换掉,因为他们兼容。
2)这个错误是我懒得因素,将hbase/src/main/resource/ 下的hbase-default.xml复制到hbase/conf目录下时,只配置了我需要的,其它的没有删除,我去,它就报了hbase-default啥啥啥的错误。
b) 上述两个错误都更改后,就可以启动了。
Slave1上:
Slave2 :
关闭hbase:
这里关闭时,省略号一直不断的话,很可能就是配置错误了。
你可以到hbase的根目录下的log文件查看日志信息,发现错误。
原文链接:http://blog.csdn.net/u014078192/article/details/27559513