hbase-0.96.2 集群安装


1.上传hbase安装包

hbase-0.96.2-hadoop2-bin.tar.gz

2.解压

tar -zxvf hbase-0.96.2-hadoop2-bin.tar.gz -C app/

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


3.1 要把hadoop的 hdfs-site.xml 和 core-site.xml copy 到hbase/conf下


3.2 修改 hbase-env.sh

//修改jdk 环境变量
vim  hbase-env.sh
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65

export HBASE_MANAGES_ZK=false
    //这个参数默认是 true,意思是使用hbase系统内部自带的zookeeper。
    //如果服务器上安装了独立的zookeeper,并且这个 zookeeper 是多个平台共用的,那么这个参数应该设置为 false。

3.3 编辑 hbase-site.xml

vim hbase-site.xml
<configuration>
	<!-- 指定hbase在HDFS上存储的路径 -->
	<property>
		 <name>hbase.rootdir</name>
		 <value>hdfs://ns1/hbase</value>
	</property>
	<!-- 指定hbase是分布式的 -->
	<property>
			<name>hbase.cluster.distributed</name>
			<value>true</value>
	</property>
	<!-- 指定zk的地址,多个用“,”分割 ,hbase.zookeeper.quorum 的个数必须是奇数,至少是3个-->
	<property>
			<name>hbase.zookeeper.quorum</name>  <!--  quorum : 法定人数   -->
			<value>zeek05:2181,zeek06:2181,zeek07:2181</value>
	</property>
</configuration>

3.4 编辑 regionservers

vim regionservers
zeek03
zeek04
zeek05
zeek06

3.5 拷贝hbase到其他节点

scp -r hbase-0.96.2-hadoop2/ zeek02:/home/hadoop/app
scp -r hbase-0.96.2-hadoop2/ zeek03:/home/hadoop/app
scp -r hbase-0.96.2-hadoop2/ zeek04:/home/hadoop/app
scp -r hbase-0.96.2-hadoop2/ zeek05:/home/hadoop/app
scp -r hbase-0.96.2-hadoop2/ zeek06:/home/hadoop/app

4.确保HBase所在的每一个节点时间同步。


5.启动所有的hbase


分别启动 zookeeper
./zkServer.sh start

启动hbase集群
start-dfs.sh

启动hbase,在主节点上运行:
start-hbase.sh

6.通过浏览器访问hbase管理页面

192.168.1.201:60010


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

hbase-daemon.sh start master


-------------------------    结束,学习到上面步骤即可    ----------------------------------------

8.对于 第4步 可能会出现的问题:

hbase的master 和 regionserver的时钟要保持一致,否则启动regionserver的时候会报如下错误:
org.apache.hadoop.hbase.ClockOutOfSyncException: 
org.apache.hadoop.hbase.ClockOutOfSyncException: 
Server hadoop02,60020,1374576225508 has been rejected; Reported time is 
too far out of sync with master.  Time difference of 62062623ms >
 max allowed of 30000ms
这是由于master 和 regionserver之间的时间误差太大造成的。  

解决方法1 :  修改下面的参数

<property>
	 <name>hbase.master.maxclockskew</name>  
	 <value>180000</value>  
	 <description>Time difference of regionserver from master</description>  
<property>
该参数默认 为 30 000 (30秒)  

解决方法2 : 使用ntpdate 同步集群的时钟


你可能感兴趣的:(hbase-0.96.2 集群安装)