HBase集群环境搭建与测试

🥇🥇【大数据学习记录篇】-持续更新中~🥇🥇


个人主页:beixi@
本文章收录于专栏(点击传送):【大数据学习】

💓💓持续更新中,感谢各位前辈朋友们支持学习~💓💓

文章目录

    • 1.HBase集群环境介绍
    • 2.搭建环境准备
    • 3.搭建步骤
    • 4.HBase集群环境启动、验证和停止

1.HBase集群环境介绍

HBase集群由多个RegionServer节点和一个或多个HMaster节点组成。HMaster节点负责管理元数据(例如表的位置、分区等),并协调集群中的各个节点。RegionServer节点负责存储和处理数据,并与HMaster节点通信以获取元数据信息。

HBase集群的主要特点包括:

  • 可靠性:HBase采用数据副本和RegionServer读写分离等机制来实现容错和恢复能力,即使部分节点出现故障,集群仍然可用。
  • 高性能:HBase通过将表分割成不同的Region来进行水平扩展,可以处理海量数据并具有很高的读写性能。
  • 数据模型:HBase提供类似于Google的Bigtable的列族存储模型,可以灵活定义列族和列,支持动态添加或删除列族和列。
  • 多版本控制:HBase支持存储多个版本的数据,可以回滚到先前的状态,也可以查询以前的历史值。
    在这里插入图片描述

2.搭建环境准备

本次用到的环境有:
Oracle Linux 7.4
Zookeeper3.4.6集群环境
Hadoop2.7.4集群环境

注:HBase依赖于ZooKeeper来进行分布式协调和管理,因此在搭建启用HBASE之前,需要提前搭建并启动好zookeeper集群环境,zookeeper的搭建和启动可以参考我的上一篇文章:ZooKeeper集群环境搭建

3.搭建步骤

1.启动zookeeper集群环境,zookeeper的搭建和启动可以参考我的上一篇文章:ZooKeeper集群环境搭建

2.解压HBase压缩文件至/opt目录。

tar -zxvf /root/experiment/file/hbase-1.2.6-bin.tar.gz -C /opt

在这里插入图片描述

3.修改解压后文件夹的名字为hbase。

cd /opt
mv /opt/hbase-1.2.6 /opt/hbase

在这里插入图片描述

4.查找Java安装路径

echo $JAVA_HOME

在这里插入图片描述

5.配置hbase-env.sh文件

vim /opt/hbase/conf/hbase-env.sh

在这里插入图片描述

6.按键:set nu回车设置行号,部分截图如下
在这里插入图片描述

7.按键27gg,光标定位到27行,部分截图如下
在这里插入图片描述

8.按键 i ,更改代码如下:

export JAVA_HOME=/usr/lib/java-1.8

在这里插入图片描述

9.按键Esc,按键128gg,光标定位到128行,部分截图如下
在这里插入图片描述

10.按键 i ,设置HBase使用外部独立Zookeeper集群,更改代码如下:

export HBASE_MANAGES_ZK=false

在这里插入图片描述

11.按键Esc,按键”:wq!”保存退出。
12.配置hbase-site.xml文件

vim /opt/hbase/conf/hbase-site.xml

在这里插入图片描述

13.按键:set nu回车设置行号,部分截图如下
在这里插入图片描述

14.按键24gg,光标定位到24行,部分截图如下
在这里插入图片描述

15.按键 i ,在标签之间填加代码如下:

<property>
	<name>hbase.zookeeper.quorum</name>
	<value>master,slave1,slave2</value>
</property>
<property>
	<name>hbase.zookeeper.property.dataDir</name>
	<value>/root/hbase</value>
</property>
<property>
	<name>dfs.datanode.max.transfer.threads</name>
	<value>4096</value>
</property>
<property>
	<name>hbase.rootdir</name>
	<value>hdfs://master:8020/hbase</value>
</property>
<property>
	<name>hbase.cluster.distributed</name>
	<value>true</value>
</property>

在这里插入图片描述

