淘先锋技术网

首页 1 2 3 4 5 6 7

本文主要介绍HBASE1.2.0 的安装,安装过程发现有个别的地方于0.98 版本不太一样,请各位注意。

本文可以参考HBase0.98 的安装

JDK版本和HBASE对应关系

HBase Version

JDK 6

JDK 7

JDK 8

2

Not Supported

Not Supported

yes

1.3

Not Supported

yes

yes

1.2

Not Supported

yes

yes

1.1

Not Supported

yes

Running with JDK 8 will work but is not well tested.

1

Not Supported

yes

Running with JDK 8 will work but is not well tested.

0.98

yes

yes

Running with JDK 8 works but is not well tested. Building with JDK 8 would require removal of the deprecated remove() method of thePoolMap class and is under consideration. See HBASE-7608 for more information about JDK 8 support.

0.94

yes

yes

N/A

Hadoop和HBASE对应关系

HBase-0.94.x

HBase-0.98.x

 (Support for Hadoop 1.1+ is eprecated.)

HBase-1.0.x (Hadoop 1.x is NOT supported)

HBase-1.1.x

HBase-1.2.x

HBase-1.3.x

Hadoop-1.0.x

X

X

X

X

X

X

Hadoop-1.1.x

S

NT

X

X

X

X

Hadoop-0.23.x

S

X

X

X

X

X

Hadoop-2.0.x-alpha

NT

X

X

X

X

X

Hadoop-2.1.0-beta

NT

X

X

X

X

X

Hadoop-2.2.0

NT

S

NT

NT

X

X

Hadoop-2.3.x

NT

S

NT

NT

X

X

Hadoop-2.4.x

NT

S

S

S

S

S

Hadoop-2.5.x

NT

S

S

S

S

S

Hadoop-2.6.0

X

X

X

X

X

X

Hadoop-2.6.1+

NT

NT

NT

NT

S

S

Hadoop-2.7.0

X

X

X

X

X

X

Hadoop-2.7.1+

NT

NT

NT

NT

S

S

Hadoop version support matrix
"S" = supported
"X" = not supported
"NT" = Not tested

我们这里选用的软件版本如下

Hadoop2.7.1

Hbase 1.2.0

jdk 1.7 

1.上传HBase安装包

官网下载地址:  http://archive.apache.org/dist/hbase/

2.解压

hbase-1.2.0-bin.tar.gz

配置环境变量

vi .basrrc

HBASE_HOME=/home/hadoop/siz/local/hbase-1.2.0

并添加到path变量中

3.配置hbase集群,要修改3个文件(首先zk集群已经安装好了)

注意:由于hbase最终数据存放到hdfs,故需要要把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下

3.1在master 上修改hbase-env.sh

export JAVA_HOME=/home/hadoop/siz/local/jdk1.7.0_79

//告诉hbase使用外部的zk

export HBASE_MANAGES_ZK=false

# The maximum amount of heap to use. Default is left to JVM default.

export HBASE_HEAPSIZE=8G

3.2vim hbase-site.xml

<configuration>
<property>
        <name>hbase.rootdir</name>
        <value>hdfs://10.8.1.8:9000/hbase</value>
</property>
<property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
</property>
<property>
        <name>hbase.zookeeper.quorum</name>
        <value>10.8.1.120:2181,10.8.1.130:2181,10.8.1.140:2181</value>
</property>
<property>
    <name>hbase.master.port</name>
    <value>16000</value>
</property>
<property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
</property>
</configuration>

说明:这里我们可以设置hbase.master.info.port和hbase.master.port   这里和0.98 版本不同,需要特别注意

3.3 指定机器为regionserver,不单独指定master。其中:在哪个机器上启动,哪台就是master,在regionservers文件说明要启动的HRegionServer

vim regionservers

10.8.1.8
10.8.1.9
10.8.1.10

3.4 在$HBASE_HOME/lib 下替换Hadoop版本和Zookeeper对应的版本

(1)rm -rf $HBASE_HOME/lib/hadoop*.jar

find /home/hadoop/siz/local/hadoop-2.7.1/share/ -name "hadoop*jar"| xargs -i cp {} $HBASE_HOME/lib

这里可以删除hadoop中test/sources 相关的包(可以选择)

(2)替换zookeeper的包,我们这里采用3.4.6

(3) hbase1.2.0 依赖 amazonaws包下的两个文件,故需要把下面两个文件上传至$HBASE_HOME/lib 目录下,否则会出现下面的错误

依赖的两个文件:

aws-java-sdk-core-1.10.77.jar

aws-java-sdk-s3-1.11.34.jar

不添加问题出现ClassNotFoundException:

Caused by: java.lang.ClassNotFoundException: com.amazonaws.auth.AWSCredentialsProvider

Caused by: java.lang.ClassNotFoundException: com.amazonaws.services.s3.AmazonS3

说明: 这里和0.98 版本不同,需要特别注意

3.4拷贝hbase到其他节点

4.将配置好的HBase拷贝到每一个节点并同步时间。

5.启动所有的hbase

     分别启动zk

          ./zkServer.sh start

     启动hdfs集群

          start-dfs.sh

     启动hbase,在主节点上运行:

          start-hbase.sh

6.通过浏览器访问hbase1.2.0版本管理页面

        10.8.1.8:16010 (于0.98 版本不同)

7.为保证集群的可靠性,要启动多个HMaster(可选)

        hbase-daemon.sh start master