HBase集群环境搭建与测试

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


个人主页:beixi@

本文章收录于专栏(点击传送):【大数据学习】
💓💓持续更新中,感谢各位前辈朋友们支持学习~💓💓

文章目录

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目录。

bash 复制代码
tar -zxvf /root/experiment/file/hbase-1.2.6-bin.tar.gz -C /opt

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

bash 复制代码
cd /opt
mv /opt/hbase-1.2.6 /opt/hbase

4.查找Java安装路径

bash 复制代码
echo $JAVA_HOME

5.配置hbase-env.sh文件

bash 复制代码
vim /opt/hbase/conf/hbase-env.sh

6.按键:set nu回车设置行号,部分截图如下

7.按键27gg,光标定位到27行,部分截图如下

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

bash 复制代码
export JAVA_HOME=/usr/lib/java-1.8

9.按键Esc,按键128gg,光标定位到128行,部分截图如下

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

bash 复制代码
export HBASE_MANAGES_ZK=false

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

bash 复制代码
vim /opt/hbase/conf/hbase-site.xml

13.按键:set nu回车设置行号,部分截图如下

14.按键24gg,光标定位到24行,部分截图如下

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

bash 复制代码
<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文件

bash 复制代码
vim /opt/hbase/conf/regionservers

18.按键dd,删除第一行"localhost",截图如下

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

bash 复制代码
slave1
slave2

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

bash 复制代码
vim ~/.bashrc

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

bash 复制代码
export HBASE_HOME=/opt/hbase
export PATH=$PATH:$HBASE_HOME/bin

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

bash 复制代码
source ~/.bashrc

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

bash 复制代码
scp ~/.bashrc slave1:~/
bash 复制代码
scp ~/.bashrc slave2:~/

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

bash 复制代码
scp -r /opt/hbase slave1:/opt
bash 复制代码
scp -r /opt/hbase slave2:/opt

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

bash 复制代码
ssh slave1
bash 复制代码
source ~/.bashrc
bash 复制代码
exit

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

bash 复制代码
ssh slave2
bash 复制代码
source ~/.bashrc
bash 复制代码
exit

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

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

bash 复制代码
start-all.sh

2.启动HBase。

bash 复制代码
start-hbase.sh

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

bash 复制代码
jps

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

bash 复制代码
ssh slave1
bash 复制代码
jps
bash 复制代码
exit

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

bash 复制代码
ssh slave2
bash 复制代码
jps
bash 复制代码
exit

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

bash 复制代码
hdfs dfs -lsr /hbase

7.启动HBase-shell。

bash 复制代码
hbase shell

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

bash 复制代码
create 'table1','family1'

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

bash 复制代码
put 'table1','myrow-1','family1:column1','value-1'

10.查询表table1中内容。

bash 复制代码
scan 'table1'

11.删除表。

bash 复制代码
disable 'table1'
bash 复制代码
drop 'table1'

12.退出HBase shell。

bash 复制代码
quit

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

bash 复制代码
stop-hbase.sh

14.停止Hadoop进程。

bash 复制代码
stop-all.sh

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

bash 复制代码
zkServer.sh stop

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

bash 复制代码
ssh slave1
bash 复制代码
zkServer.sh stop
bash 复制代码
exit

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

bash 复制代码
ssh slave2
bash 复制代码
zkServer.sh stop
相关推荐
无忧智库2 分钟前
某市“十五五“知识产权大数据监管平台与全链条保护系统建设方案深度解读(WORD)
大数据·人工智能
范纹杉想快点毕业3 分钟前
从单片机基础到程序框架:全方位技术深度解析
数据库·mongodb
回忆是昨天里的海3 分钟前
kafka概述
分布式·kafka
晚风_END5 分钟前
Linux|操作系统|elasticdump的二进制方式部署
运维·服务器·开发语言·数据库·jenkins·数据库开发·数据库架构
嵌入小生0075 分钟前
Standard IO -- Continuation of Core Function Interfaces (Embedded Linux)
linux·vim·嵌入式·标准io·vscode
devmoon6 分钟前
Polkadot SDK 自定义 Pallet Benchmark 指南:生成并接入 Weight
开发语言·网络·数据库·web3·区块链·波卡
知识即是力量ol6 分钟前
初识 Kafka(一):分布式流平台的定义、核心优势与架构全景
java·分布式·kafka·消息队列
综合热讯6 分钟前
股票融资融券交易时间限制一览与制度说明
大数据·人工智能·区块链
Zach_yuan7 分钟前
传输层之TCP/UDP 核心原理全解析:从协议基础到实战机制
linux·网络协议·tcp/ip·udp
独自归家的兔7 分钟前
Ubuntu 系统 systemd timers 详解:替代 crontab 的定时任务进阶方案
linux·运维·ubuntu