大数据离线开发7.2 搭建HBase环境

Posted 小孙仗剑走天涯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据离线开发7.2 搭建HBase环境相关的知识,希望对你有一定的参考价值。

7.2 搭建HBase的环境

准备工作

解压Hbase安装包
[root@bigdata111 tools]# tar -zxvf hbase-1.3.1-bin.tar.gz -C ~/training/

设置Hadoop的环境变量 vi ~/.bash_profile
HBASE_HOME=/root/training/hbase-1.3.1
export HBASE_HOME

PATH=$HBASE_HOME/bin:$PATH
export PATH	

生效环境变量:source ~/.bash_profile

7.2.1 搭建HBase的本地模式

特点:不需要HDFS,把数据直接存在操作系统Linux上

HBase本地模式配置

参数文件配置参数参考值备注
.bash_profileHBASE_HOME/root/training/hbase-1.3.1
hbase-env.shJAVA_HOME/root/training/jdk1.8.0_14428行
hbase-site.xmlhbase.rootdirfile:///root/training/hbase-1.3.1/data数据保存的目录
首先创建为本地文件

hbase-env.sh

28 export JAVA_HOME=/root/training/jdk1.8.0_144

hbase-site.xml

<property>
	<name>hbase.rootdir</name>
	<value>file:///root/training/hbase-1.3.1/data</value>
</property>

启动HBase命令:start-hbase.sh————仅仅只启动HMaster

停止HBase命令:stop-hbase.sh

hbase shell 命令进入数据库

7.2.2 搭建HBase的伪分布模式

特点

  • 也是一台机器,需要一个zookeeper、一个HMaster、一个RegionServer

  • 需要启动hadoop环境:start-hdfs.sh

HBase伪分布模式配置

参数文件配置参数参考值备注
.bash_profileHBASE_HOME/root/training/hbase-1.3.1
hbase-env.shJAVA_HOME/root/training/jdk1.8.0_14428行
同上HBASE_MANAGES_ZKtrue第129行注释打开
使用HBase自带的Zookeeper
hbase-site.xmlhbase.rootdirhdfs://192.168.157.111:9000/hbaseHBase对应的HDFS目录
同上hbase.cluster.distributedtrue是一个分布式环境
同上hbase.zookeeper.quorum192.168.157.111指定ZK的地址
同上dfs.replication1
regionservers192.168.157.111指定从节点所在的地址

参数配置

hbase-env.sh

28 export JAVA_HOME=/root/training/jdk1.8.0_144

129 export HBASE_MANAGES_ZK=true

hbase-site.xml

<!--HBase对应的HDFS目录-->
<property>
	<name>hbase.rootdir</name>
	<value>hdfs://192.168.157.111:9000/hbase</value>
</property>

<!--是一个分布式环境-->
<property>
	<name>hbase.cluster.distributed</name>
	<value>true</value>
</property>

<!--指定ZK的地址-->
<property>
	<name>hbase.zookeeper.quorum</name>
	value>192.168.157.111</value>
</property>

<property>
	<name>dfs.replication</name>
	<value>1</value>
</property>	

regionservers

192.168.157.111

启动命令与本地模式一样,但是启动的服务不一样

可以同本地模式一样在本地操作,也可以在网页上查看,配置的hdfs网址

可以通过打开ZooInspector文件夹中的zookeeper-dev-ZooInspector.jar文件(JVM打开方式)

点击连接设置

  • connet String :ip:2181
  • session Timeout:5000

7.2.3 搭建HBase的全分布模式和HA

7.2.3.1 搭建HBase的全分布

需要机器及其配置

bigdata112:HMaster、ZooKeeper

bigdata113:RegionServer

bigdata114:RegionServer

注意:每台机器的时间同步,可以使用 date -s 11/22/2016 设置时间

如果时间不同步:

  1. Hadoop:执行MR出错
  2. HBase:RegionServer会自动停止

准备工作

主节点上进行操作

  • 启动hadoop环境:start-dfs.sh
  • 上传hbase.tar.gz文件到主节点上
  • 解压:tar -zxvf hbase-1.3.1-bin.tar.gz -C ~/training/

每台机器上同步设置环境变量

设置Hadoop的环境变量 vi ~/.bash_profile
HBASE_HOME=/root/training/hbase-1.3.1
export HBASE_HOME

PATH=$HBASE_HOME/bin:$PATH
export PATH	

生效环境变量:source ~/.bash_profile

主机参数配置

hbase-env.sh

28 export JAVA_HOME=/root/training/jdk1.8.0_144

129 export HBASE_MANAGES_ZK=true

hbase-site.xml

参数文件配置参数参考值
.bash_profileHBASE_HOME/root/training/hbase-1.3.1
hbase-env.shJAVA_HOME/root/training/jdk1.8.0_144
同上HBASE_MANAGES_ZKtrue
hbase-site.xmlhbase.rootdirhdfs://192.168.157.111:9000/hbase
同上hbase.cluster.distributedtrue
同上hbase.zookeeper.quorum192.168.157.111
同上dfs.replication2
同上hbase.master.maxclockskew180000
regionservers192.168.157.113
192.168.157.114
<!--HBase对应的HDFS目录-->
<property>
	<name>hbase.rootdir</name>
	<value>hdfs://192.168.157.112:9000/hbase</value>
</property>

<!--是一个分布式环境-->
<property>
	<name>hbase.cluster.distributed</name>
	<value>true</value>
</property>

<!--指定ZK的地址-->
<property>
	<name>hbase.zookeeper.quorum</name>
	value>192.168.157.112</value>
</property>

<property>
	<name>dfs.replication</name>
	<value>2</value>
</property>	

<!--允许集群各个节点的时间误差的最大值,单位是毫秒-->
<property>
	<name>hbase.master.maxclockskew</name>
	<value>180000</value>
</property>	

regionservers

192.168.157.113
192.168.157.114

文件分发

把安装目录复制到从节点上(可以删掉doc文件下面所有的xml文件)

  • scp -r hbase-1.3.1/ root@bigdata113:/root/training
  • scp -r hbase-1.3.1/ root@bigdata114:/root/training

启动Hbase:start-hbase.sh

7.2.3.2 搭建HA

不需要单独搭建,使用HBase自带的zookeeper

HBase的HA架构

  • 配置参数:hbase.zookeeper.quorum

  • 在某个从节点单独启动HMaster:hbase-daemon.sh start master

当bigdata112死掉的时候,bigdata114就会成为主节点 ,从节点的一些信息也会显示,因为我们的客户端都是连接zookeeper的

7.2.3.3 比较各种模式下HBase在ZK中保存的数据

伪分布和全分布模式主要区别是在 rs

全分布和HA模式主要区别是在 backup-masters

以上是关于大数据离线开发7.2 搭建HBase环境的主要内容,如果未能解决你的问题,请参考以下文章

大数据学习笔记55:搭建HBase环境

大数据开发|HBASE分布式数据库环境构建

大数据学习系列之二 ----- HBase环境搭建(单机)

大数据学习系列之五 ----- Hive整合HBase图文详解

HBase二次开发之搭建HBase调试环境,如何远程debug HBase源代码

Hbase 单机环境搭建