HBase1.4.13完全分布式安装
版本选择
首先check版本要求!否则后续会遇到难以预料的“惊喜”。以下截图为2020年9月信息,可能随时更新,最新信息自行查询官网标准。
JDK版本:
Hadoop版本:
本机已安装Hadoop2.7.7&JDK1.8,于是选择HBase-1.4.x进行安装。从镜像源中下载hbase-1.4.13-bin.tar.gz。
HBase1.4.13安装
先用scp
从网关把压缩包传到Master服务器上:
1 | scp hbase-1.4.13-bin.tar.gz lpj@cpu-node0:/home/lpj/ |
解压并重命名:
1 | tar -zxf hbase-1.4.13-bin.tar.gz -C /home/lpj/ |
配置环境变量,将hbase下的bin目录添加到path中,这样,启动hbase就无需到/usr/local/hbase目录下,大大地方便了hbase的使用。编辑~/.bashrc文件,先前在安装Hadoop时已经引入过PATH,直接在export PATH这行追加/home/lpj/hbase1.4/bin,这里的“:”是分隔符:
1 | export PATH=$PATH:/home/lpj/hadoop2.7/bin:/home/lpj/hadoop2.7/sbin:/home/lpj/hbase1.4/bin |
编辑完成后,用source ~/.bashrc
使上述配置在当前终端立即生效。用hbase version
查看HBase版本,确定HBase安装成功:
1 | [lpj@cpu-node0 ~]$ hbase version |
HBase配置
配置hbase-env.sh
修改conf文件夹里的hbase-env.sh文件:
1 | The java implementation to use. Java 1.8+ required. |
配置hbase-site.xml
修改conf文件夹里的hbase-site.xml文件:
1 | <configuration> |
注意:
- hbase.rootdir值是根据%HADOOP_HOME%/etc/hadoop下配置文件core-site.xml中fs.default.name的值加上/hbase.
- hbase.zookeeper.property.dataDir的值是ZooKeeper的zoo.cfg文件里的dataDir的值,hbase.zookeeper.property.clientPort的值是同一个文件中clientPort的值。
- hbase.zookeeper.peerport和hbase.zookeeper.leaderport分别是zoo.cfg里server.x的ip地址后面的两个端口,如果每个节点设置得不一样的话,hbase-site.xml复制过去之后记得修改。
配置regionservers
在conf/regionservers中把从节点写进去:
1 | cpu-node3 |
配置backup-masters
新建一个backup-masters文件并写入备份节点:
1 | cpu-node0 |
分发并同步安装包
1 | scp -r hbase1.4 lpj@cpu-node3:/home/lpj/ |
Start & Check
在Master节点上运行启动脚本start-hbase.sh
:
1 | [lpj@cpu-node0 ~]$ start-hbase.sh |
然后用jps
分别在主从节点上检查,如果Master上有HMaster
、Slave上有HRegionServer
即为启动成功:
1 | [lpj@cpu-node0 ~]$ jps |
如何区分启动的ZooKeeper是HBase自带的还是外部的:若jps
中是QuorumPeerMain
则为外部自行安装的,HQuorumPeerMain
则为HBase自带的。
HBase Shell实践
用hbase shell
进入shell界面:
1 | [lpj@cpu-node0 ~]$ hbase shell |
简单操作一下:
1 | hbase(main):001:0> list |
Reference
- 林子雨HBase教程(不过主要讲了单机和伪分布模式)
- CSDN博文:Hadoop+hbase+zookeeper完全分布式搭建
- Apache HBase官方文档(特别是7.Default Configuration和8.Example Configurations,参考意义较大)
评论
TwikooWaline