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

HBase 高可用集群详细图文安装部署

目录

一、HBase 安装部署

1.1 Zookeeper 正常部署

1.2 Hadoop 正常部署 

1.3 HBase 安装 

1.4 HBase 的配置文件 

1.4.1 hbase-env.sh 

1.4.2 hbase-site.xml

1.4.3 regionservers 

1.4.4 创建目录

1.5 HBase 远程发送到其他节点

1.6 HBase 服务的启动 

1.6.1 单点启动(推荐)

1.6.2 群启

1.6.2 停止服务

1.7 查看 HBase 页面 

1.8 高可用(推荐)

二、HBase 集群扩缩容


  • jdk 版本的支持参考: Apache HBase ™ Reference Guide
  • 与 hadoop 的版本对应参考: Apache HBase ™ Reference Guide (向下滑到 4.1 章节)

一、HBase 安装部署

主机名称IP资源部署角色
hadoop01192.168.170.1362cpu 4Gmaster、regionserver
hadoop02192.168.170.1372cpu 4Gmaster、regionserver
hadoop03192.168.170.1382cpu 4Gregionserver

1.1 Zookeeper 正常部署

首先保证 Zookeeper 集群的正常部署,并启动之。

安装教程:【Zookeeper 初级】02、Zookeeper 集群部署-CSDN博客

1.2 Hadoop 正常部署 

Hadoop 集群的正常部署并启动。

安装教程:Hadoop YARN HA 集群安装部署详细图文教程_hadoop yarn部署-CSDN博客

1.3 HBase 安装 

HBase 官方下载地址:Apache Download Mirrors

(base) [root@hadoop01 ~]# ls
hbase-2.5.6-bin.tar.gz# 解压 Hbase 到指定目录
(base) [root@hadoop01 ~]# tar -zxvf hbase-2.5.6-bin.tar.gz -C /bigdata/
(base) [root@hadoop01 ~]# cd /bigdata/
(base) [root@hadoop01 /bigdata]# mv hbase-2.5.6 hbase# 配置环境变量
(base) [root@hadoop01 /bigdata]# vim /etc/profile
# hbase
export HBASE_HOME=/bigdata/hbase
export PATH=$PATH:$HBASE_HOME/bin# 使用 source 让配置的环境变量生效
(base) [root@hadoop01 /bigdata]# source /etc/profile

1.4 HBase 的配置文件 

1.4.1 hbase-env.sh 

[root@hadoop01 /bigdata]# cd /bigdata/hbase/conf/
[root@hadoop01 /bigdata/hbase/conf]# vim hbase-env.sh # 关闭 hbase 自带zk,使用自己搭建的 zookeeper 集群
export HBASE_MANAGES_ZK=false
# 设定 hbase 的内存为 2G,生产环境中可开启设置
#export HBASE_HEAPSIZE=2G
# 增加系统环境配置, 必须在/etc/profile定义JAVA_HOME
source /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_381
# 存放 PID 文件的目录
export HBASE_PID_DIR=/bigdata/hbase/pids
# 避免 master 启动报错类冲突
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"

1.4.2 hbase-site.xml

[root@hadoop01 /bigdata/hbase/conf]# vim hbase-site.xml
<!-- hbase 在 hdfs 中的存储位置, 如果 hdfs 是 ha 模式, 那就把 hadoop01 换成逻辑集群名(比如我的是 mycluster,可在你的 hadoop 配置文件 core-site.xml 查看) 并且创建 hdfs-site.xml 软连接 --><!-- hbase 在 hdfs 中的存储位置 --><property><name>hbase.rootdir</name><value>hdfs://hadoop01/hbase</value></property><!-- 开启 hbase 的全分布式 --><property><name>hbase.cluster.distributed</name><value>true</value></property><!-- zookeeper 的端口号 --><property><name>hbase.zookeeper.property.clientPort</name><value>2181</value></property><!-- zookeeper 集群的主机名 --><property><name>hbase.zookeeper.quorum</name><value>hadoop01,hadoop02,hadoop03</value></property><!-- hbase 的临时文件存储路径 --><property><name>hbase.tmp.dir</name><value>/bigdata/hbase/tmpdata</value></property><!-- 开启配置防止 hmaster 启动问题 --><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><!-- 监控页面端口 --><property><name>hbase.master.info.port</name><value>60010</value></property>

1.4.3 regionservers 

