安装HBase集群

本文详细介绍如何在Hadoop环境下安装HBase集群,并配置相关参数实现分布式存储。此外,还介绍了基本的HBaseShell操作,如创建表、插入数据、查询等。

安装HBase集群

1 软件环境

注:我的Hadoop环境已经安装完成。

1.1 版本选择

版本的兼容问题很重要!!

软件环境版本号备注
CentOS77.6
JDK1.8.0
Hadoop3.1.3hadoop-3.1.3.tar.gz
ZooKeeper3.6.3apache-zookeeper-3.6.3-bin.tar.gz
HBase2.4.15hbase-2.4.15-bin.tar.gz
Hive3.1.2apache-hive-3.1.2-bin.tar.gz

1.2 软件下载

# Hadoop下载地址
https://hadoop.apache.org/release.html
# 下载hadoop-3.1.3.tar.gz
https://archive.apache.org/dist/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz


# ZooKeeper下载地址
https://zookeeper.apache.org/releases.html
# 下载apache-zookeeper-3.6.3-bin.tar.gz
https://dlcdn.apache.org/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz


# HBase下载地址
https://hbase.apache.org/downloads.html
# 下载hbase-2.4.15-bin.tar.gz
https://dlcdn.apache.org/hbase/2.4.15/hbase-2.4.15-bin.tar.gz


# Hive下载地址
https://hive.apache.org/downloads.html
# 下载apache-hive-3.1.2-bin.tar.gz
https://dlcdn.apache.org/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz

1.3 Hadoop集群环境

主机名HDFSYARNIP地址说明
hadoop0DataNode、NameNodeNodeManager192.168.108.10主节点(master)
hadoop1DataNodeNodeManager、ResourceManager192.168.108.11子节点
hadoop2DataNode、Secondary NameNodeNodeManager192.168.108.12子节点

2 安装HBase

2.1 HBase集群

安装目录是/opt/

主机名HBaseHDFSIP地址说明
hadoop0HBaseDataNode、NameNode192.168.108.10主节点(master)
hadoop1HBaseDataNode192.168.108.11子节点
hadoop2HBaseDataNode、Secondary NameNode192.168.108.12子节点

2.2 在主节点安装

(1) 解压文件

# 先将hbase-2.4.15-bin.tar.gz复制到/opt目录下
# 进入安装目录
cd /opt

# 解压文件,解压后会出现hbase-2.4.15目录
tar -xzvf hbase-2.4.15-bin.tar.gz

(2)添加环境变量

# 编辑“/etc/profile”文件
vim /etc/profile

# 在文件中末尾添加如下内容
export HBASE_HOME=/opt/hbase-2.4.15
export PATH=$PATH:$HBASE_HOME/bin

# 使环境变量生效
source /etc/profile

2.3 修改配置文件

(1)修改hbase-env.sh文件

# 进入配置文件目录
cd /opt/hbase-2.4.15/conf

# 修改hbase-env.sh文件
vim hbase-env.sh

# 在文件中最后添加如下内容,下面的配置在hbase-env.sh中都可以找到被注释的
# 注意我的jdk目录是/opt/jdk1.8.0_144,需要修改为自己的目录
export JAVA_HOME=/opt/jdk1.8.0_144
export HBASE_MANAGES_ZK=true

(2)修改hbase-site.xml文件

# 进入配置文件目录
cd /opt/hbase-2.4.15/conf

# 修改hbase-site.xml文件
vim hbase-site.xml

hbase-site.xml文件内容如下

<configuration>
	<!-- 1、 设置HBase为分布式 -->
	<property>
		<name>hbase.cluster.distributed</name>
		<!-- true表示设置为分布式 -->
		<value>true</value>
	</property>
	<property>
		<name>hbase.tmp.dir</name>
		<value>./tmp</value>
	</property>
	<property>
		<name>hbase.unsafe.stream.capability.enforce</name>
		<value>false</value>
	</property>

	<!-- 2、 设置ZooKeeper -->
	<!-- 设置ZooKeeper地址 -->
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>hadoop0,hadoop1,hadoop2</value>
	</property>

	<!-- 设置ZooKeeper数据的存储位置 -->
	<property>
		<name>hbase.zookeeper.property.dataDir</name>
		<value>/opt/hbase-2.4.15/zookeeper-data</value>
	</property>

	<!-- 3、 指定HBase在HDFS上存储的路径 -->
	<!-- 
		注意:此处要与Hadoop配置文件core-site.xml中fs.defaultFS属性值前缀相同,我的fs.defaultFS配置如下:
		<property>
	        <name>fs.defaultFS</name>
	        <value>hdfs://hadoop0:9000</value>
	    </property>
	-->
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://hadoop0:9000/hbase</value>
	</property>

	<!-- 4、 指定HBase的WebUI管理页面 -->
	<property>
		<name>hbase.master.info.port</name>
		<value>16010</value>
	</property>

</configuration>

(3)修改regionservers文件

# 进入配置文件目录
cd /opt/hbase-2.4.15/conf

# 修改regionservers文件
vim regionservers

regionservers文件内容如下(删除里面的localhost)

hadoop0
hadoop1
hadoop2

2.4 复制主节点HBase到子节点

# 复制hbase文件
scp -r /opt/hbase-2.4.15 root@hadoop1:/opt/
scp -r /opt/hbase-2.4.15 root@hadoop2:/opt/

# 复制profile文件
scp /etc/profile  root@hadoop1:/etc/
scp /etc/profile  root@hadoop2:/etc/

# 注意:复制后,在子节点上用source命令使环境变量起效
source /etc/profil

2.5 启动HBase

# 在Master节点上启动HBase
start-hbase.sh

# 关闭HBase
stop-hbase.sh

# 查看HBase进程
jps

在这里插入图片描述

# 查看HBase启动情况,输入以下IP地址和端口号,如下图表明安装成功
http://192.168.108.10:16010/

在这里插入图片描述

3 简单使用HBase Shell

3.1 连接HBase

# 连接HBase
hbase shell

在这里插入图片描述

3.2 常用命令

# (1)创建表和列属性
# create '表名','列族名1','列族名2'
# ”列族名“可根据需要自定义,一张表中,列族创建越少越好
create 'user', 'c1', 'c2'

# (2)查看表
list

# (3)添加数据
# put '表名','ROW值','列族名:列名','列值'
# "ROW值"是唯一的,相当于关系型数据库中的主键
put 'user', '001', 'c1:name', 'Mason'
put 'user', '001', 'c1:age', '20'
put 'user', '002', 'c1:name', '河南大学'
put 'user', '002', 'c1:age', '110'

# (4)查询数据
# scan '表名'
scan 'user'
# get '表名','ROW值'
get 'user', '001'

# (5)删除列中的行数据
# delete '表名','ROW值','列族名:列名'
# 删除列族为"c1",列名为"name",行键值为"002"的值
delete 'user', '002', 'c1:name'

# (6)删除行数据
# delete '表名','ROW值'
# 删除行键值为'002'的数据
delete 'user', '002'

# (7)删除表
# 首先需要disable表
disable 'user'
# 再删除表
drop 'user'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值