hbase2.5.0集群搭建

Published on 2022-09-29 13:49 in 分类: 软件 with 狂盗一枝梅
分类: 软件

1、安装前准备

2、下载安装包

官网地址:https://hbase.apache.org/downloads.html

历史版本下载:https://archive.apache.org/dist/hbase/

下载安装包:https://archive.apache.org/dist/hbase/2.5.0/hbase-2.5.0-bin.tar.gz

下载后上传到hadoop01虚拟机上的/usr/local文件夹并使用tar -zxvf hbase-2.5.0-bin.tar.gz 解压,然后使用命令ln -s hbase-2.5.0 hbase建立软链接。

3、环境变量配置

[root@hadoop01 local]# vim /etc/profile
export HBASE_HOME=/usr/local/hbase
export PATH=$HBASE_HOME/bin:$PATH

然后退出bash,重新登录;最后将此环境变量同步到其它两台虚拟机。

4、配置文件修改

进入${HBASE_HOME}/conf文件夹

4.1 hbase-env.sh

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

#注释放开
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
# 配置JDK安装位置
export JAVA_HOME=/usr/local/java
# 不使用内置的zookeeper服务
export HBASE_MANAGES_ZK=false
#export HBASE_CLASSPATH=/usr/local/hadoop/etc/hadoop
export JAVA_CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

4.2 hbase-site.xml

<configuration>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.tmp.dir</name>
    <value>./tmp</value>
  </property>
  <property>
        <!-- 指定 hbase 在 HDFS 上的存储位置 -->
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop01:9000/hbase</value>
    </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
  <property>
    <!-- 指定 zookeeper 的地址-->
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value>
  </property>
</configuration>

4.3 regionservers

hadoop01
hadoop02
hadoop03

4.4 backup-masters

hadoop02

backup-masters 这个文件是不存在的,需要新建,主要用来指明备用的 master 节点,可以是多个,这里我们以 1 个为例。

5、安装包分发

[root@hadoop01 conf]# scp -r /usr/local/hbase-2.5.0 hadoop02:/usr/local/
[root@hadoop01 conf]# scp -r /usr/local/hbase-2.5.0 hadoop03:/usr/local/

之后分别进入hadoop02、hadoop03,建立软链接

ln -s /usr/local/hbase-2.5.0 hbase

6、hbase集群构建

6.1 启动

进入 hadoop01 的 ${HBASE_HOME}/bin,使用以下命令启动 HBase 集群。执行此命令后,会在 hadoop001 上启动 Master 服务,在 hadoop002 上启动备用 Master 服务,在 regionservers 文件中配置的所有节点启动 region server 服务。

start-hbase.sh

6.2 验证

启动完成之后,在三台机器上分别执行jps命令

[root@hadoop01 conf]# jps
2433 ResourceManager
4753 HRegionServer
1826 NameNode
2579 NodeManager
8680 Jps
1532 QuorumPeerMain
1981 DataNode
4605 HMaster
[root@hadoop02 sbin]# jps
2980 HRegionServer
5575 Jps
1544 QuorumPeerMain
1772 SecondaryNameNode
1693 DataNode
1917 NodeManager
3102 HMaster
[root@hadoop03 bin]# jps
1792 NodeManager
2368 HRegionServer
4001 Jps
1510 QuorumPeerMain
1654 DataNode

可以看到,每台机器上都运行着HRegionServer服务,hadoop01和hadoop02还额外运行着HMaster服务,符合预期,接下来打开web管理页面进行验证,打开浏览器,输入地址(hadoop01):http://10.182.71.136:16010/

image-20220929134126707

最后打开命令行,新建一个表试试效果

[root@hadoop01 ~]# hbase shell
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.5.0, r2ecd8bd6d615ca49bfb329b3c0c126c80846d4ab, Tue Aug 23 15:58:57 UTC 2022
Took 0.0026 seconds                     
hbase:001:0> create 'sogoulogs','info'

成功之后,去web页面查看

image-20220929134559298

可以看到sogoulogs表已经创建成功

service脚本

vim /etc/init.d/hbase 
#!/bin/bash
#chkconfig:2345 20 90
#description:hbase
#processname:hbase
export JAVA_HOME=//usr/java/jdk
case $1 in
        start) su root /usr/local/hbase/bin/start-hbase.sh;;
        stop) su root /usr/local/hbase/bin/stop-hbase.sh;;
        *) echo "require start|stop" ;;
esac

#hadoop #hbase #zookeeper
目录