HBase集群环境搭建

news2024/11/14 15:05:45

HBase集群环境搭建

  • 一、集群规划
  • 二、前置条件
  • 三、集群搭建
    • 3.1 下载并解压
    • 3.2 配置环境变量
    • 3.3 集群配置
      • 1. hbase-env.sh
      • 2. hbase-site.xml
      • 3. regionservers
      • 4. backup-masters
    • 3.4 HDFS客户端配置
    • 3.5 安装包分发
  • 四、启动集群
    • 4.1 启动ZooKeeper集群
    • 4.2 启动Hadoop集群
    • 4.3 启动HBase集群
    • 4.4 查看服务
  • 参考文章

一、集群规划

这里搭建一个 3 节点的 HBase 集群,其中三台主机上均为 Regin Server。同时为了保证高可用,除了在 hadoop101 上部署主 Master 服务外,还在 hadoop102 上部署备用的 Master 服务。Master 服务由 Zookeeper 集群进行协调管理,如果主 Master 不可用,则备用 Master 会成为新的主 Master。

hadoop101hadoop102hadoop103
HBaseMasterMasterSlave

二、前置条件

HBase 的运行需要依赖 Hadoop 和 JDK(HBase 2.0+ 对应 JDK 1.8+) 。同时为了保证高可用,这里我们不采用 HBase 内置的 Zookeeper 服务,而采用外置的 Zookeeper 集群。相关搭建步骤可以参阅:

CentOs环境下 JDK 安装
Zookeeper 单机环境和集群环境搭建
Hadoop 集群环境搭建

三、集群搭建

3.1 下载并解压

下载并解压Hbase,下载地址为:
官网:https://archive.apache.org/dist/hbase/2.3.7/ (版本齐全,但是下载比较慢)
镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.4.18/ (可选择版本较少,下载很快)

tar -zxvf hbase-2.4.18-bin.tar.gz -C /opt/module

3.2 配置环境变量

vim /etc/profile.d/my_env.sh

添加环境变量:

export HBASE_HOME=/opt/module/hbase-2.4.18
export PATH=$PATH:$HBASE_HOME/bin

使得配置的环境变量立即生效:

source /etc/profile.d/my_env.sh

3.3 集群配置

进入 ${HBASE_HOME}/conf 目录下,修改配置:

1. hbase-env.sh

vim /opt/module/hbase-2.4.18/conf/hbase-env.sh
# 配置JDK安装位置
export JAVA_HOME=/opt/module/jdk1.8.0_333/
# 不使用内置的zookeeper服务
export HBASE_MANAGES_ZK=false

2. hbase-site.xml

vim /opt/module/hbase-2.4.18/conf/hbase-site.xml
<configuration>
    <property>
        <!-- 指定 hbase 以分布式集群的方式运行 -->
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <property>
        <!-- 指定 hbase 在 HDFS 上的存储位置 -->
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop101:8020/hbase</value>
    </property>
    <property>
        <!-- 指定 zookeeper 的地址-->
        <name>hbase.zookeeper.quorum</name>
        <value>hadoop101:2181,hadoop102:2181,hadoop103:2181</value>
    </property>
</configuration>

3. regionservers

vim /opt/module/hbase-2.4.18/conf/regionservers
hadoop101
hadoop102
hadoop103

4. backup-masters

vim /opt/module/hbase-2.4.18/conf/backup-masters
hadoop102

backup-masters 这个文件是不存在的,需要新建,主要用来指明备用的 master 节点,可以是多个,这里我们以 1 个为例。

3.4 HDFS客户端配置

这里有一个可选的配置:如果您在 Hadoop 集群上进行了 HDFS 客户端配置的更改,比如将副本系数 dfs.replication 设置成 5,则必须使用以下方法之一来使 HBase 知道,否则 HBase 将依旧使用默认的副本系数 3 来创建文件:

Add a pointer to your HADOOP_CONF_DIR to the HBASE_CLASSPATH environment variable in hbase-env.sh.
Add a copy of hdfs-site.xml (or hadoop-site.xml) or, better, symlinks, under ${HBASE_HOME}/conf, or
if only a small set of HDFS client configurations, add them to hbase-site.xml.

以上是官方文档的说明,这里解释一下:

第一种 :将 Hadoop 配置文件的位置信息添加到 hbase-env.sh 的 HBASE_CLASSPATH 属性,示例如下:

export HBASE_CLASSPATH=opt/module/hadoop-3.1.3/etc/hadoop

第二种 :将 Hadoop 的 hdfs-site.xml 或 hadoop-site.xml 拷贝到 ${HBASE_HOME}/conf 目录下,或者通过符号链接的方式。如果采用这种方式的话,建议将两者都拷贝或建立符号链接,示例如下:

