HBase简介和分布式集群的搭建

HBase是什么?

1,概念

HBase是一个高可靠性、高性能、可伸缩、分布式、基于列存储的非关系型(NoSQL)数据库。

列式存储和行式存储?

《HBase简介和分布式集群的搭建》

非关系型数据库与关系型数据库?

《HBase简介和分布式集群的搭建》

2,与Google Bigtable的不同之处

《HBase简介和分布式集群的搭建》

3, 何时采用 HBase?

(1)需适应不同种类数据格式和数据源,不能预先严格定义模式

(2)需处理大规模数据

(3)不强调数据之间的关系,需存储半结构化和非结构化数据

(4)数据非常稀疏,有大量为 NULL 的字符串

(5)想要更好的进行扩展

4,HBase 集群结构

《HBase简介和分布式集群的搭建》

HBase 分布式集群搭建

《HBase简介和分布式集群的搭建》

1,前期装备

(1)同步网络时间

1.  cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  #修改时区

3.  ntpdate cn.pool.ntp.org    #同步网络时间

3.  date  #检查时间是否修改成功

(2)安装zookeeper在所有节点上

zookeeper安装步骤(点击可跳转到安装页面)

2,HBase1.3.1 分布式集群搭建

1,下载安装包

下载地址: https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/

版本号: hbase-1.3.1-bin.tar.gz

2,上传并解压

将 HBase 安装包上传到 Linux 服务器

解压命令:tar -zxvf hbase-1.3.1-bin.tar.gz

3,修改配置文件

hbase-env.sh

1,修改JDK安装路径

export JAVA_HOME=/home/shiny/Desktop/software/jdk1.8.0_73

《HBase简介和分布式集群的搭建》

2,不引用HBase自带的ZooKeeper,使用自己安装的

《HBase简介和分布式集群的搭建》

hbase-site.xml

1,指定 HBase 在 HDFS 上存储的路径

1.  <property>

2.  <name>hbase.rootdir</name>

 3. <value>hdfs://hadoop01:9000/hbase</value>

4.  </property>

2,指定 HBase 是分布式的

1.  <property>

2.  <name>hbase.cluster.distributed</name>

3.  <value>true</value>

4.  </property>

3,指定 ZooKeeper 节点,多个用“,”分割

1.   <property>

2.   <name>hbase.zookeeper.quorum</name>

3.   <value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value>

4.   </property>

4,ZooKeeper配置文件zoo.cfg中的dataDir。ZooKeeper存储数据库快照的位置

 1. <property>

2.  <name>hbase.zookeeper.property.dataDir</name>

3.  <value>/home/shiny/zkdata</value>

 4. </property>

4,分发到其它节点

 1. scp -r hbase-1.3.1/ shiny@hadoop02:$PWD

2. scp -r hbase-1.3.1/ shiny@hadoop03:$PWD

5,配置环境变量

1,编辑.bash_profile文件

 1. vim /home/theone/.bash_profile

2,添加环境变量:

1.  export HBASE_HOME=/home/theone/Desktop/software/hbase-1.3.1/

  2.export PATH=$PATH:$HBASE_HOME/bin

3,立即执行文件

 1. source /home/theone/.bash_profile

6,启动 HBase 集群

1,启动hadoop集群,(在主节点上执行命令)

 1. start-dfs.sh

  2.start-yarn.sh

2,启动 ZooKeeper 集群,(在所有节点上执行命令)

1.  zkServer.sh start

3,启动 HBase 集群,(在哪个节点启动哪个节点就是主节点)

1.  start-hbase.sh

启动页面有警告信息:

解决方案:

1,将 JDK 修改为 1.7 版本

2,修改 HBase 的配置文件hbase-env.sh

关闭 HBase 集群,命令:stop-hbase.sh

修改配置文件hbase-env.sh,将以下两行配置注释掉(每个节点)

《HBase简介和分布式集群的搭建》

再次启动 HBase 集群,警告信息消失

7,验证 HBase 集群

检查进程,命令:jps

《HBase简介和分布式集群的搭建》

登录Web UI 页面:主节点:16010

《HBase简介和分布式集群的搭建》

8,单步启动

主节点:hbase-daemon.sh start master

从节点:hbase-daemon.sh start regionserver

3,常见异常

HRegionServer 进程启动后立即退出

多台服务器之间 HBase 默认的容忍时间差为 30s

原因:由于HBase 集群服务器时间不同步

大家喜欢多多关注,你的关注是我最大的动力。需要大数据学习资料的可以加群:834325294

    原文作者:大数据首席数据师
    原文地址: https://www.jianshu.com/p/6b62fe50df6f
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