news 2026/5/22 1:15:03

HBase 分布式集群部署实战:从解压到启动的完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HBase 分布式集群部署实战:从解压到启动的完整指南

HBase 分布式集群部署实战:从解压到启动的完整指南

文章目录

    • HBase 分布式集群部署实战:从解压到启动的完整指南
      • 步骤一:解压安装文件
      • 步骤二:配置环境变量
      • 步骤三:修改配置文件(master节点)
      • 步骤四:集群分发
      • 步骤五:HBase 集群启动
      • 视频版本部署教程

在开始部署之前,先通过下面的流程图了解 HBase 分布式集群搭建的整体步骤:

解压安装文件

配置环境变量

修改配置文件

集群分发

启动集群

验证部署

步骤一:解压安装文件

使用 Xftp 将 HBase 压缩包上传到/opt/software目录下

[root@master ~]# cd /opt/software/[root@master software]# tar -zxvf hbase-1.2.6-bin.tar.gz -C /opt/module/ # 解压到统一安装目录[root@master software]# cd ~[root@master ~]#mv /opt/module /hbase-1.2.6 /opt/module/hbase

步骤二:配置环境变量

(1)编辑/etc/profile文件。

[root@master ~]# vi /etc/profile

将以下配置信息添加到/etc/profile文件的末尾,将 HBase 的 bin 目录添加到系统环境变量 PATH 中:

exportHBASE_HOME=/opt/module/hbaseexportPATH=$PATH:$HBASE_HOME/bin

(2)将 master 中的配置文件用 scp 分别分发到 slave1 和 slave2 上,再执行source /etc/profile命令使其生效。

[root@master ~]# scp -r /etc/profile root@slave1:/etc/[root@master ~]# scp -r /etc/profile root@slave2:/etc/

(3)执行source /etc/profile命令,使配置的环境变量在系统全局范围生效。

[root@master ~]# source /etc/profile[root@slave1~]# source /etc/profile[root@slave2 ~]# source /etc/profile

步骤三:修改配置文件(master节点)

conf下文件修改

(1)hbase-env.sh

HBase的配置文件放置在安装目录下的conf文件夹内,切换到该目录首先修改HBase环境配置文件 hbase-env.sh,设置 JAVA_HOME 为自己安装的版本。将以下配置信息添加到hbase-env.sh的末尾。

[root@master ~]# cd /opt/module/hbase/conf[root@master conf]# vi hbase-env.shexportJAVA_HOME=/opt/module/javaexportHADOOP_HOME=/opt/module/hadoopexportHADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoopexportHBASE_MANAGES_ZK=falseexportHBASE_LOG_DIR=${HBASE_HOME}/logsexportHBASE_PID_DIR=${HBASE_HOME}/pid

JAVA_HOME为java程序所在位置,HBASE_MANAGES_ZK表示是否使用HBase自带的zookeeper环境,如果使用自己安装的zookeeper,此处可以设置为false(默认为true),即不使用hbase自带的zookeeper。HADOOP_CONF_DIR 是Hadoop配置文件的地址。HBASE_LOG_DIR与HBASE_PID_DIR分别为日志与pid文件输出目录。
注释这两行

#export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"#export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"

(2)hbase-site.xml

修改配置文件 hbase-site.xml,添加相关信息。将以下配置信息添加到hbase-site.xml文件与之间。

<property><name>hbase.rootdir</name><value>hdfs://master:8020/hbase</value></property><property><name>hbase.master.info.port</name><value>16010</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.tmp.dir</name><value>/opt/module/hbase/tmp</value></property><property><name>hbase.zookeeper.property.clientPort</name><value>2181</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>/opt/module/hbase/tmp/zookeeper-hbase</value></property><property><name>hbase.zookeeper.quorum</name><value>master,slave1,slave2</value></property><property><name>zookeeper.session.timeout</name><value>120000</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property>

各配置项的含义整理如下表:

属性名说明
hbase.rootdirhdfs://master:8020/hbase指定 HBase 在 HDFS 上的存储目录
hbase.master.info.port16010HBase Master 的 Web UI 访问端口
hbase.cluster.distributedtrue开启 HBase 分布式模式
hbase.tmp.dir/opt/module/hbase/tmpHBase 本地临时文件路径,类似 Hadoop 的hadoop.tmp.dir
hbase.zookeeper.property.clientPort2181ZooKeeper 的连接端口
hbase.zookeeper.property.dataDir/opt/module/hbase/tmp/zookeeper-hbaseHBase 在 ZooKeeper 上存储数据的目录
hbase.zookeeper.quorummaster,slave1,slave2ZooKeeper 集群节点列表
zookeeper.session.timeout120000RegionServer 与 ZooKeeper 间的连接超时时间(毫秒)
hbase.unsafe.stream.capability.enforcefalse是否强制检查流能力(设为 false 可避免某些兼容性问题)

