当前位置:   article > 正文

Hbase 完全分布式+高可用 集群搭建_hbase如何保证高可靠性和高可用的

hbase如何保证高可靠性和高可用的
说在前面
  • 工作环境:VMware® Workstation 12 Pro 12.5.6 build-5528349
  • linux版本:CentOS-7-x86_64-Minimal-1611.iso
  • JDK版本:jdk-8u65-linux-x64.tar.gz
  • Hadoop版本:hadoop-2.7.6.tar.gz
  • Zookeeper版本:zookeeper-3.4.12.tar.gz
  • hbase版本:hbase-1.2.6-bin.tar.gz
环境准备
  • 四台主机(s201, s202, s203, s204)
MasterServer
[s201] 192.168.32.201 

Region server
[s202] 192.168.32.202
[s203] 192.168.32.203
[s204] 192.168.32.204
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
安装配置hbase
  • 解压hbase-1.2.6-bin.tar.gz,创建符号链接(s201),分发给其他主机(s202, s203, s204)
//解压到 /soft 目录下
$> tar -xzvf /mnt/hgfs/bigdata/soft/hbase-1.2.6-bin.tar.gz -C/soft

//创建符号链接
$> ln -s /soft/hbase-1.2.6/ hbase

//分发给其他三台主机
$> scp -r hbase-1.2.6 centosmin0@s202:/soft/
$> scp -r hbase-1.2.6 centosmin0@s203:/soft/
$> scp -r hbase-1.2.6 centosmin0@s204:/soft/

export HBASE_MANAGES_ZK=true

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 配置环境变量,立即生效:source profile
$> sudo nano /etc/profile

# hbase
export HBASE_HOME=/soft/hbase
export PATH=$PATH:$HBASE_HOME/bin
  • 1
  • 2
  • 3
  • 4
  • 5
  • 查看是否安装成功
$> hbase version
  • 1

image

完全分布式集群搭建

每台主机都需要相同的配置,下面以s201主机为例进行配置,s201是master节点

  • 配置 /soft/hbase/conf/hbase-env.sh和 /soft/hbase/conf/regionservers
$> nano /soft/hbase/conf/hbase-env.sh 

export JAVA_HOME=/soft/jdk
export HBASE_MANAGES_ZK=false

//在master节点(s201)配置:
export HBASE_PID_DIR=/home/centosmin0/hbase/pids

$> nano /soft/hbase/conf/regionservers

//Region server
s202
s203
s204
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 配置 /soft/hbase/conf/hbase-site.xml 文件
$> nano /soft/hbase/conf/hbase-site.xml

<!-- 使用完全分布式 -->
<property>
	<name>hbase.cluster.distributed</name>
	<value>true</value>
</property>

<!-- 指定hbase数据在hdfs上的存放路径 -->
<property>
	<name>hbase.rootdir</name>
	<value>hdfs://s201:8020/hbase</value>
</property>
<!-- 配置zk地址 -->
<property>
	<name>hbase.zookeeper.quorum</name>
	<value>s201:2181,s202:2181,s203:2181</value>
</property>
<!-- zk的本地目录 -->
<property>
	<name>hbase.zookeeper.property.dataDir</name>
	<value>/home/centos/zookeeper</value>
</property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 启动hbase集群

注意:在启动hbase集群前,应该保证Master所在主机的namenode启动,并保证为激活状态。否则会报异常:Operation category READ is not supported in state standby

$> start-dfs.sh
$> zkServer.sh start
  • 1
  • 2
$> start-hbase.sh
  • 1

image

image

  • 在web端查看:192.168.32.201:16010

image

  • hbase基本命令
//启动HBase集群:
$> start-hbase.sh

//单独启动一个HMaster进程:
$> hbase-daemon.sh start master

//单独停止一个HMaster进程:
$> hbase-daemon.sh stop master

//单独启动一个HRegionServer进程:
$> hbase-daemon.sh start regionserver

//单独停止一个HRegionServer进程:
$> hbase-daemon.sh stop regionserver

//进入hbase shell
$> hbase shell
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
高可用集群搭建

Hbase依赖于hadoop进行文件存储,依赖于ZooKeeper进行容灾处理。Hbase内部也整合了ZooKeeper,可以在 /hbase/conf/hbase-env.sh 中进行修改,使用内嵌的ZooKeeper进行HA管理。本文档使用外部配置的ZooKeeper进行管理。

hbase高可用集群:s201,s202,s203,s204。如下以 s201 主机进行修改配置,其他节点配置相同。

$> nano /soft/hbase/conf/hbase-env.sh

//找到如下配置进行修改
export HBASE_CLASSPATH=$HBASE_CLASSPATH:/soft/hadoop/etc/hadoop
  • 1
  • 2
  • 3
  • 4
  • 在 /soft/hbase/conf/ 目录下创建到hadoop的hdfs-site.xml符号连接
$>ln -s /soft/hadoop/etc/hadoop/hdfs-site.xml /soft/hbase/conf/hdfs-site.xml
  • 1
  • 修改hbase-site.xml文件中的 hbase.rootdir
<property>
        <name>hbase.rootdir</name>
        <value>hdfs://mycluster/hbase</value>
</property>
  • 1
  • 2
  • 3
  • 4
  • 将以上修改的文件均分发给其他三台主机(s202,s203,s204)
参考
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/621812
推荐阅读
相关标签
  

闽ICP备14008679号