Hbase分布式具体安装步骤

 

Hadoop全然分布式环境已经搭建完毕(參见01_Hadoop全然分布式环境搭建)。

 

注意:Hbase和Hadoop的版本号必须相应!

不然会出现各种问题!

这里选用的是Hadoop-0.20.2和Hbase-0.90.5!经測试成功。

 

四、安装配置Hbase

Hadoop用户登录

1、下载hbase-0.90.5.tar.gz

 

2、解压hbase到某一文件夹/home/hadoop/hadoop_sub/hbase-0.90.5

 

3、配置hbase安装文件夹下conf下文件hbase-env.sh,导出JAVA_HOME

文件未尾加:

# The java implementation to use.  Required.
 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk
hadoop的安装路径/conf
同意hbase管理其自带的zookeeper。

4、配置/home/coole/hbase-0.20.6/conf下文件hbase-site.xml

<?xml version="1.0"?>
<?
xml-stylesheet type="text/xsl" href="configuration.xsl"?
>
<configuration>
<property>
    <name>hbase.rootdir</name>
hdfs://h1:9000/hbase</value>   注意:这里的路径一定要和hadoop的core-site.xml下配置的路径一致!
!!
!
</property>
<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>
<property>
    <name>hbase.master</name>
    <value>h1:60000</value>
  </property>
<property>
      <name>hbase.zookeeper.quorum</name>
      <value>h1,h2,h3</value>
</property>
<property>
      <name>hbase.tmp.dir</name>
      <value>/home/hadoop/hadoop_sub/hbase_tmp</value>
</property>
<!--指zookeeper集群data文件夹-->
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hadoop_sub/zookeeper_data</value>
</property>
</configuration>
 
hbase.rootdir设置hbase在hdfs上的文件夹,主机名为hdfs的namenode节点所在的主机 
hbase.cluster.distributed设置为true,表明是全然分布式的hbase集群 
hbase.master设置hbase的master主机名和port 
hbase.zookeeper.quorum设置zookeeper的主机。官方推荐设置为3。5。7比較好,奇数。

5.替换hbase自带的hadoop包。。。(重要,为了避免不兼容的情况)

备份hbase-0.90.5/lib文件夹下的hadoop-core-0.20-append-r1056497.jar,再cp hadoop文件夹下的hadoop-0.20.2-core.jar到hbase-0.90.5/lib文件夹。

 

 

6.配置/home/coole/hbase-0.20.6/conf下文件regionservers

h1
h2
h3

 

 

7、环境变量设置,用gedit打开/etc/profile文件在文件未尾加入:

export HBASE_HOME=/home/coole/ hbase-0.20.6
export PATH=$PATH:$HBASE_HOME/bin

 

完毕后使用 source /etc/profile 命令使之生效。

 

8、 在完毕以上改动之后,把master上的hbase原样拷贝到slave上,保证文件夹结构一致,可使用例如以下命令: 

scp –r /home/hadoop/ hadoop_sub/  hadoop@h2:/home/hadoop
scp –r /home/hadoop/hadoop_sub/   hadoop@h3:/home/hadoop

本次測试将Hbase等子项目统一放在~/hadoop_sub文件夹下。故能够总体拷贝到其它节点。

 

 

9、启动Hbase

start-hbase.sh 
stop-hbase.sh

 

10.使用jps命令查看hbase是否启动成功

在master上能够看到HMaster、RegionServer和QuorumPeer启动成功;

在slaves上能够看到HRegionServer和QuorumPeer启动成功

 

注:

1、安装hbase 0.20.5版本号自带了zookeeper-3.2.2,所以不须要单独安装zookeeper。

2、hbase默认通过zookeeper管理,配置项在/jz/hbase-0.20.5/conf/hbase-env.sh文件里:

# Tell HBase whether it should manage it's own instance of Zookeeper or not.

# export HBASE_MANAGES_ZK=true假设须要採用自带安装的zookeeper,能够将凝视取消,把true改动为false。

否则启动hbase的时候将会提示地址被占用。只是不影响hbase正常使用。

3、通过shell控制台想hbase插入中文数据将会报错,这是因为hbase中仅仅是存放字节,採用程序将汉字改为字节录入就可以。



