HBase集群部署

Posted VV大数据

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HBase集群部署相关的知识,希望对你有一定的参考价值。


HBase集群部署


上一篇文章:,我们搭建了Hadoop高可用集群,今天要在搭建好的Hadoop集群上,搭建HBase集群,就让我们开始吧~


HBase集群部署

准备工作

1.安装包

Hadoop 2.7.3 64位安装包

Jdk-8u91-linux-x64.tar.gz 安装包

Zookeeper 3.4.9 安装包

Hbase-1.2.6-bin.tar.gz 安装包

2.虚拟机准备

VMWare三台虚拟机:Centos6.5 x64 操作系统(需自行安装,先安装一台,然后克隆两台)

HBase集群部署

VV整理了本篇文章所用的软件包!节省大家的时间!

想要更多大数据学习资料吗?赶快关注吧

HBase集群部署

3.部署Hadoop集群

  • 如果你是搭建的高可用(HA)Hadoop集群,就直接开始部署HBase吧!

  • 还没安装Hadoop集群的小伙伴,可以看一下VV的文章:

  • 已经部署了Hadoop集群的小伙伴,却没有使用Zookeeper,那么,你需要安装Zookeeper,安装方法,可以看一下VV的文章:

    部署HBase的时候需要用到Zookeeper哦!

HBase集群部署

集群规划

HBase集群部署

主机名

安装的软件

运行的进程

louisvv01 (主节点)

192.168.1.210

JDK、Hadoop、Zookeeper、HBase

NameNode、ResourceManager、QuorumPeerMain、HMaster、HRegionServer

DataNode、DFSZKFailoverController、NodeManager、JournalNode

louisvv02

192.168.1.211

JDK、Hadoop、Zookeeper、HBase

NameNode(StandBy)、ResourceManager(StandBy)、QuorumPeerMain、HMaster(Backup)

HRegionServer、DataNode、DFSZKFailoverController、NodeManager、JournalNode

louisvv03

192.168.1.212

JDK、Hadoop、Zookeeper、HBase

QuorumPeerMain、DataNode、NodeManager、JournalNode、HRegionServer

HBase集群部署
上传HBase软件包

使用Winscp软件将hbase-1.2.6-bin.tar.gz软件包上传到louisvv01的/opt目录下

HBase集群部署

HBase集群部署
解压HBase软件包

解压软件包

[root@louisvv01 opt]# tar -zxf hbase-1.2.6-bin.tar.gz

HBase集群部署
进入解压目录

进入目录修改配置文件

[root@louisvv01 opt]# cd hbase-1.2.6

[root@louisvv01 hbase-1.2.6]# ls

bin  CHANGES.txt  conf  docs  hbase-webapps  LEGAL  lib  LICENSE.txt  NOTICE.txt  README.txt

[root@louisvv01 hbase-1.2.6]# cd conf/

[root@louisvv01 conf]# ls

hadoop-metrics2-hbase.properties  hbase-env.cmd  hbase-env.sh  

hbase-policy.xml  hbase-site.xml  log4j.properties  regionservers

HBase集群部署
修改配置文件

[root@louisvv01 conf]# vim hbase-env.sh

# The java implementation to use.  Java 1.7+ required.

export JAVA_HOME=/opt/jdk1.8.0_91

# Tell HBase whether it should manage it's own instance of Zookeeper or not.

export HBASE_MANAGES_ZK=false

修改hbase-site.xml,添加如下内容:

<configuration>

<!-- 指定hbase在HDFS上存储的路径 -->

<property>

<name>hbase.rootdir</name>

<value>hdfs://loiuisvv01:9000/hbase</value>

</property>

<!-- 指定hbase是分布式的 -->

<property>

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

<value>true</value>

</property>

<property>

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

<value>louisvv01:2181,louisvv02:2181,louisvv03:2181</value>

</property>

</configuration>

修改regionservers,添加如下内容

[root@louisvv01 conf]# vim regionservers

louisvv01

louisvv02

louisvv03

HBase集群部署
拷贝HBase到其他节点

拷贝hbase到louisvv02,louisvv03