(3)regionservers

修改 regionservers文件,删除localhost,添加以下内容。

[root@master conf]# vi regionserversslave1 slave2

(4)复制配置文件

为了让Hbase读取到hadoop的配置,将core-site.xml和hdfs-site.xml两个文件拷贝到 $HBASE_HOME/conf/ 目录下。

[root@master conf]# cp /opt/module/hadoop/etc/hadoop/core-site.xml /opt/module/hbase/conf/[root@master conf]# cp /opt/module/hadoop/etc/hadoop/hdfs-site.xml /opt/module/hbase/conf/

步骤四:集群分发

将master节点配置好的HBase安装包分发给slave1,slave2节点。

[root@master conf]# cd# 从master远程拷贝hbase文件到slave1节点[root@master ~]# scp -r /opt/module/hbase root@slave1: /opt/module# 从master远程拷贝hbase文件到slave2节点[root@master ~]# scp -r /opt/module/hbase root@slave2: /opt/module

步骤五:HBase 集群启动

先在 master 上使用start-all.sh启动 Hadoop 集群,再在各个节点上启动 ZooKeeper,最后在 master 上使用start-hbase.sh命令启动 HBase。

[root@master ~]$ start-all.sh[root@master ~]# zkServer.sh start[root@slave1 ~]# zkServer.sh start[root@slave2 ~]# zkServer.sh start[root@master ~]$ start-hbase.sh

用webUI查看集群,特别强调hbase2.0的端口是16010。

图 HBase浏览器界面

5、查看集群

(1)jps查看

master上有HMaster,slave1和slave2上有HRegionserver。QuorumPeerMain是zookeeper的守护进程

[root@master conf]# jps13296HMaster2435NameNode13667Jps3028NodeManager3316QuorumPeerMain12292JobHistoryServer1943ResourceManager2601DataNode12809HRegionServer[root@slave1 ~]# jps1863DataNode11383Jps11080HRegionServer1930NodeManager10942QuorumPeerMain

(2)web端查看
192.168.11.50:16010

视频版本部署教程

大数据必学!HBase分布式数据库手把手搭建教程(避坑指南)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/22 1:12:05

【芯片测试】:自定义波形与条件波形

第四篇&#xff1a;进阶篇&#xff08;上&#xff09;—— 用户自定义波形与条件波形 系列&#xff1a;《VCDSTIL 实战&#xff1a;从仿真波形到 ATE 测试向量》第 4 篇&#xff08;共 5 篇&#xff09; 前言 前三篇介绍的都是 VCDSTIL 的"自动提取"模式&#xff1a…

作者头像 李华
网站建设 2026/5/22 1:08:05

树莓派4B跑ovos+在线stt模型

这年头说实在有了peering coding之后&#xff0c;写这些都是笑话。今天算记一个互动类程序的常识吧。简言之&#xff0c;程序里面一定要带多线程&#xff0c;这是一个基本思路。以下代码由可可爱爱花了钱的opus 4.7写的flask本地小服务端转送语音请求去googleapis的speech-to-t…

作者头像 李华
网站建设 2026/5/22 1:05:11

1987年6月27日下午13-15点出生性格、运势和命运

1987年6月17日&#xff0c;下午15点到17点之间&#xff0c;正值盛夏时节&#xff0c;阳光炽烈而漫长。这一天出生的孩子&#xff0c;是中国改革开放后“黄金十年”中诞生的又一批弄潮儿。他们的成长轨迹&#xff0c;与全球化浪潮的涌入、市场经济的深化以及互联网的萌芽几乎同步…

作者头像 李华
网站建设 2026/5/22 1:04:00

如何10倍提升英语学习效率:词达人自动化助手终极教程

如何10倍提升英语学习效率&#xff1a;词达人自动化助手终极教程 【免费下载链接】cdr 微信词达人&#xff0c;高正确率&#xff0c;高效简洁。支持班级任务及自选任务 项目地址: https://gitcode.com/gh_mirrors/cd/cdr 核心关键词&#xff1a;词达人自动化助手、Pytho…

作者头像 李华
网站建设 2026/5/22 0:49:22

14. 声明文件(Declaration Files)

14. 声明文件&#xff08;Declaration Files&#xff09; 1. 概述 声明文件&#xff08;.d.ts 文件&#xff09;用于描述 JavaScript 库的类型信息&#xff0c;让 TypeScript 能够理解和使用纯 JavaScript 编写的代码。声明文件只包含类型定义&#xff0c;不包含实现代码。 ┌─…

作者头像 李华