Hbase分布式具体安装步骤

 

Hadoop全然分布式环境已经搭建完毕(參见01_Hadoop全然分布式环境搭建)。

 

注意:Hbase和Hadoop的版本号必须相应!

不然会出现各种问题!

这里选用的是Hadoop-0.20.2和Hbase-0.90.5!经測试成功。

 

四、安装配置Hbase

Hadoop用户登录

1、下载hbase-0.90.5.tar.gz

 

2、解压hbase到某一文件夹/home/hadoop/hadoop_sub/hbase-0.90.5

 

3、配置hbase安装文件夹下conf下文件hbase-env.sh,导出JAVA_HOME

文件未尾加:

# The java implementation to use.  Required.
 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk
hadoop的安装路径/conf
同意hbase管理其自带的zookeeper。

4、配置/home/coole/hbase-0.20.6/conf下文件hbase-site.xml

<?xml version="1.0"?>
<?
xml-stylesheet type="text/xsl" href="configuration.xsl"?
>
<configuration>
<property>
    <name>hbase.rootdir</name>
hdfs://h1:9000/hbase</value>   注意:这里的路径一定要和hadoop的core-site.xml下配置的路径一致!
!!

</property>
<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>
<property>
    <name>hbase.master</name>
    <value>h1:60000</value>
  </property>
<property>
      <name>hbase.zookeeper.quorum</name>
      <value>h1,h2,h3</value>
</property>
<property>
      <name>hbase.tmp.dir</name>
      <value>/home/hadoop/hadoop_sub/hbase_tmp</value>
</property>
<!--指zookeeper集群data文件夹-->
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hadoop_sub/zookeeper_data</value>
</property>
</configuration>
 
hbase.rootdir设置hbase在hdfs上的文件夹,主机名为hdfs的namenode节点所在的主机 
hbase.cluster.distributed设置为true,表明是全然分布式的hbase集群 
hbase.master设置hbase的master主机名和port 
hbase.zookeeper.quorum设置zookeeper的主机。官方推荐设置为3。5。7比較好,奇数。

5.替换hbase自带的hadoop包。。。(重要,为了避免不兼容的情况)

备份hbase-0.90.5/lib文件夹下的hadoop-core-0.20-append-r1056497.jar,再cp hadoop文件夹下的hadoop-0.20.2-core.jar到hbase-0.90.5/lib文件夹。

 

 

6.配置/home/coole/hbase-0.20.6/conf下文件regionservers

h1
h2
h3

 

 

7、环境变量设置,用gedit打开/etc/profile文件在文件未尾加入:

export HBASE_HOME=/home/coole/ hbase-0.20.6
export PATH=$PATH:$HBASE_HOME/bin

 

完毕后使用 source /etc/profile 命令使之生效。

 

8、 在完毕以上改动之后,把master上的hbase原样拷贝到slave上,保证文件夹结构一致,可使用例如以下命令: 

scp –r /home/hadoop/ hadoop_sub/  hadoop@h2:/home/hadoop
scp –r /home/hadoop/hadoop_sub/   hadoop@h3:/home/hadoop

本次測试将Hbase等子项目统一放在~/hadoop_sub文件夹下。故能够总体拷贝到其它节点。

 

 

9、启动Hbase

start-hbase.sh 
stop-hbase.sh

 

10.使用jps命令查看hbase是否启动成功

在master上能够看到HMaster、RegionServer和QuorumPeer启动成功;

在slaves上能够看到HRegionServer和QuorumPeer启动成功

 

注:

1、安装hbase 0.20.5版本号自带了zookeeper-3.2.2,所以不须要单独安装zookeeper。

2、hbase默认通过zookeeper管理,配置项在/jz/hbase-0.20.5/conf/hbase-env.sh文件里:

# Tell HBase whether it should manage it's own instance of Zookeeper or not.

# export HBASE_MANAGES_ZK=true假设须要採用自带安装的zookeeper,能够将凝视取消,把true改动为false。

否则启动hbase的时候将会提示地址被占用。只是不影响hbase正常使用。

3、通过shell控制台想hbase插入中文数据将会报错,这是因为hbase中仅仅是存放字节,採用程序将汉字改为字节录入就可以。