# 进入hadoop配置目录
cd /opt/module/hadoop-3.1.3/etc/hadoop
# 拷贝
cp core-site.xml hdfs-site.xml /opt/module/hbase-2.4.18/conf/
# 使用符号链接
ln -s   /opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml
ln -s   /opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml
注:hadoop-site.xml 这个配置文件现在叫做 core-site.xml

第三种 :如果你只有少量更改,那么直接配置到 hbase-site.xml 中即可。

3.5 安装包分发

将 HBase 的安装包分发到其他服务器,分发后建议在这两台服务器上也配置一下 HBase 的环境变量。

cd /opt/module/
# 分发hbase
xsync hbase-2.4.18
cd /etc/profile.d/
# 分发环境配置
xsync my_env.sh

或者

scp -r /opt/module/hbase-2.4.18/  hadoop102:opt/module/
scp -r /opt/module/hbase-2.4.18/  hadoop103:opt/module/

在hadoop102、hadoop103上让环境变量生效

source /etc/profile.d/my_env.sh

四、启动集群

4.1 启动ZooKeeper集群

分别到三台服务器上启动 ZooKeeper 服务:

zkServer.sh start

4.2 启动Hadoop集群

# 启动dfs服务
start-dfs.sh
# 启动yarn服务
start-yarn.sh

4.3 启动HBase集群

进入 hadoop101 的 ${HBASE_HOME}/bin,使用以下命令启动 HBase 集群。执行此命令后,会在 hadoop101 上启动 Master 服务,在 hadoop102 上启动备用 Master 服务,在 regionservers 文件中配置的所有节点启动 region server 服务。

cd /opt/module/hbase-2.4.18/bin
./start-hbase.sh

4.4 查看服务

访问 HBase 的 Web-UI 界面,这里我安装的 HBase 版本为 1.2,访问端口为 60010,如果你安装的是 2.0 以上的版本,则访问端口号为 16010。可以看到 Master 在 hadoop101 上,三个 Regin Servers 分别在 hadoop101,hadoop102,和 hadoop103 上,并且还有一个 Backup Matser 服务在 hadoop102 上。
在这里插入图片描述

hadoop002 上的 HBase 出于备用状态:
在这里插入图片描述

参考文章

  • HBase集群环境配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2139656.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

rtems 5.3 qemu realview_pbx_a9 环境搭建:生成 rtems arm 工具链

前言 rtems 是一款比较优秀的 RTOS&#xff0c;官方网址 https://www.rtems.org/ 当前 rtems 最新发布的版本&#xff1a;rtems-5.3 版本&#xff0c; 下载地址 https://ftp.rtems.org/pub/rtems/releases/5/5.3/ rtems 支持的 平台也是比较多的&#xff0c;当前支持 STM32F4…

差分进化算法(DE算法)求解实例---旅行商问题 (TSP)

目录 一、采用DE求解 TSP二、 旅行商问题2.1 实际例子&#xff1a;求解 6 个城市的 TSP2.2 **求解该问题的代码**2.3 代码运行过程截屏2.4 代码运行结果截屏&#xff08;后续和其他算法进行对比&#xff09; 三、 如何修改代码&#xff1f;3.1 减少城市坐标&#xff0c;如下&am…

关系数据库(6,7,8)

目录 除运算 例子 关系演算 元组关系演算语言ALPHA 检索操作 更新操作 插入操作 删除操作 除运算 其中x&#xff0c;y&#xff0c;z是属性组&#xff0c;r对s的除运算得到新的关系p&#xff08;x&#xff09;&#xff0c;列数减少了&#xff0c;变得只有一列。 例子 当…

103.WEB渗透测试-信息收集-FOFA语法(3)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;102.WEB渗透测试-信息收集-FOFA语法&#xff08;2&#xff09; FOFA使用实例 组件框架 …

基于yolov5的混凝土缺陷检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv5的混凝土缺陷检测系统是一项利用深度学习技术&#xff0c;特别是YOLOv5算法&#xff0c;实现对混凝土结构中缺陷进行自动检测和识别的系统。该系统通过收集大量的混凝土图像数据&#xff0c;并标注缺陷区域&#xff0c;如裂缝、空洞、剥落等&#xff0…

Github 2024-09-16 开源项目周报 Top14

根据Github Trendings的统计,本周(2024-09-16统计)共有14个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目4TypeScript项目2Go项目2JavaScript项目2Shell项目2Rust项目2C++项目2Jupyter Notebook项目1C#项目1React: 用于构建用户界面的JavaS…

中国矿业大学《2023年868+2007年自动控制原理真题》 (完整版)

本文内容&#xff0c;全部选自自动化考研联盟的&#xff1a;《25届中国矿业大学868自控考研资料》的真题篇。后续会持续更新更多学校&#xff0c;更多年份的真题&#xff0c;记得关注哦~ 目录 2007年复试真题 2023年初试真题 Part1&#xff1a;完整版真题 2007年复试真题 2…

【自动驾驶】控制算法(八)横向控制Ⅳ | 调试与优化