[root@hadoop01 /bigdata/hbase/conf]# vim regionservers 
hadoop01
hadoop02
hadoop03

1.4.4 创建目录

[root@hadoop01 ~]# mkdir -p /bigdata/hbase/tmpdata# 如果 hadoop 是集群模式(HA 模式),则执行以下步骤
(base) [root@hadoop01 ~]# ln -s /bigdata/hadoop/server/hadoop-3.2.4/etc/hadoop/core-site.xml /bigdata/hbase/conf/core-site.xml
(base) [root@hadoop01 ~]# ln -s /bigdata/hadoop/server/hadoop-3.2.4/etc/hadoop/hdfs-site.xml /bigdata/hbase/conf/hdfs-site.xml

1.5 HBase 远程发送到其他节点

[root@hadoop01 ~]# scp -r /bigdata/hbase 192.168.170.137:/bigdata/hbase
[root@hadoop01 ~]# scp -r /bigdata/hbase 192.168.170.138:/bigdata/hbase# 并修改 /etc/profile 环境变量(其他节点),同 1.3 的步骤一样

1.6 HBase 服务的启动 

1.6.1 单点启动(推荐)

# 只启动本节点 master
hbase-daemon.sh start master# 启动所有从节点
hbase-daemon.sh start regionserver

1.6.2 群启

# 只启动本机器的 master 和所有机器的从节点, 不推荐, 推荐使用 daemon 脚本
start-hbase.sh[root@hadoop01 ~]# jps
1264 RunJar
2512 JournalNode
1442 RunJar
2212 DataNode
2789 DFSZKFailoverController
3189 ResourceManager
1734 QuorumPeerMain
3382 NodeManager
7368 HMaster
2028 NameNode
7614 HRegionServer
7711 Jps

1.6.2 停止服务

# 只停止本节点的 master 和所有节点的 regionserver
stop-hbase.sh

1.7 查看 HBase 页面 

启动成功后,可以通过 “192.168.170.136:60010” 的方式来访问 HBase 管理页面,例如:

1.8 高可用(推荐)

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

# 可以随意选择任意一个节点作为 Backup Master,这里我以 hadoop02节点
(base) [root@hadoop02 /bigdata/hbase/conf]# hbase-daemon.sh start master
(base) [root@hadoop02 /bigdata/hbase/conf]# jps
1570 DataNode
35123 Jps
1701 JournalNode
34694 HRegionServer
1865 DFSZKFailoverController
2009 ResourceManager
2121 NodeManager
1338 QuorumPeerMain
1466 NameNode
35050 HMaster

访问 Backup Master 页面:192.168.170.137:60010

刷新 hadoop01 页面:

至此 HBase 高可用集群部署完毕! 

二、HBase 集群扩缩容

在新节点初始化并拷贝安装目录。

# 在新节点启动 master
hbase-daemon.sh start regionserver# 修改各节点的 conf/regionservers,增加新节点的 ip
vi conf/regionservers# 进入 hbase shell, 开启重新分配 region 数据, 这是hbase的一个周期性工作, 默认 5 分钟
hbase shell
balance_switch true# 执行命令查看当前 hbase 的负载均衡 balance 是否开启
# 注意这个命令没有写错, 不是 balance_switch status, status 是将 balance 状态强制转换为 false
balancer_enabled# 立即进行一次均衡操作
# 当前各节点的 region 数量可以在前端页面查看
balancer

上一篇文章:HBase 详细图文介绍-CSDN博客

相关文章:

HBase 高可用集群详细图文安装部署

目录 一、HBase 安装部署 1.1 Zookeeper 正常部署 1.2 Hadoop 正常部署 1.3 HBase 安装 1.4 HBase 的配置文件 1.4.1 hbase-env.sh 1.4.2 hbase-site.xml 1.4.3 regionservers 1.4.4 创建目录 1.5 HBase 远程发送到其他节点 1.6 HBase 服务的启动 1.6.1 单点…...

现代雷达车载应用——第2章 汽车雷达系统原理 2.6节 雷达设计考虑

经典著作&#xff0c;值得一读&#xff0c;英文原版下载链接【免费】ModernRadarforAutomotiveApplications资源-CSDN文库。 2.6 雷达设计考虑 上述部分给出了汽车雷达基本原理的简要概述。在雷达系统的设计中&#xff0c;有几个方面是必不可少的&#xff0c;它们决定了雷达系…...