[root@louisvv01 opt]# scp -r /opt/hbase-1.2.6 louisvv02:/opt/

[root@louisvv01 opt]# scp -r /opt/hbase-1.2.6 louisvv03:/opt/

HBase集群部署
启动HBase

启动hbase

启动hbase前确保已开启zookeeper,hdfs

[root@louisvv01 bin]#  /opt/hbase-1.2.6/bin/start-hbase.sh

starting master, logging to /opt/hbase-1.2.6/bin/../logs/hbase-root-master-louisvv01.out

louisvv03: starting regionserver, logging to /opt/hbase-1.2.6/bin/../logs/hbase-root-regionserver-louisvv03.out

louisvv02: starting regionserver, logging to /opt/hbase-1.2.6/bin/../logs/hbase-root-regionserver-louisvv02.out

louisvv01: starting regionserver, logging to /opt/hbase-1.2.6/bin/../logs/hbase-root-regionserver-louisvv01.out

为了保证hbase集群的可靠性,在louisvv02上也启动一个master

[root@louisvv02 bin]# /opt/hbase-1.2.6/bin/hbase-daemon.sh start master

使用jps命令查看相应java进程

louisvv01:

[root@louisvv01 bin]# jps

5248 NodeManager

7328 HRegionServer

5013 DFSZKFailoverController

4375 QuorumPeerMain

4552 NameNode

4650 DataNode

5147 ResourceManager

4845 JournalNode

7197 HMaster

7646 Jps

louisvv02: 可以看到备用的master已经起来了

[root@louisvv02 bin]# jps

4432 NameNode

5906 HMaster

6052 Jps

4342 QuorumPeerMain

5639 HRegionServer

4794 NodeManager

4588 JournalNode

4492 DataNode

4671 DFSZKFailoverController

louisvv03:

[root@louisvv03 ~]# jps

5072 HRegionServer

5217 Jps

2305 DataNode

2489 NodeManager

2366 JournalNode

HBase集群部署
在Web页面查看HBase

在web页面上查看hbase集群状况:

即可查看hbase集群状况啦,可以直观的看到运行的Region Server,以及Backup的Master

HBase集群部署

HBase集群部署
测试HBase

hbase启动成功了HBase集群部署

我们来测试一下hbase到底能不能用呢?

[root@louisvv01 bin]# /opt/hbase-1.2.6/bin/hbase shell

hbase(main):001:0>

进入hbase shell,那么我们就简单的来玩一玩吧

创建一张表people,有info,data两个列族

hbase(main):004:0> create 'people','info','data'

0 row(s) in 2.5910 seconds

=> Hbase::Table - people

显示hbase中所有表,可以看到刚才创建的people表

hbase(main):006:0> list

TABLE

people

1 row(s) in 0.0850 seconds

=> ["people"]

向people表中插入数据,row key为rowkey1,列族info添加name列标识符,值为louisvv

hbase(main):008:0> put 'people','rowkey1','info:name','louisvv'

0 row(s) in 2.6100 seconds

向people表中插入数据,row key为rowkey1,列族data添加site列标识符,值为www.louisvv.com

hbase(main):009:0> put 'people','rowkey1','data:site','www.louisvv.com'

0 row(s) in 0.3310 seconds

查看people表中所有信息

hbase(main):010:0> scan 'people'

ROW                                              COLUMN+CELL

rowkey1                                         column=data:site, timestamp=1512638218466, value=www.louisvv.com

rowkey1                                         column=info:name, timestamp=1512638116231, value=louisvv                                                                                    

1 row(s) in 0.8220 seconds

到此,我们的Hbase集群搭建成功!

感谢您的支持,记得点赞和关注哦!


END


HBase集群部署


HBase集群部署
Hello,伙伴们
长按二维码就可以关注我们啦!




大家都在看

► 

► 

► 

► 

► 

►  

► 





以上是关于HBase集群部署的主要内容,如果未能解决你的问题,请参考以下文章

hbase集群部署与测试(2017)

HBase单机和集群版部署

HBase集群部署

HBase集群部署

Geomesa-Hbase集群部署

Hadoop分布式集群实战