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 页面


相关推荐
IvorySQL13 小时前
PostgreSQL 技术日报 (3月9日)|EXPLAIN ANALYZE 计时优化与复制语法讨论
数据库·postgresql·开源
stark张宇16 小时前
MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉
数据库·mysql·架构
倔强的石头_16 小时前
融合数据库架构实践:关系型、JSON与全文检索的“一库多能”深度解析
数据库
星辰员19 小时前
KingbaseES数据库:ksql 命令行用户与权限全攻略,从创建到删除
数据库
华仔啊1 天前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
随风飘的云2 天前
MySQL的慢查询优化解决思路
数据库
IvorySQL3 天前
PostgreSQL 技术日报 (3月7日)|生态更新与内核性能讨论
数据库·postgresql·开源
赵渝强老师3 天前
【赵渝强老师】金仓数据库的数据文件
数据库·国产数据库·kingbase·金仓数据库
随逸1773 天前
《Milvus向量数据库从入门到实战,手把手搭建语义检索系统》
数据库
神秘的猪头3 天前
🚀 React 开发者进阶:RAG 核心——手把手带你玩转 Milvus 向量数据库
数据库·后端·llm