【JVM从入门到实战】(五)类加载器

一、什么是类加载器 类加载器&#xff08;ClassLoader&#xff09;是Java虚拟机提供给应用程序去实现获取类和接口字节码数据的技术。 类加载器只参与加载过程中的字节码获取并加载到内存这一部分。 二、jdk8及之前的版本 类加载器分为三类&#xff1a; 启动类加载器-加载Ja…...

计算机毕业设计 基于Web的城市旅游网站的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…...

【人工智能革命】:AIGC时代的到来 | 探索AI生成内容的未来

&#x1f3a5; 屿小夏 &#xff1a; 个人主页 &#x1f525;个人专栏 &#xff1a; IT杂谈 &#x1f304; 莫道桑榆晚&#xff0c;为霞尚满天&#xff01; 文章目录 &#x1f4d1;前言一. AIGC 技术的概述和发展趋势1.1 AIGC 技术的概述1.2 AIGC 技术的发展趋势 二. AIGC 与元宇…...

spring-boot-data-jpa、JPA实现分页

spring-boot-data-jpa、JPA实现分页 JPA越来越丰富了&#xff0c;下面使用springboot3.x实现JPA分页 通过传入PageRequest pageRequest PageRequest.of(page, size);到接口查询&#xff0c;返回Page拿到分页数据。 转自 https://lingkang.top/archives/jpa-shi-xian-fen-ye …...

云原生之深入解析如何在Kubernetes中快速启用Cgroup V2支持

一、cgroup v2 有哪些优势&#xff1f; Linux 中有两个 cgroup 版本&#xff1a;cgroup v1 和 cgroup v2。cgroup v2 是新一代的 cgroup API。Kubernetes 自 v1.25 起 cgroup2 特性正式 stable。cgroup v2 提供了一个具有增强资源管理能力的统一控制系统&#xff0c;cgroup v2…...

