安装配置hbase

1.下载hbase的压缩包,解压出来。

2.检查hbase包和hadoop包版本是否一致,替换成hadoop核心jar包。将hadoop集群的hadoop-1.2.1-core.jar替换hbase的lib目录下的hadoop核心包,主要目的是防止因为hbase和hadoop版本不同出现兼容问题,造成hmaster启动异常

3.配置conf/hbase-env.sh。hbase本身的环境变量,继承父shell。

3.1.JAVA_HOME=。推荐到用户的环境变量里配置此属性。

3.2.HBASE_MANAGES_ZK=true。推荐使用如下配置。

export HBASE_MANAGES_ZK=false

是否使用hbase自带的zookeeper,默认使用自带的zookeeper。如果使用非自带的zookeeper,在配置hbase-site.xml时,请配置hbase.zookeeper.quorum属性。

3.3.HBASE_LOG_DIR=${HBASE_HOME}/logs。推荐使用默认配置。

hbase logs的记录路径,默认log就会记录到${HBASE_HOME}/logs。

3.4.HBASE_CLASSPATH=。推荐使用默认配置。

此属性配置hbase的额外classpath。

注意:在hadoop1.x中配置过hadoop的配置文件目录/apps/hadoop/conf,在hadoop2.x中不配也可以,我也暂时没搞懂,暂时使用默认配置。

4.配置conf/hbase-site.xml,hbase的配置文件,使用:find . -name hbase-default.xml

./hbase-common/src/main/resources/hbase-default.xml),对照hbase的默认配置文件配置。属性中文解释参考:HBase 官方文档中文版

4.1.hbase.tmp.dir=${java.io.tmpdir}/hbase-${user.name}。此目录为本地目录。推荐使用如下配置。

<property>
 <name>hbase.tmp.dir</name>
 <value>/home/hadoop/apps/hbasedata</value>
</property>

可以修改到一个更为持久的目录上。后面很多配置都要用到此属性,不知道配置到hdfs上是否可行?

4.2.hbase.rootdir=${hbase.tmp.dir}/hbase。此目录为hdfs目录。推荐使用如下配置。

<property>
 <name>hbase.rootdir</name>
 <value>hdfs://master:9000/hbase</value>
</property>

这个目录是region server的共享目录,用来持久化HBase。URL需要是'完全正确'的,还要包含文件系统的scheme。默认情况下使用${hbase.tmp.dir}/hbase,如果hbase.tmp.dir配置为hdfs目录,则此属性可以使用默认值。

4.3.hbase.cluster.distributed=false。推荐使用如下配置。

<property>
 <name>hbase.cluster.distributed</name>
 <value>true</value>
</property>

HBase的运行模式。false是单机模式,true是分布式模式。若为false,HBase和Zookeeper会运行在同一个JVM里面。

4.4.hbase.zookeeper.quorum=localhost。推荐使用如下配置。

<property>
 <name>hbase.zookeeper.quorum</name>
 <value>master,slave1,slave2</value>
</property>

Zookeeper集群的地址列表,用逗号分割。例如:"host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".默认是localhost,是给伪分布式用的。要修改才能在完全分布式的情况下使用。如果在hbase-env.sh设置了HBASE_MANAGES_ZK,这些ZooKeeper节点就会和HBase一起启动。

注意,如果是独立的zookeeper集群,此属性要配置。

4.5.hbase.master ???

5.配置conf/regionservers,把localhost改成如下内容:

master
slave1
slave2

6.启动/关闭Hbase数据库集群,启动hbase集群,需要检查hadoop和zookeeper是否已经成功启动,然后在master节点上启动hbase集群,bin/start-hbase.sh,如果没报错,进程里有相关进程,则hbase集群安装成功。还可以通过浏览器验证,地址如下:http://master:60010/master.jsp。

7.出现的问题

1)在第一次启动的时候,regionServer没有启动成功,报如下错误: Reported time is too far out of sync with master.  Time difference of 535556ms > max allowed of 30000

这是因为在master和slave之间的时间间隔太大,需要同步他们之间的时间,将时间差别调小一点,或者将验证的时间间隔加大一点,在hbase-site.xml添加如下配置:

<property>
 <name>hbase.master.maxclockskew</name>
 <value>1000000</value>
 <description>Time difference of regionserver from master</description>
</property>

 

参考文章如下:

手把手教你安装Hbase,一次成功!

搭建hbase-0.94.26集群环境

hbase 结点之间时间不一致造成regionserver启动失败

 

你可能感兴趣的:(安装配置hbase)