Hbase2.2.7集群部署

环境说明

  • 准备三台服务器,分别为:bigdata141(作为Hbase主节点)、bigdata142、bigdata143
  • 确保hadoop和zookeeper集群都先启动好
  • 我这边的hadoop版本为3.2.0,zookeeper版本为3.5.8

下载安装包

下载链接:Index of /dist/hbase/2.2.7

下载完后,上传到其中一台服务器,我这边上传到 bigdata141 的 /data/soft/ 目录下

解压并配置

解压

复制代码
[root@bigdata141 soft]# tar -zxvf hbase-2.2.7-bin.tar.gz 
[root@bigdata141 soft]# ll
drwxr-xr-x. 6 root  root        170 Nov 27 20:06 hbase-2.2.7
-rw-r--r--. 1 root  root  220793877 Nov 27 14:31 hbase-2.2.7-bin.tar.gz
[root@bigdata141 soft]# cd hbase-2.2.7/conf

配置

1、首先修改 hbase-env.sh,先复制备份,再修改

复制代码
[root@bigdata141 conf]# cp hbase-env.sh hbase-env.sh.bak
[root@bigdata141 conf]# vi hbase-env.sh

在文件末尾添加以下配置即可:注意 jdk 和 hadoop 的安装目录要换成自己的

复制代码
export JAVA_HOME=/data/soft/jdk1.8
export HADOOP_HOME=/data/soft/hadoop-3.2.0
export HBASE_MANAGES_ZK=false
export HBASE_LOG_DIR=/data/hbase/logs

2、接着修改 hbase-site.xml,先复制备份,再修改:

复制代码
[root@bigdata141 conf]# cp hbase-site.xml hbase-site.xml.bak
[root@bigdata141 conf]# vi hbase-site.xml

以下属性在文件中都能找到,修改属性值即可:

复制代码
<!--是否为分布式模式部署,true表示分布式部署-->
<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>
<!-- 本地文件系统tmp目录-->
<property>
    <name>hbase.tmp.dir</name>
    <value>/data/hbase/tmp</value>
</property>
<!-- 这个参数的值默认不变即可,默认就是false。在分布式情况下, 一定设置为false -->
<property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
</property>

然后再额外添加以下属性即可:注意有些属性值要换成自己的

复制代码
<!--设置HBase表数据,也就是HBase数据在hdfs上的存储根目录-->
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://bigdata141:9000/hbase</value>
</property>
<!--zookeeper集群的URL配置,多个host中间用逗号隔开-->
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>bigdata141,bigdata142,bigdata143</value>
</property>
<!--HBase在zookeeper上数据的根目录znode节点-->
<property>
    <name>zookeeper.znode.parent</name>
    <value>/hbase</value>
</property>
<!--设置zookeeper通信端口,不配置也可以,zookeeper默认就是2181-->
<property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
</property>

3、最后修改 reginservers 文件:

复制代码
[root@bigdata141 conf]# vi regionservers 

在该文件中添加Hbase从节点的主机名或IP,我这边添加主机名

复制代码
bigdata142
bigdata143

4、将配置好的安装包复制到其他节点:

复制代码
[root@bigdata141 soft]# scp -rq hbase-2.2.7/ bigdata142:/data/soft/
[root@bigdata141 soft]# scp -rq hbase-2.2.7/ bigdata143:/data/soft/

启动Hbase

启动Hbase前,先确认hadoop和zookeeper集群已经启动好,然后再启动Hbase:

复制代码
[root@bigdata141 hbase-2.2.7]# bin/start-hbase.sh 

查看各个节点hbase是否启动:主节点有HMaster进程,从节点有HRegionServer进程,部署完成

复制代码
[root@bigdata141 hbase-2.2.7]# jps -l
1987 org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode
4195 org.apache.zookeeper.server.quorum.QuorumPeerMain
6198 org.apache.hadoop.hbase.master.HMaster
1706 org.apache.hadoop.hdfs.server.namenode.NameNode
2253 org.apache.hadoop.yarn.server.resourcemanager.ResourceManager
6415 sun.tools.jps.Jps

[root@bigdata142 soft]# jps -l
4800 sun.tools.jps.Jps
4565 org.apache.hadoop.hbase.regionserver.HRegionServer
1544 org.apache.hadoop.hdfs.server.datanode.DataNode
1662 org.apache.hadoop.yarn.server.nodemanager.NodeManager
3071 org.apache.zookeeper.server.quorum.QuorumPeerMain

[root@bigdata143 soft]# jps -l
1537 org.apache.hadoop.hdfs.server.datanode.DataNode
4786 sun.tools.jps.Jps
1655 org.apache.hadoop.yarn.server.nodemanager.NodeManager
3067 org.apache.zookeeper.server.quorum.QuorumPeerMain
4527 org.apache.hadoop.hbase.regionserver.HRegionServer

通过 16010 端口访问web页面

停止Hbase

注意,停止顺序:Hbase--->Zookeeper--->Hadoop,

最好不要先停止zookeeper或者hadoop,

否则会有问题

复制代码
[root@bigdata141 hbase-2.2.7]# bin/stop-hbase.sh 
stopping hbase.................
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/data/soft/hadoop-3.2.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/data/soft/hbase-2.2.7/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
相关推荐
得物技术2 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子2 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1233 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能3 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel3 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_397574093 天前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
极光代码工作室3 天前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
秋名山码民3 天前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
m0_380167143 天前
面向开发者的Top10加密货币数据API(2026年最新)
大数据·人工智能·区块链