HBase 的安装与部署

目录

  • [1 启动 zookeeper](#1 启动 zookeeper)
  • [2 启动 Hadoop](#2 启动 Hadoop)
  • [3 HBase 的安装与部署](#3 HBase 的安装与部署)
  • [4 HBase 高可用](#4 HBase 高可用)

1 启动 zookeeper

powershell 复制代码
[huwei@hadoop101 ~]$ bin/zk_cluster.sh start

2 启动 Hadoop

powershell 复制代码
[huwei@hadoop101 ~]$ bin/hdp_cluster.sh start

3 HBase 的安装与部署

(1)将 hbase-2.0.5-bin.tar.gz上传至 /opt/software

(2)解压

powershell 复制代码
[huwei@hadoop101 software]$ tar -zxvf hbase-2.0.5-bin.tar.gz -C /opt/module

(3)配置环境变量

powershell 复制代码
[huwei@hadoop101 software]$ sudo vim /etc/profile.d/my_env.sh

添加

复制代码
# HBASE_HOME
export HBASE_HOME=/opt/module/hbase-2.0.5
export PATH=$PATH:$HBASE_HOME/bin

(4)使环境变量生效

powershell 复制代码
[huwei@hadoop101 software]$ source /etc/profile

(5)修改配置文件

hbase-env.sh

powershell 复制代码
[huwei@hadoop101 software]$ cd /opt/module/hbase-2.0.5/conf/
[huwei@hadoop101 conf]$ vim hbase-env.sh

hbase-site.xml

powershell 复制代码
[huwei@hadoop101 conf]$ vim hbase-site.xml

添加

xml 复制代码
<configuration>
 <property>
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop101:9820/hbase</value>
    </property>

    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>

    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>hadoop101,hadoop102,hadoop103</value>
    </property>
</configuration>

NameNode负责管理文件系统的命名空间和元数据信息, 9820 端口(hadoop3)则是客户端与NameNode进行通信交互的端口。在ZooKeeper集群中,2181端口通常被用作客户端与ZooKeeper集群进行通信的端口

regionservers

powershell 复制代码
[huwei@hadoop101 conf]$ vim regionservers

修改为

复制代码
hadoop101
hadoop102
hadoop103

(6)分发集群配置

powershell 复制代码
[huwei@hadoop101 module]$ xsync hbase-2.0.5/

分发环境变量

powershell 复制代码
[huwei@hadoop101 module]$ scp /etc/profile.d/my_env.sh root@hadoop102:/etc/profile.d/
[huwei@hadoop101 module]$ scp /etc/profile.d/my_env.sh root@hadoop103:/etc/profile.d/

(7)HBase 服务的启动

群起集群(前提是要保证 Zookeeper 和 Hadoop 已经启动)

powershell 复制代码
[huwei@hadoop101 hbase-2.0.5]$ bin/start-hbase.sh

这里出现了日志冲突问题,SLF4J在HBase和Hadoop的库中都有绑定。我们只需删除HBase中的SLF4J,使用Hadoop中的SLF4J即可。(集群中的机器都删)

在那台机器上启动集群,哪个机器就是 master 。

停止集群

powershell 复制代码
[huwei@hadoop101 hbase-2.0.5]$ bin/stop-hbase.sh

(8)查看 HBase 页面

启动成功后,可以通过 "host:port" 的方式来访问 HBase 管理页面,例如:

http://hadoop101:16010

4 HBase 高可用

在 HBase 中 HMaster 负责监控 HRegionServer 的生命周期,均衡 RegionServer 的负载,如果 HMaster 挂掉了,那么整个 HBase 集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。所以 HBase 支持对 HMaster 的高可用配置。

(1)关闭 HBase 集群(如果没有开启则跳过此步)

powershell 复制代码
[huwei@hadoop101 hbase-2.0.5]$ bin/stop-hbase.sh

(2)在 conf 目录下创建 backup-masters 文件

powershell 复制代码
[huwei@hadoop101 hbase-2.0.5]$ touch conf/backup-masters

backup-masters 文件名不能随意写

(3)在 backup-masters 文件中配置高可用 HMaster 节点

powershell 复制代码
[huwei@hadoop101 conf]$ vim backup-masters

添加(在 hadoop102 上启动备份 HMaster )

复制代码
hadoop102

(4)将 conf 目录下的 backup-masters 分发到其他节点

powershell 复制代码
[huwei@hadoop101 conf]$ xsync backup-masters

(5)再次启动 HBase 就会发现 hadoop102 也会启动一个 HMaster 进程

查看 HBase 页面


相关推荐
ccddsdsdfsdf5 小时前
DBeaver怎么链接mongoDB
数据库·mongodb
丷丩6 小时前
Postgresql基础实践教程(十一)各种Join
数据库·postgresql·join
星夜夏空996 小时前
FreeRTOS学习(4)——内存映射
数据库·学习·mongodb
TheRouter7 小时前
AI Agent 记忆体系建设实战:短期、长期与工作记忆的工程实现
数据库·人工智能·oracle
Omics Pro7 小时前
首个!外源天然产物综合性代谢图谱
数据库·人工智能·算法·机器学习·r语言
JAVA面经实录9178 小时前
Hibernate面试题库
数据库·oracle·hibernate
迷枫7128 小时前
DM8 目录结构与常用排查入口梳理
服务器·数据库
Mr.Daozhi10 小时前
RAG 进阶实战:跑通 Demo 后我连续翻了 6 次车,逐一修复才真正可用(含 Gradio Web 版)
前端·数据库·langchain·大模型·gradio·rag·科研工具
小程故事多_8010 小时前
Claude Code自定义workflow skills用法
数据库·人工智能·智能体
大鹏说大话10 小时前
SQL 排序与分组实战:解决“分组后取最新数据“
android·java·数据库