Hadoop version support matrix
HBase-0.92.x | HBase-0.94.x | HBase-0.96 | |
---|---|---|---|
Hadoop-0.20.205 | S | X | X |
Hadoop-0.22.x | S | X | X |
Hadoop-1.0.x | S | S | S |
Hadoop-1.1.x | NT | S | S |
Hadoop-0.23.x | X | S | NT |
Hadoop-2.x | X | S | S |
S = supported and tested,支持 |
X = not supported,不支持 |
NT = not tested enough.可以运行但测试不充分 |
声明:
HBase 0.94 和 hadoop 2.2 无法兼容,我踩了好多雷,也没有搞定
比如重新编译,或者把hadoop下面的jar文件全部拷贝到$hbase_install/lib下面替换hadoop-core-1.0.4.jar。
或者说是0.94 lib里面的protobuf是 protobuf-java-2.4.0.jar,需要替换为protobuf-java-2.5.0.jar。
这写说的都对,但是替换完成后就变成了另外一个错误。奉劝大家不要在HBase 0.94 和 hadoop 2.2 上纠结了。
大家果断上 0.96 吧
前提条件
安装配置完成了 hadoop 2.2.0
步骤:
1.解压 Hbase 0.96 到 /opt/
2. 修改 hbase-env.sh,添加如下内容
export JAVA_HOME=/home/software/jdk1.7.0_55 # jdk 路径
export HBASE_HOME=/opt/hbase #hbase 安装目录
export HADOOP_HOME=/opt/hadoop # hadoop 安装目录
export PATH=$PATH:/opt/hbase/bin
export HBASE_MANAGES_ZK=true # 单机管理,不用单独zookeeper
3. 修改hbase-site.xml ,添加如下内容
<property>
<name>hbase.rootdir</name>
<value>hdfs://robinson-ubuntu:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
4. 进入 $HBASE_HOME/bin, 启动hbase
./start_hbase.sh
5. 用jps察看进程,有如下进程说明是正确的
hadoop@robinson-ubuntu:/opt/hbase$ jps
10226 DataNode
9996 NameNode
17693 HQuorumPeer
18693 Jps
17796 HMaster
14881 org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
16453 HRegionServer
10516 SecondaryNameNode
18278 Main
10694 ResourceManager
10930 NodeManager