16.按键Esc,按键”:wq!”保存退出。
17.配置regionservers文件

vim /opt/hbase/conf/regionservers

在这里插入图片描述

18.按键dd,删除第一行“localhost”,截图如下
在这里插入图片描述

19.按键 i ,填加代码如下:

slave1
slave2

在这里插入图片描述

按键Esc,按键”:wq!”保存退出。
20.配置hbase环境变量

vim ~/.bashrc

在这里插入图片描述

21.按键“shift+g”组合键,达到页面底部。
22.按键 i ,填加代码如下:

export HBASE_HOME=/opt/hbase
export PATH=$PATH:$HBASE_HOME/bin

在这里插入图片描述

23.按键Esc,按键”:wq!”保存退出。
24.刷新配置文件,使新加Hbase环境变量生效。

source ~/.bashrc

在这里插入图片描述

25.拷贝master主机“.bashrc”文件到slave1、slave2从机“~”下。

scp ~/.bashrc slave1:~/
scp ~/.bashrc slave2:~/

在这里插入图片描述

26.拷贝配置好的hbase文件夹到slave1、slave2从机“/opt”下。

scp -r /opt/hbase slave1:/opt

在这里插入图片描述

scp -r /opt/hbase slave2:/opt

在这里插入图片描述

27.切换至“从节点1”机器,双击桌面“Xfce终端”图标打开命令窗口。刷新配置文件,使新加Hbase环境变量生效,退回master主机。

ssh slave1
source ~/.bashrc
exit

在这里插入图片描述

28.切换至“从节点2”机器,双击桌面“Xfce终端”图标打开命令窗口。刷新配置文件,使新加Hbase环境变量生效,退回master主机。

ssh slave2
source ~/.bashrc
exit

在这里插入图片描述

4.HBase集群环境启动、验证和停止

1.切换至“主节点”,双击桌面“Xfce终端”图标打开命令窗口,启动Hadoop。

start-all.sh

在这里插入图片描述

2.启动HBase。

start-hbase.sh

在这里插入图片描述

3.查看守护进程。其中HMaster为HBase的守护进程。

jps

在这里插入图片描述

4.切换至“从节点1”,查看守护进程。其中HRegionServer为HBase的守护进程。

ssh slave1
jps
exit

在这里插入图片描述

5.切换至“从节点2”,查看守护进程。其中HRegionServer为HBase的守护进程。

ssh slave2
jps
exit

在这里插入图片描述

6.切换至“主节点”,查看HDFS平台上Hbase。

hdfs dfs -lsr /hbase

在这里插入图片描述

7.启动HBase-shell。

hbase shell

在这里插入图片描述

8.HBase下建立带有一个列族family1的表table1。

create 'table1','family1'

在这里插入图片描述

9.向表table1中列族family1下建立列为column1,并向列中播入数据value-1。

put 'table1','myrow-1','family1:column1','value-1'

在这里插入图片描述

10.查询表table1中内容。

scan 'table1'

在这里插入图片描述

11.删除表。

disable 'table1'
drop 'table1'

12.退出HBase shell。

quit

在这里插入图片描述

13.停止Hbase进程。注意:这里速度有点慢,可能需要稍等几分钟。

stop-hbase.sh

在这里插入图片描述

14.停止Hadoop进程。

stop-all.sh

在这里插入图片描述

15.停止“主节点”,即master机上的zookeeper进程。

zkServer.sh stop

在这里插入图片描述

16.停止“从节点1”,即slave1机上的zookeeper进程。

ssh slave1
zkServer.sh stop
exit

在这里插入图片描述

17.停止“从节点2”,即slave2机上的zookeeper进程。

ssh slave2

在这里插入图片描述

zkServer.sh stop

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

为何反射探针关闭Mipmap后变成了白图

1&#xff09;为何反射探针关闭Mipmap后变成了白图 2&#xff09;2021.3 Android从AssetBundle中加载视频播放失败问题 3&#xff09;SBP是否可以解决打包时FBX等模型文件中额外的GameObject 4&#xff09;Addressables加载已打包过的Prefab后Mono脚本丢失 这是第349篇UWA技术知…

