当前位置: 首页 > news >正文

Hbase的安装与配置

HBase安装与配置

前提是jdk,zookeeper,ssh都配置完成了

1 安装

官网地址:Index of /hbase

image-20251013102530693

image-20251013102743824

国内镜像:

# 从华为云镜像下载 HBase
wget https://repo.huaweicloud.com/apache/hbase/2.5.7/hbase-2.5.7-bin.tar.gz

image-20251013123218383

1.1 解压

解压到指定路径

tar -zxf hbase-2.5.7-bin.tar.gz -C /usr/local

1.2 切换到 /usr/local目录下,将文件重命名为hbase

cd /usr/local
mv hbase-2.5.7 hbase

1.3 配置环境变量

将HBase安装目录下的bin目录添加到系统的PATH环境变量中,这样不用切换到/usr/local/hbase目录下也可以启动HBase

vim ~/.bashrc

在.bashrc文件末尾输入以下配置信息,保存信息

export PATH=$PATH:/usr/local/hbase/bin

刷新文件使配置生效

source ~/.bashrc

2 配置HBase

先启动Zookeeper

zkServer.sh start

切换到HBase安装目录下的conf目录中

cd /usr/local/hbase/conf

2.1 配置单机模式

vim hbase-env.sh
  1. 配置hbase-env.sh
export JAVA_HOME=/opt/programs/jdk1.8.0_202
export HBASE_MANAGES_ZK=TRUE
  1. 配置hbase-site.xml

hbase.rootdir 的路径设置为 hdfs://ns/hbase

通过查看 Hadoop 的core-site.xml文件来确定fs.defaultFS的值,然后根据该值来设置hbase.rootdir

如果你的 Hadoop 没有配置高可用性(HA),且core-site.xmlfs.defaultFS的值为hdfs://localhost:9000,那么hbase.rootdir可以设置为hdfs://localhost:9000/hbase。其中/hbase是在 HDFS 上为 HBase 数据保留的目录,你也可以根据实际需求修改为其他目录,但需要确保该目录在 HDFS 上存在且 HBase 有写入权限。

如果你的 Hadoop 配置了高可用性(HA),则需要根据 HDFS 的命名服务名称来设置hbase.rootdir。假设 HDFS 的命名服务名称为ns,那么hbase.rootdir可以设置为hdfs://ns/hbase

<!-- 1. 配置 HBase 连接的 ZooKeeper 集群地址(你的 ZooKeeper 在哪几个节点,就写哪几个) -->
<!-- 若 ZooKeeper 只在 hadoop01 启动,就写 hadoop01:2181;若多节点,用逗号分隔 -->
<property><name>hbase.zookeeper.quorum</name><value>hadoop01</value>  <!-- 替换为你的 ZooKeeper 节点名,如 hadoop01,hadoop02 -->
</property><!-- 2. 配置 ZooKeeper 端口(默认 2181,与现有 ZooKeeper 一致) -->
<property><name>hbase.zookeeper.property.clientPort</name><value>2181</value>
</property><!-- 3. 禁用 HBase 自带的 ZooKeeper(关键:避免端口冲突) -->
<property><name>hbase.cluster.distributed</name><value>true</value>  <!-- true 表示分布式模式,禁用自带 ZooKeeper;单机模式也可设为 true -->
</property><!-- 4. (补充)配置 HBase 在 HDFS 上的存储路径(与你之前 Hadoop HA 命名服务一致) -->
<!-- 你的 Hadoop HA 命名服务是 ns,所以路径为 hdfs://ns/hbase -->
<property><name>hbase.rootdir</name><value>hdfs://ns/hbase</value>
</property>
  1. 启动HBase
cd /usr/local/hbase
bin/start-hbase.sh

​ 利用jps命令进行查询

注:

如果出现无效变量名在hbase-env.sh中添加

# 解决 Hadoop 3.x 与 HBase 2.x 的环境变量兼容问题
export HADOOP_HOME=/opt/programs/hadoop-3.2.4  # 你的 Hadoop 实际安装路径
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true  # 禁用 HBase 自动加载 Hadoop 类路径
export HBASE_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"  # 指定 Hadoop 原生库路径
  1. 关闭HBase