QT实现四则运算计算器

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this->setMaximumSize(240,300);this->setMinimumSize(240,300);this->setWindowTitle("计算器&…...

mysql的redolog、undo、binlog的作用

概览&#xff1a; MySQL三大日志包括&#xff1a;undolog&#xff0c;redo log&#xff0c;binlog&#xff0c;它们分别有以下作用&#xff1a; undolog&#xff1a;是Innodb存储引擎事务生成的日志。用于事务的回滚和MVCC&#xff0c;保证了事务的原子性。 redo log&#x…...

京东大数据-10月京东咖啡机市场销售数据分析-销售额增长41%,德龙等海外头部品牌店铺数据分析

如今&#xff0c;咖啡已经成为了人们日常生活中流行的生活饮品之一&#xff0c;消费量较大。随着咖啡的受众人群越来越多&#xff0c;消费者们对咖啡品质的要求也愈来愈高&#xff0c;而咖啡品质除了受咖啡豆质量影响外&#xff0c;还受制作过程中煮泡时间、水温和物料数量等因…...

【Android12】WindowManagerService架构分析

Android WindowManagerService架构分析 WindowManagerService(以下简称WMS) 是Android的核心服务。WMS管理所有应用程序窗口(Window)的Create、Display、Update、Destory。 因为Android系统中只有一个WMS&#xff08;运行在SystemServer进程&#xff09;&#xff0c;可以称其为…...

部署LVS的NET模式

实验准备 #负载调度器# 192.168.116.40 #内网 12.0.0.100 #外网 先添加双网卡 #web服务器# 192.168.116.20 #web1 192.168.116.30 #web2 #nfs共享服务# 192.168.116.10 #nfs systemctl stop firewalld setenforce 0 1.nfs共享文件 1…...

如何在Facebook Business Manager进行企业认证

Facebook Business Manager&#xff0c;简称BM&#xff0c;按照字面意思理解就是Facebook官方的商务管理平台&#xff0c;是供广告主团队去使用的一个管理工具。BM可以绑定Facebook公共主页、广告账户等一系列Facebook账号。通过BM&#xff0c;企业就可以在一个后台&#xff0c…...

推荐一款好用的包含表格识别的OCR网站

在当今数字化的时代&#xff0c;文字和表格识别已经成为了许多行业的关键技术。无论是处理大量的纸质文档&#xff0c;还是从网络上收集数据&#xff0c;OCR&#xff08;光学字符识别&#xff09;技术都扮演着重要的角色。然而&#xff0c;对于许多用户来说&#xff0c;OCR软件…...

linux 块设备驱动程序介绍

Linux块设备驱动是Linux操作系统中用于处理块设备的设备驱动程序。块设备是指以固定大小的块单位进行访问的存储设备&#xff0c;例如硬盘、固态硬盘和USB存储设备等。 Linux块设备驱动负责管理块设备的读写操作&#xff0c;并将数据传输到相应的存储设备上。它还负责处理块设…...

知识付费小程序开发:构建个性化学习平台的技术实践

随着在线学习和知识付费的兴起&#xff0c;开发一款知识付费小程序成为了创新的热点之一。本文将通过使用Node.js、Express和MongoDB为例&#xff0c;演示如何构建一个基础的知识付费小程序后端&#xff0c;并实现用户认证和知识内容管理。 1. 初始化项目 首先&#xff0c;确…...

OpenCV极坐标变换函数warpPolar的使用

学更好的别人&#xff0c; 做更好的自己。 ——《微卡智享》 本文长度为1702字&#xff0c;预计阅读4分钟 前言 前阵子在做方案时&#xff0c;得了几张骨钉的图片&#xff0c;骨科耗材批号效期管理一直是比较麻烦的&#xff0c;贴RFID标签成本太高&#xff0c;所以一般考虑还是…...

类与接口常见面试题

抽象类和接口的对比 抽象类是用来捕捉子类的通用特性的。接口是抽象方法的集合。 从设计层面来说&#xff0c;抽象类是对类的抽象&#xff0c;是一种模板设计&#xff0c;接口是行为的抽象&#xff0c;是一种行为的规范。 相同点 接口和抽象类都不能实例化都位于继承的顶端…...

Windows mysql5.7 执行查询/开启/测试binlog---简易记录

前言&#xff1a;基于虚拟机mysql版本为5.7&#xff0c;增量备份测试那就要用到binlog… 简述&#xff1a;二进制日志&#xff08;binnary log&#xff09;以事件形式记录了对MySQL数据库执行更改的所有操作。 binlog是记录所有数据库表结构变更&#xff08;例如CREATE、ALTER…...

文档安全加固:零容忍盗窃,如何有效预防重要信息外泄

文档安全保护不仅需要从源头着手&#xff0c;杜绝文档在使用和传播过程中产生的泄密风险&#xff0c;同时还需要对文档内容本身进行有效的保护。为了防范通过拷贝、截屏、拍照等手段盗窃重要文档内容信息的风险&#xff0c;迅软DSE加密软件提供了文档加密保护功能&#xff0c;能…...

前端如何设置模板参数

1.背景&#xff1a; 最近接到一个需求&#xff0c;在一个类似chatGpt的聊天工具中&#xff0c;要在对话框中设置模板&#xff0c;后端提供了很多模板参数&#xff0c;然后要求将后端返回的特殊字符转成按钮&#xff0c;编辑完成后在相应的位置拼接成字符串。 2.效果&#xff1a…...

06 使用v-model实现双向数据绑定

概述 Vue achieves two-way data binding by creating a dedicated directive that watches a data property within your Vue component. The v-model directive triggers data updates when the target data property is modified on the UI. Vue 通过创建一个专用指令来观…...

【C++11特性篇】C++11中新增的initializer_list——初始化的小利器(2)

前言 大家好吖&#xff0c;欢迎来到 YY 滴C11系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; 目录 一.探究std::initializer_list是什么…...

计算机网络传输层(期末、考研)

计算机网络总复习链接&#x1f517; 目录 传输层的功能端口UDP协议UDP数据报UDP的首部格式UDP校验 TCP协议&#xff08;必考&#xff09;TCP报文段TCP连接的建立TCP连接的释放TCP的可靠传输TCP的流量控制零窗口探测报文段 TCP的拥塞控制慢开始和拥塞控制快重传和快恢复 TCP和U…...

【STM32入门】4.1中断基本知识

1.中断概览 在开展红外传感器遮挡计次的实验之前&#xff0c;有必要系统性的了解“中断”的基本知识. 中断是指&#xff1a;在主程序运行过程中&#xff0c;出现了特定的中断触发条件&#xff08;中断源&#xff09;&#xff0c;使得CPU暂停当前正在运行的程序&#xff0c;转…...

HCIA-H12-811题目解析(3)

1、【单选题】 以下关于路由器的描述&#xff0c;说法错误的是&#xff1f; 2、【单选题】某网络工程师在输入命令行时提示如下信息&#xff1a;Error:Unrecognized command foun at position.对于该提示信息说法正确的是&#xff1f; 3、【单选题】如下图所示的网络&#xf…...

【异步绘制】UIView刷新原理 与 异步绘制

快捷目录 壹、 iOS界面刷新机制贰、浅谈UIView的刷新与绘制概述一.UIView 与 CALayer1. UIView 与 CALayer的关系2. CALayer的一些常用属性contents属性contentGravity属性contentsScale属性maskToBounds属性contentsRect属性 二.View的布局与显示1.图像显示原理2.布局layoutSu…...

[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: ‘tenant_name‘

Oceanbase 安装成功后关闭OCP&#xff0c;在重新启动时报错 使用OBD 启动OCP报如下错误 [adminobd ~]$ obd cluster start ocp Get local repositories ok Search plugins ok Open ssh connection ok Load cluster param plugin ok Check before start ocp-server x [ERROR] …...

模拟实验中经常遇到的问题和常用技巧

简介 最近在进行新文章的数值模拟阶段。上一次已经跟读者们分享了模拟实验的大致流程&#xff0c;见&#xff1a;数值模拟流程记录和分享 。 本文是在前提下&#xff0c;汇总了小编在模拟实验中经常遇到的问题和常用技巧。 文章目录 简介1. 隐藏输出结果自动创建文件夹保存多…...

微信小程序(二) ——模版语法1

文章目录 wxml模板语法拼接字符数据绑定 wxml模板语法 拼接字符 <image src"{{test1src}}" mode""/>数据绑定 在data中定义数据&#xff0c;吧数据定义到data对象中在wxml中使用数据不论是绑定内容还是属性都是用 {{}} 语法 动态绑定内容 *声明…...

网站字体颜色大小/百度推广如何代理加盟

有一个朋友问我&#xff1a;在公司待两年多了&#xff0c;升不了职怎么办&#xff1f;搞了两年多还是个悲催的程序猿&#xff08;员&#xff09;&#xff0c;每天敲代码&#xff0c;改需求&#xff0c;解bug&#xff0c;晚上做梦都是代码片段&#xff0c;都快抑郁了。要么换工作…...

做时间轴的在线网站/长沙关键词优化首选

上一篇文章介绍了static和extern对函数的作用&#xff0c;static用来定义一个内部函数&#xff0c;不允许其他文件访问&#xff1b;extern用来定义和声明一个外部函数&#xff0c;允许其他文件访问。static和extern对变量也有作用&#xff0c;不过跟函数有点差别。C语言和Java都…...

wordpress参数传递的函数/免费注册网址

看了别人的题解&#xff0c;想了半天&#xff0c;我决定把它解释清楚一些。 题目大意 有N(2≤N≤105)N(2≤N≤105)个点的树&#xff0c;树边有权值a(0≤a≤15)a(0≤a≤15)&#xff0c;每次操作可以把树上一条路径上所有边异或一个任意值ww,最少多少次操作可以使所有边权都变…...

京东短网址在线生成/网站seo分析报告

一种煤矿井下采煤放顶煤回煤装置的制造方法【技术领域】[0001]本发明涉及一种回煤装置&#xff0c;特别涉及一种煤矿井下采煤放顶煤回煤装置&#xff0c;属于煤矿采煤设备领域。【背景技术】[0002]随着现代矿井综合机械化采煤工艺的普及&#xff0c;矿井正在向着高产高效方向发…...

杭州网站建设招标/公司网站设计的内容有哪些

这篇文章主要介绍了PHP使用ffmpeg给视频增加字幕显示的方法,实例分析了php操作ffmpeg给视频增加字母的技巧,具有一定参考借鉴价值,需要的朋友可以参考下。本文实例讲述了PHP使用ffmpeg给视频增加字幕显示的方法。分享给大家供大家参考。具体实现方法如下&#xff1a;<?php …...

网站页面改版/百度网站入口

在实际的编程工作中&#xff0c;我们可以只是用事件&#xff0c;不用命令&#xff0c;程序的逻辑也一样被驱动的很好&#xff0c;但我们不能阻止程序员按照自己的习惯去写代码。比如保存事件的处理器&#xff0c;程序员们可以写Save()、Savehandler()、SaveDocument()...这些都…...