深入浅出:手把手教你实现单链表

一、什么是链表 链表是一种链状数据结构。简单来说&#xff0c;要存储的数据在内存中分别独立存放&#xff0c;它们之间通过某种方式相互关联。 如果我们使用C语言来实现链表&#xff0c;需要声明一个结构体作为链表的结点&#xff0c;结点之间使用指针关联。 二、单向链表的结…

打击儿童性虐待,遭多家机构反对,苹果宣布停止开发CSAM检测计划

据报道&#xff0c;苹果公司曾计划在其iCloud云服务中引入一项儿童性虐待资料&#xff08;CSAM&#xff09;检测计划&#xff0c;但由于反对声浪日益高涨&#xff0c;该计划最终宣布停止开发。CSAM检测计划的原本目的是为了帮助阻止儿童性虐待资料的传播&#xff0c;保护儿童的…

C#里Bitmap转Halocn的HObject

一般情况下&#xff0c;图像的width是4的倍数的话&#xff0c;用以下代码便可将彩色bitmap转出halcon里的HObject public void Bitmap2HObject(Bitmap bmp, out HObject image){try{Rectangle rect new Rectangle(0, 0, bmp.Width, bmp.Height);BitmapData srcBmpData bmp.L…

c++11 标准模板(STL)(std::basic_stringstream)(二)

定义于头文件 <sstream> template< class CharT, class Traits std::char_traits<CharT> > class basic_stringstream;(C11 前)template< class CharT, class Traits std::char_traits<CharT>, class Allocator std::alloc…

【JAVA基础——JAVA虚拟机JVM】

JVM 文章目录 JVM一.JVM结构1.1.JVM包含两个子系统和两个组件1.2.运行时数据区1.2.1.简介1.2.2.程序计数器1.2.3.虚拟机栈1.2.4.堆1.2.5.本地方法栈1.2.6.方法区(永久代实现)java8-1.2.7.元空间(Metaspace)1.2.8.JVM字节码执行引擎1.2.9.直接内存(Direct Memory)1.2.10.垃圾收集…

为什么你懂英语但不能说流利 学习

目录 对于提升口语流畅度&#xff1a; 我们应该做到是输入和输出占比为3&#xff1a;7&#xff1b;可实际做到的是7&#xff1a;3 但是这个方法也有一个问题&#xff0c;就是没有错误反馈 最好的就是在一个开始的时候&#xff0c;就学对&#xff0c;第一次的效果很重要 另…

Nuxt3打包部署到Linux(node+pm2安装和运行步骤+nginx代理)

最近&#xff0c;我们项目组的工作接近尾声&#xff0c;需要把项目部署上线。由于前端第一次使用Nuxt3框架&#xff0c;后端也是第一次部署Nuxt3项目&#xff0c;所以刚开始出现了很多问题。在我上网搜索很多教程后&#xff0c;得到了基本的流程。 1.服务器安装node.js环境 N…

小兔鲜商03

进入可视区加载数据&#xff1a; 首页有很多模块&#xff0c;如果一次性加载所有数据&#xff0c;很卡&#xff0c;&#xff0c;当移动到要显示的地方&#xff0c;才加载数据 使用 vueuse 库中 useIntersectionObserver方法&#xff0c;&#xff0c; 传入要监听的元素 target …

RK3588开发板编译环境Ubuntu20.04编译配置增加交换内存

迅为提供的编译环境 Ubuntu20.04 默认配置了交换内存是 9G&#xff0c;如果在编译过程中&#xff0c;因内 存不够而编译报错&#xff0c;可以参考本小节进行设置。 这里举例分配 5G 交换内存。 在开始之前&#xff0c;使用命令检查一下您的 ubuntu 的 swap 分区。 sudo swa…

3.2.0 终极预告!云原生支持新增 Spark on k8S 支持

