Hbase-HA搭建(两个HMaster)

1.配置

1.1.环境配置

配置HBASE_HOME(部分参数路径基于此配置,比方说log)
vi ~/.bash_profile

PATH=$PATH:$HOME/bin
export JAVA_HOME=/home/hadoop/env/jdk1.7.0_80
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HADOOP_HOME=/opt/modules/hadoop
export HBASE_HOME=/opt/modules/hbase-1.2.6
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$PATH

1.2.文件配置

1.2.1.hbase-env.sh
export JAVA_HOME=/home/hadoop/env/jdk1.7.0_80
export HBASE_CLASSPATH=/opt/modules/hbase-1.2.6/conf
# 根据内存情况,可以适当调大
export HBASE_HEAPSIZE=1G
export HBASE_PID_DIR=/opt/data/hbase/pid
# 使用独立的zookeeper
export HBASE_MANAGES_ZK=false
1.2.2.hbase-site.xml
<configuration>
	<property>
		<!-- hbase在hdfs存放路径 -->
		<name>hbase.rootdir</name>
		<value>hdfs://cluster/hbase</value>
	</property>
	<property>
		<!-- 打开完全分布式模式 -->
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>master,slave1,slave2</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.clientPort</name>
		<value>2181</value>
	</property>
	<property>
		<!-- 允许节点时间偏差值 -->
		<name>hbase.master.maxclockskew</name>
		<value>180000</value>
	</property>
	<property>
		<!-- 定义regionserver上用于等待响应用户表级请求的线程数,可配大点 -->
		<name>hbase.regionserver.handler.count</name>
		<value>12</value>
	</property>
	<property>
		<!-- 这里因为要HMaster的HA,不需要指定域名 -->
		<name>hbase.master</name>
		<value>60000</value>
	</property>
	<property>
		<name>hbase.tmp.dir</name>
		<value>/opt/data/hbase/tmp</value>
	</property>
</configuration>
1.2.3.regionservers
master
slave1
slave2

1.3.创建相关文件

如下目录赋予hadoop用户

/opt/data/hbase
/opt/data/hbase/pid
/opt/data/hbase/tmp

2.启动集群

./bin/start-hbase.sh
启动之后,会发现只有主节点有regionserver进程,其余都没有,查看log,发现
java.net.UnknownHostException: cluster
HBase没有识别cluster这个集群,解决这个问题的方法是把Hadoop的2个配置文件(core-site.xml和hdfs-site.xml),放到HBase的conf目录下,让HBase能找到Hadoop的配置

3.启动从节点的HMaster

./bin/hbase-daemon.sh start master

4.查看zookeeper

[zk: localhost:2181(CONNECTED) 0] ls /
[hbase, yarn-leader-election, hadoop-ha, zookeeper]
[zk: localhost:2181(CONNECTED) 1] ls /hbase
[meta-region-server, backup-masters, table, draining, region-in-transition, running, table-lock, master, namespace, hbaseid, online-snapshot, replication, splitWAL, recovering-regions, rs, flush-table-proc]

5.确定ha是否成功

访问http://172.16.30.101:16010 和 http://172.16.30.100:16010
其中一个是Backup Master,另一个是Master

6.进程情况

master进程

[hadoop@master hbase-1.2.6]$ jps
42237 ZooKeeperMain
38296 NodeManager
42561 Jps
37230 NameNode
36329 JournalNode
36151 DataNode
42497 HMaster
36479 DFSZKFailoverController
41912 HRegionServer
34688 QuorumPeerMain

slave1进程

[hadoop@slave1 hbase-1.2.6]$ jps                                                                             
56760 DFSZKFailoverController
59847 HMaster
56572 DataNode
56667 JournalNode
60158 Jps
57922 ResourceManager
57769 NodeManager
17361 QuorumPeerMain
57211 NameNode

slave2进程

[hadoop@slave2 hbase-1.2.6]$ jps
105523 QuorumPeerMain
109093 Jps
109004 HRegionServer
107074 NodeManager
106772 JournalNode
106595 DataNode
107229 ResourceManager

注意事项:
hbase对时间偏差要求很高,一定要做好时间同步

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值