(1)HBase集群安装前准备

  1. 安装jdk

  2. hadoop2.x集群准备(参考上一篇博文hadoop2.2集群安装)

  3. ssh

  4. 集群的时间要保持基本一致


(2)HBase集群安装

  1. 解压HBase

# tar zvxf hbase-0.96.0.tar.gz -C /usr

2.配置conf/hbase-env.sh

# cd /usr/hbase/conf
# vim hbase-env.sh

 在这里要告诉HBase java的安装路径,还可以设置HBase的运行环境,诸如heapsize,JVM有关选项,还有log文件地址等。

修改如下:

wKioL1PtuIahRq7RAABwnlyrPKY299.jpg

3.创建临时文件夹并配置conf/hbase-site.xml

# mkdir -pv /usr/hbase/{tmp,zookeeper}

hbase-site.xml配置如下:

<configuration>
	<property>
   		<name>hbase.rootdir</name>
   		<value>hdfs://master:8020/hbase</value>
	</property>
	<property> 
		<name>hbase.master</name> 
		<value>hdfs://master:60000</value> 
	</property> 
	<property>
    		<name>hbase.zookeeper.property.dataDir</name>
    		<value>/usr/hbase/zookeeper</value>
	</property>
	<property>
		<name>hbase.tmp.dir</name>
		<value>/usr/hbase/tmp</value>
	</property>
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>master,slave1,slave2</value>
	</property>
</configuration>

4.配置conf/regionservers

内容如下:

wKioL1PtudnRNtiKAAAXGq8_6G4404.jpg

 在这里列出了你希望运行的全部 HRegionServer,一行写一个host (就像Hadoop里面的 slaves 一样). 列在这里的server会随着集群的启动而启动,集群的停止而停止。


5.替换hadoop的jar包

hbase基本的配置完了。
查看hbase的lib目录下。

# ls lib |grep hadoop

hadoop-annotations-2.1.0-beta.jar
hadoop-auth-2.1.0-beta.jar
hadoop-client-2.1.0-beta.jar
hadoop-common-2.1.0-beta.jar
hadoop-hdfs-2.1.0-beta.jar
hadoop-hdfs-2.1.0-beta-tests.jar
hadoop-mapreduce-client-app-2.1.0-beta.jar
hadoop-mapreduce-client-common-2.1.0-beta.jar
hadoop-mapreduce-client-core-2.1.0-beta.jar
hadoop-mapreduce-client-jobclient-2.1.0-beta.jar
hadoop-mapreduce-client-jobclient-2.1.0-beta-tests.jar
hadoop-mapreduce-client-shuffle-2.1.0-beta.jar
hadoop-yarn-api-2.1.0-beta.jar
hadoop-yarn-client-2.1.0-beta.jar
hadoop-yarn-common-2.1.0-beta.jar
hadoop-yarn-server-common-2.1.0-beta.jar
hadoop-yarn-server-nodemanager-2.1.0-beta.jar

看到它是基于hadoop2.1.0的,所以我们需要用我们的hadoop2.2.0下的jar包来替换2.1的,保证版本的一致性,hadoop下的jar包都是在$HADOOP_HOME/share/hadoop下的.

我们先cd 到 /usr/hbase/lib下运行命令: rm -rf hadoop*.jar删掉所有的hadoop相关的jar包,然后运行:
find /usr/hadoop/share/hadoop -name "hadoop*jar" | xargs -i cp {} /usr/hbase/lib/ 
拷贝所有hadoop2.2.0下的jar包hbase下进行hadoop版本的统一


6.分发Hbase到slave节点

# scp /usr/hbase root@slave1:~/usr
# scp /usr/hbase root@slave2:~/usr


(3)运行和确认安装

首先保证启动HDFS,然后再启动HBASE。

# cd /usr/hbase
# bin/start-hbase.sh

wKiom1PtvM-CL8OHAAFo9Eg5wjo475.jpg


(4)测试

master的进程:

wKiom1PtvGeSfZfoAABZfb5-gSE375.jpg

两个slave的进程:

wKiom1PtvGfSFvQzAABcRn-KpTM973.jpg

wKiom1PtvGizLJOTAABJgtYpSYU951.jpg

通过浏览器查看60010端口:

wKiom1PtvKewFvHdAAKon5-37Wk817.jpg

至此HBase安装完毕。