概览
1.HBase简介及规划
2.上传解压
3.配置hbase集群
4.拷贝hbase到其他节点
5.同步时间
6.启动所有hbase
7.查看测试
首先HBase是基于Hadoop 3节点高可用集群和Zookeeper集群的,所以先将这两个搭建完毕
1.HBase简介及规划
简介
HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。
HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。
与FUJITSU Cliq等商用大数据产品不同,HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据;Google Bigtable利用Chubby作为协同服务,HBase利用Zookeeper作为对应。
规划
2.上传解压
准备:
1.CentOS7.0
2.hbase-2.0.0
3.XShell 5
4.Xftp 5
使用Xshell工具(官网下载免费版本即可)连接虚拟机
在主节点的虚拟机的usr下创建一个hbase文件夹作为压缩包存放路径和安装路径
1 | [root@master ~]# cd /usr/ |
利用Xftp将HBase压缩包上传到hbase文件夹下
1 | [root@master usr]# cd hbase/ |
然后解压
1 | [root@master hbase]# tar -zxf hbase-2.0.0-bin.tar.gz |
3.配置hbase集群
配置hbase集群,要修改4个文件 , copy两个文件以及新建一个文件(首先zk集群已经安装好了)
3.1 .把hadoop的hdfs-site.xml和core-site.xml 拷贝到hbase安装目录的conf下
1 | [root@master hbase]# cd hbase-2.0.0/conf/ |
3.2 .修改hbase-env.sh
1 | [root@master conf]# vim hbase-env.sh |
将28行的
改为自己的jdk路径
1 | export JAVA_HOME=/usr/java/jdk1.8.0_141 |
再将125行的
改为
1 | #告诉hbase使用外部的zk |
保存退出
3.3 .修改hbase-site.xml
1 | [root@master conf]# vim hbase-site.xml |
在configuration中添加
1 | <!-- 指定hbase在HDFS上存储的路径 --> |
esc+:wq
保存退出
3.4 .修改regionservers
1 | [root@master conf]# vim regionservers |
将其改为你的集群的ip映射名
1 | #localhost |
3.5 .新建backup-masters(高可用)
1 | [root@master conf]# touch backup-masters |
在其中写入你规划处于backup状态的hbase,因为你启动的hbase节点如果只有一台,而当其宕机的时候整个hbase集群都会变得不可用,所以我们设置一个或多个备用节点
1 | slave1 |
3.6 .配置profile环境变量1
[root@master conf]# vim /etc/profile
在最后添加
1 | export HBASE_HOME=/usr/hbase/hbase-2.0.0 |
保存退出,刷新
1 | [root@master conf]# source /etc/profile |
4.拷贝hbase到其他节点
1 | [root@master conf]# scp -r /usr/hbase/ root@slave1:/usr/ |
5.同步时间
如果你集群中所有节点机器的时间相同可以跳过此步骤
在所有节点机器上查看时间
1 | [root@master conf]# date |
如果不同就执行此操作
1 | centos 安装 ntpdate 并同步时间 |
6.启动所有hbase
启动Zookeeper集群
启动Hadoop集群
启动hbase,在主节点上运行: start-hbase.sh
1 | [root@master conf]# start-hbase.sh |
jps
查看
其中你的主节点和备用节点上会多出两个进程 HMaster 和HRegionServer
7.查看测试
通过浏览器访问hbase管理页面 ip(主节点和备用节点):60010
主节点是Master
备用的是backup状态
进入shell页面
1 | [root@master bin]# hbase shell |
list查看表1
2
3
4
5
6hbase(main):001:0> list
TABLE
0 row(s)
Took 1.1337 seconds
=> []
hbase(main):002:0>
其他shell命令参考hbase的基本shell操作
HBase集群搭建完成,接下来会介绍下Java代码实现对HBase的基础操作