Hbase使用独立部署的zookeeper替换内置zookeeper

Hbase使用独立的zookeeper,不使用内置zookepper

安装zookeeper

下载zookeeper
下载地址 https://dlcdn.apache.org/zookeeper/
将下载的内容复制到服务器中并解压,我的服务器安装包在/opt/firma/下,安装的内容在/opt/app/下

tar -zxvf apache-zookeeper-3.7.2-bin.tar.gz -C ../app/

复制zookeeper配置文件并修改名称

[root@test app] cd /opt/app/apache-zookeeper-3.7.2-bin/conf/
[root@test conf] cp ./zoo_sample.cfg  ./zoo.cfg

新建两个文件夹

mkdir zk_data
mkdir zk_logs

编辑配置文件

vim zoo.cfg

在这里插入图片描述
修改环境变量,增加配置

# 配置环境变量
 vim /etc/profile
 
#增加配置
export ZOOKEEPER_HOME=/opt/app/apache-zookeeper-3.7.2-bin #存放位置可以更改
export PATH=$PATH:$ZOOKEEPER_HOME/bin

#使配置生效
source /etc/profile

进入/bin目录,启动zookeeper

[root@test bin]# ./zkServer.sh start

是否启动成功(jps查看 有QuorumPeerMain则表示成功)

[root@test bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/app/apache-zookeeper-3.7.2-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@test bin]# jps
3507 QuorumPeerMain
1751 NameNode
3543 Jps
1871 DataNode
2063 SecondaryNameNode

Hbase配置zookeeper

更改hbase-env.sh文件

[root@test app]# vi ./hbase-2.5.8/conf/hbase-env.sh

#配置Hbase是否使用内置的zookeeper
export HBASE_MANAGES_ZK=false

更改

vi ./hbase-2.5.8/conf/hbase-site.xml

#对应的配置
<configuration>
        <!-- false是单机模式,true是分布式模式。-->
        <!-- 分布式是指hbase和zookeeper运行在不同的jvm,即hbase用外部的zookeeper -->
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <!-- hbase存放的位置,一般hbase数据存在hdfs,这里的hdfs可以是单机版的-->
         <property>
                <name>hbase.rootdir</name>
                <!-- 这里的hdfs地址要跟hadoop > core > sitehdfs地址一致 -->
                <value>hdfs://test:8020/hbase</value>
        </property>
        <!-- 不加这个启动start-hbase.sh会报错 -->
        <property>
                <name>hbase.unsafe.stream.capability.enforce</name>
                <value>false</value>
        </property>

         <!-- zk主机地址和端口采用默认的,不用配置  -->
         <!-- 默认会根据regionserver文件去找,默认是localhost:2181-->
        <property>
             <name>hbase.zookeeper.quorum</name>
             <value>test:2181</value>
        </property>
</configuration>

然后启动Hbase

# 启动Habse
[root@test app]# ./hbase-2.5.8/bin/start-hbase.sh
running master, logging to /opt/app/hbase-2.5.8/logs/hbase-root-master-test.out
: running regionserver, logging to /opt/app/hbase-2.5.8/logs/hbase-root-regionserver-test.out
# 查看是否启动成功
[root@test app]# jps
4416 Jps
3507 QuorumPeerMain
4036 HRegionServer
1751 NameNode
3912 HMaster
1871 DataNode
2063 SecondaryNameNode
# 测试是否正常运行
[root@test app]# 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.8, r37444de6531b1bdabf2e445c83d0268ab1a6f919, Thu Feb 29 15:37:32 PST 2024
Took 0.0136 seconds
# 查询所有的表
hbase:001:0> list
TABLE
0 row(s)
Took 0.6421 seconds
=> []

结语:因为我在SpringBoot项目集成Hbase时,使用内置的zookeepers时存在连接不上zookeeper的情况,所以我单独部署了zookeeper,替换之后连接没有问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值