HBase的安装配置

hbase更新换代,已经不需要配置zookeeper,已有内置zookeeper供使用者使用。但内置zookeeper往往容易出错且不好修复,因此我将介绍两种方法1、使用内置zookeeper2、额外配置zookeeper

一、使用内置zookeeper

1.解压安装包

tar -zxvf hbase-2.4.8

2.配置文件

以下配置文件均存放在

cd hbase-2.4.8/conf/

hbase.env.sh

export JAVA_HOME=/home/H21/jdk1.8.0_131
export HBASE_CLASSPATH=/home/H21/hadoop-3.1.3/etc/hadoop

请各位自行修改路径(分别为jdk和hadoop的路径)
可以增加一项配置

export HBASE_MANAGES_ZK=true

该项配置表明启动hbase试用其默认的内置zookeeper,若不适用请改为false

hbase-site.xml

添加如下配置
添加在<configuration>和</configuration>之间

  <!-- 指定hbase在HDFS上存储的路径 -->
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://westgisB082:8020/hbase</value>
  </property>
  <!-- 指定zookeeper的地址,多个用“,”分割 -->
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>westgisB082,westgisb083,westgisB084,westgisB085,westgisB086:2181</value>
  </property>
  <!--指定hbase管理页面-->
  <property>
    <name>hbase.master.info.port</name>
    <value>60010</value>
  </property>

请根据自己的实际情况更改地址

regionservers

--从节点主机名或IP地址
10.103.105.83
10.103.105.84
10.103.105.85
10.103.105.86

3.配置环境变量

vi .bashrc

添加如下内容

#HBASE
export HBASE_HOME=/home/H21/hbase-2.4.8
export PATH=$PATH:$HBASE_HOME/bin

并source

4.传送文件至从节点

scp -r hbase-2.4.8 H21@10.103.105.83:/home/H21

传至每个从节点,此处也可使用脚本,后续会有讲述脚本的使用方法

5.启动

先启动hdfs再启动hbase

$HADOOP_HOME/sbin/start-dfs.sh
$HBASE_HOME/bin/start-hbase.sh

查看hbase监控界面,如下图所示

屏幕截图 2023-10-10 142121.png

输入

hbase shell

进入hbase并尝试建表

create 'mytable','info'

出现如下图所示的界面即为正确

屏幕截图 2023-10-10 142256.png

二、额外配置zookeeper

1.下载并解压安装包

tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz

为了方便我们重命名

mv apache-zookeeper-3.7.1-bin.tar.g zookeeper

重命名后可以根据自己的需求删除apache-zookeeper-3.7.1-bin

2.配置

创建文件夹

在zookeeper目录下

mkdir data
mkdir logs

修改配置文件

在zookeeper/conf目录下

cp zoo_sample.cfg zoo.cfg

重命名
然后进入zoo.cfg
将其中配置改为

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/home/H21/zookeeper/data
dataLogDir=/home/H21/zookeeper/logs
# the port at which the clients will connect
clientPort=2181
server.0=10.103.105.82:2888:3888
server.1=10.103.105.83:2888:3888
server.2=10.103.105.84:2888:3888
server.3=10.103.105.85:2888:3888
server.4=10.103.105.86:2888:3888
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the 
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

## Metrics Providers
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true

配置myid

cd zookeeper
cd data
vi myid

将82中myid中的内容改为0,83节点改为1,以此类推,一定要每个节点都对应。

拷贝至从节点

以上配置从节点应完全一致,尤其注意myid中的数据是否与节点一一对应!

3.配置环境变量并检验zookeeper

在.bashrc中添加如下内容

export PATH=$PATH:/home/H21/zookeeper/bin

并source
每个节点上都启动zookeeper检验

#在zookeeper/bin下执行
./zkServer.sh start

运行结果如下即成功!

屏幕截图 2023-10-10 152020.png

4.启动hbase

在启动之前,我们需要修改hbase中hbase-env.sh中

export HBASE_MANAGES_ZK=false

修改原因前文已提到,此处不再赘述
(记得发给从节点
!!!在启动hbase前请先在每个节点都启动zookeeper
然后再启动hbase,检查监控界面,以及进入hbase shell检验

5.报错小结

如在使用内置zookeeper出现如下报错

屏幕截图 2023-10-10 152823.png

建议自己配置一个zookeeper使用,也就是第二种配置
若是第二种配置仍出现该错误,请根据以下步骤处理
1.关闭hbase
2.执行

hdfs dfs -rm -r /hbase

3.进入zookeeper/bin执行

zkCli.sh -server localhost:2181

进入zookeeper
4.执行

deleteall /hbase

5.重启即可

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容