视频贡献者 | 王维饶 视频制作者 | 聂同学 编辑整理 | Debra Chen Apache DolphinScheduler 3.2.0 版本将发布&#xff0c;为了让大家提前了解到此版本更新的主要内容&#xff0c;我们已经制作了几期视频和内容做了大致介绍&#xff0c;包括《重磅预告&#xff01;Apache Dol…

MongoDb-01——Mac上安装MongoDb以及相关的简单命令

MongoDb-01——Mac上安装MongoDb以及相关的简单命令 1. 下载、安装1.1 官网下载1.2 关于安装MongoDB1.2.1 官方安装文档1.2.2 Mac安装详细步骤&#xff08;使用brew&#xff09; 2. 启动MongoDB2.1 官方说明2.2 作为macOS服务运行的相关命令2.3 访问 3. 链接并使用mongodb3.1 链…

package.json 详解

文章目录 package.json1. name2. version3. description4. homepage5. bugs6. license7. author, contributors8. funding9. files10. main11. module12. browser13. bin14. man15. directories15.1 directories.bin15.2 directories.man 16. repository17. scripts18. config1…

IP子网的划分

文章目录 一、子网掩码1. 产生背景2. 定义3. 分类 二、VLSM算法1. 得出下列参数2. 计算划分结果3. 举例子计算 三、常见子网划分对应关系四、练习IP编址题目需求解题1. 192.168.1.100/282. 172.16.0.58/263. 25.83.149.222/254. 100.100.243.18/205. 10.100.100.100/10 首先可以…

《Linux从练气到飞升》No.19 进程等待

&#x1f57a;作者&#xff1a; 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux菜鸟刷题集 &#x1f618;欢迎关注&#xff1a;&#x1f44d;点赞&#x1f64c;收藏✍️留言 &#x1f3c7;码字不易&#xff0c;你的&#x1f44d;点赞&#x1f64c;收藏❤️关注对我真的…

wxpython:wx.html2 是好用的 WebView 组件

wxpython : wx.html2 是好用的 WebView 组件。 wx.html2 是wxPython扩展模块中封装得干净漂亮的模块之一&#xff0c;它被设计为允许为每个端口创建多个后端&#xff0c;尽管目前只有一个可用。它与wx.html.HtmlWindow 的不同之处在于&#xff0c;每个后端实际上都是一个完整的…

ASP.NET Core 中基于 Controller 的 Web API

基于 Controller 的 Web API ASP.NET Wep API 的请求架构 客户端发送Http请求&#xff0c;Contoller响应请求&#xff0c;并从数据库读取数据&#xff0c;序列化数据&#xff0c;然后通过 Http Response返回序列化的数据。 ControllerBase 类 Web API 的所有controllers 一般…

中国平台软件市场研究报告:OceanBase为金融行业国产分布式数据库销售额第一

近日&#xff0c;《2022-2023年度中国平台软件市场研究报告》&#xff08;以下简称“报告”&#xff09;发布&#xff0c;报告对包括数据库、操作系统等在内的平台软件市场发展进行了分析。报告指出&#xff0c;在对平台软件需求增长最快的金融行业&#xff0c;OceanBase已占据…

Kubernetes(k8s)上部署redis5.0.14

Kubernetes上部署redis 环境准备创建命名空间 准备PV和PVC安装nfs准备PV准备PVC 部署redis创建redis的配置文件部署脚本挂载数据目录挂载配置文件通过指定的配置文件启动redis 集群内部访问外部链接Redis 环境准备 首先你需要一个Kubernetes环境&#xff0c;可参考我写的文章&…

Docker Harbor 私有镜像仓库的部署和管理

目录 一、什么是Harbor 二、Harbor的特性 三、Harbor的构成 四、部署配置Docker Harbor 首先需要安装 Docker-Compose 服务 部署 Harbor 服务 修改配置文件 docker配置文件添加本地仓库地址 关于 Harbor.cfg 配置文件中有两类参数&#xff1a;所需参数和可选参数 &a…