Hadoop-04-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
export HBASE_CLASSPATH=hadoop的安装路径/conf
export HBASE_MANAGE_ZK=true //同意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>
<value>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中仅仅是存放字节,採用程序将汉字改为字节录入就可以。