bin/stop-hbase.sh

2.2 配置伪分布模式

  1. 配置hbase-env.sh
export JAVA_HOME=/opt/programs/jdk1.8.0_202
export HBASE_CLASSPATH=/opt/programs/hadoop-3.3.6/etc/hadoop
export HBASE_MANAGES_ZK=true
  1. 配置hbase-site.xml

​ 地址和端口要根据自己的实际情况修改,我是在CentOS9下的workers文件里已经设置好了IP地址的映射关系

  <property><name>hbase.rootdir</name><value>hdfs://hadoop01:9000/hbase</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property>
  1. 启动HBase

​ 登录ssh(根据自己设置的更改登录名称)

ssh hadoop01

​ 切换至 /opt/programs/hadoop-3.3.6目录下,让HDFS处于运行状态(根据自己的实际hadoop目录进行调整)

cd /opt/programs/hadoop-3.3.6

​ 启动Hadoop

sbin/start-dfs.sh

​ 切换到hbase目录下

cd /usr/local/hbase 

​ 启动HBase

bin/start-hbase.sh

​ 启动成功后通过jps查看进程

image-20251013123313805

  1. 关闭HBase
bin/stop-hbase.sh

​ 关闭Hadoop

cd /opt/programs/hadoop-3.3.6
sbin/stop-dfs.sh

HBase Shell操作

先启动zookeeper(所有节点都要启动)

zkServer.sh start

启动HBase

start-hbase.sh

关闭HBase

stop-hbase.sh

​ 注:如果关闭HBase时出现很多(...)可以使用如下方法快速关闭

hbase-daemons.sh stop master
stop-hbase.sh

使用HBase Shell可以以命令行的方式与HBase交互。

/usr/local/hbase/bin/hbase shell

如下图所示即为启动成功:

可以用list和atatus或者创建一个test表测试一下是否能成功

image-20251015174214005

http://www.hskmm.com/?act=detail&tid=31799

相关文章:

  • 【Azure App Service】App Service是否支持PHP的版本选择呢?
  • OAuth/OpenID Connect 渗透测试完全指南
  • Problem K. 置换环(The ICPC online 2025)思路解析 - tsunchi
  • Go 语言和 Tesseract OCR 识别英文数字验证码
  • Markdown转换为Word:Pandoc模板使用指南 - 实践
  • 2025年10月小程序开发公司最新推荐排行榜,小程序定制开发,电商小程序开发,预订服务小程序开发,活动报名小程序开发!
  • 复习CSharp
  • Rust 和 Tesseract OCR 实现英文数字验证码识别
  • 数据结构-循环队列
  • C语言学习——键盘录入
  • 2025年10月软件开发公司最新推荐,软件定制开发,crm系统定制软件开发,管理系统软件开发,物联网软件开发公司推荐!
  • C语言学习——运算符的学习
  • 第十五篇
  • 数据结构-双向循环链表
  • 数据结构-顺序栈
  • Erlang 的英文数字验证码识别系统设计与实现
  • 使用Django从零开始构建一个个人博客系统 - 实践
  • 2025年磨床厂家TOP企业品牌推荐排行榜,平面磨床,外圆磨床,数控平面磨床,数控外圆磨床,7163平面磨床推荐这十家公司!
  • cifar10
  • [LangChain] 02. 模型接口
  • 摄像头调试
  • C语言学习——字符串数据类型
  • 感知节点@4@ ESP32+arduino+ 第二个程序 LED灯显示
  • WebGL学习及项目实战(第02期:绘制一个点)
  • 2025 年 10 月国内加工中心制造商最新推荐排行榜:涵盖立式、卧式、龙门及多规格型号!
  • display ip routing-table protocol ospf 概念及题目 - 详解
  • C语言学习——小数数据类型
  • 高敏感人应对焦虑
  • Palantir本体论以及对智能体建设的价值与意义
  • 2025 年执业兽医资格证备考服务机构推荐榜,执业兽医资格证培训机构/执兽考试机构/考试辅导机构获得行业推荐