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


相关推荐
爬山算法3 分钟前
MySQL(137)如何进行数据库审计?
数据库·mysql·oracle
代码老y19 分钟前
在百亿流量面前,让“不存在”无处遁形——Redis 缓存穿透的极限攻防实录
数据库·redis·缓存
FixPng22 分钟前
【数据库】慢SQL优化 - MYSQL
数据库·sql·mysql
视频砖家41 分钟前
企业培训视频如何做内容加密防下载防盗录(功能点整理)
java·开发语言·数据库
经典19922 小时前
mybatis详解
数据库·mysql·mybatis
GreatSQL2 小时前
GreatSQL优化技巧:使用 FUNCTION 代替标量子查询
数据库
阿巴~阿巴~2 小时前
深入解析:磁盘级文件与内存级(被打开)文件的本质区别与联系
linux·运维·服务器·数据库·缓存
Dajiaonew2 小时前
Redis主从同步原理(全量复制、增量复制)
数据库·redis·缓存
九品菜鸟2 小时前
PHP连接MySQL数据库的多种方法及专业级错误处理指南
数据库·mysql·php
程序猿小D3 小时前
[附源码+数据库+毕业论文]基于Spring+MyBatis+MySQL+Maven+vue实现的酒店预订管理系统,推荐!
数据库·mysql·spring·vue·毕业设计·mybatis·酒店预订