写在前面&#xff1a; &#x1f31f; 欢迎光临 清流君 的博客小天地&#xff0c;这里是我分享技术与心得的温馨角落。&#x1f4dd; 个人主页&#xff1a;清流君_CSDN博客&#xff0c;期待与您一同探索 移动机器人 领域的无限可能。 &#x1f50d; 本文系 清流君 原创之作&…

寄存器的位数据调测方法(摩尔信使MThings)

图中是一种典型MODBUS寄存器位数据定义方式&#xff0c;这种数据定义主要基于数据紧凑设计原则&#xff08;精确位宽分配&#xff09;&#xff0c;将明确含义&#xff08;取值范围&#xff09;的字段分配最小必要的数据长度&#xff0c;进而减少寄存器总数&#xff0c;提升数据…

【更新】上市公司-供应链金融水平数据(2000-2023年)

上市公司供应链金融是指上市公司利用其产业链核心地位&#xff0c;通过整合金融资源&#xff0c;为供应链上下游企业提供包括融资、结算、风险管理等在内的综合金融服务。为了衡量上市公司的供应链金融水平&#xff0c;参考周兰等&#xff08;2022&#xff09;的研究方法&#…

统信服务器操作系统【d版字符系统升级到dde图形化】配置方法

统信服务器操作系统d版本上由字符系统升级到 dde 桌面系统的过程 文章目录 一、准备环境二、功能描述安装步骤1. lightdm 安装2. dde 安装 一、准备环境 适用版本&#xff1a;■UOS服务器操作系统d版 适用架构&#xff1a;■ARM64、AMD64、MIPS64 网络&#xff1a;连接互联网…

Redis Key的过期策略

Redis 的过期策略主要是指管理和删除那些设定了过期时间的键&#xff0c;以确保内存的有效使用和数据的及时清理。 具体来说&#xff0c;Redis 有三种主要的过期策略&#xff1a;定期删除&#xff08;Scheduled Deletion&#xff09;、惰性删除&#xff08;Lazy Deletion&#…

要想实现稳定利润就来Anzo Capital 昂首资本官网

都知道低波动性交易策略不仅降低了风险&#xff0c;还提供了一种在波动市场中保持冷静的方法&#xff0c;但投资者要想在低波动性交易策略下实现稳定的利润&#xff0c;还需来Anzo Capital 昂首资本官网。 Anzo Capital 昂首资本官网的交易策略基于几个核心原则。首先&#xf…

基于yolov8的无人机检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的无人机检测系统是一项前沿技术&#xff0c;结合了YOLOv8深度学习模型的强大目标检测能力与无人机的灵活性。YOLOv8作为YOLO系列的最新版本&#xff0c;在检测精度和速度上均有显著提升&#xff0c;特别适用于复杂和高动态的场景。 该系统通过捕获实…

【python】python入门基础理论+实践,这一篇就够了

文章目录 简介&#xff1a;第一个hello world字符串str多引号字符串拼接字符串方法格式化方法判断方法查、改、计数、替换特殊方法 布尔型bool列表类型深浅copy列表生成式练习列表去重(不能用set)找到列表中第二大的数&#xff08;不能用sort&#xff09;判断一个列表是不是另外…

python selenium网页操作

一、安装依赖 pip install -U seleniumselenium1.py&#xff1a; from selenium import webdriver from selenium.webdriver.common.by import Bydriver webdriver.Chrome() driver.get("https://www.selenium.dev/selenium/web/web-form.html") title driver.ti…

网络安全学习(二)初识kali

kali有两种界面模式&#xff0c;为了更好的适应windows用户&#xff0c;需要操作一下。 先更新一下kali&#xff0c;执行命令 sudo apt-get update 然后换界面 sudo apt install kali-desktop-gnome 等待&#xff0c;出现如下界面时&#xff0c;选择gdm3&#xff08;键盘&a…

计算机视觉 对比学习 串烧一

文章目录 【文章列表】一、 Inst Disc1.1 文章摘要1.2 实验结果1.3 文章图示图一 超级学习结果的可视化图二 非参数softmax分类器的流程图三 近端正则化的效果图四 训练和测试目标的一致性图五 图像检索的结果表 1: CIFAR10 数据集上的分类准确率表 2: ImageNet 数据集上的分类…

临工30装载机多路阀

如图&#xff0c;因为螺丝太紧实&#xff0c;只好使用冲击螺丝刀卸下来了。 如图&#xff0c;防尘圈型号为FA 28 40 5/9 如图所示 28杆

【双方演化博弈】研究理论学习

1. 演化基础 1.1.演化博弈常用软件 载学习软件: Matlab、Vensim PLE、 Visio 其中,Matlab和Vensim PLE主要是用做演化博弈仿真,Matlab是演化博弈最常用的仿真软件&#xff0c;VensimPLE是系统动力学(SD)仿真软件也是常用仿真软件之一。 Python、Netlogo等软件也可以用来做演…