六,Linux基础环境搭建(CentOS7)- 安装HBase

时间:2024-10-28 22:13:41

Linux基础环境搭建(CentOS7)- 安装HBase

大家注意以下的环境搭建版本号,如果版本不匹配有可能出现问题!

一、HBase下载及安装

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。 在这里插入图片描述

HBase的下载

HBase下载链接: https://pan.baidu.com/s/1I6LYsVPTIjrEONBnOCXK9Q?pwd=j3m4 提取码: j3m4

将下载的安装包通过Xftp传输到Linux虚拟机/opt/software/中

HBase的安装

创建工作路径/usr/hbase,下载hadoop安装包到/opt/software中,然后解压至工作路径。

mkdir /usr/hbase		#首先在根目录下建立工作路径/usr/hbase
cd /opt/software		#进入安装包的文件夹
tar -zxvf hbase-1.2.4-bin.tar.gz -C /usr/hbase


二、配置组件
1.hbase-env.sh

进入hbase配置目录conf,修改配置文件hbase-env.sh,添加配置变量。

cd /usr/hbase/hbase-1.2.4/conf
vim hbase-env.sh


内容如下:

export HBASE_MANAGES_ZK=false
export JAVA_HOME=/usr/java/jdk1.8.0_171
export HBASE_CLASSPATH=/usr/hadoop/hadoop-2.7.3/etc/hadoop


在这里插入图片描述 解释:一个分布式运行的Hbase依赖一个zookeeper集群。所有的节点和客户端都必须能够访问zookeeper。默认的情况下Hbase会管理一个zookeep集群,即Hbase默认自带一个zookeep集群。这个集群会随着Hbase的启动而启动。而在实际的商业项目中通常自己管理一个zookeeper集群更便于优化配置提高集群工作效率,但需要配置Hbase。需要修改conf/hbase-env.sh里面的HBASE_MANAGES_ZK 来切换。这个值默认是true的,作用是让Hbase启动的时候同时也启动zookeeper.在本实验中,我们采用独立运行zookeeper集群的方式,故将其属性值改为false。

2.hbase-site.xml
vim hbase-site.xml


内容如下:

<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>hdfs://master:6000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1,slave2</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/zookeeper/zookeeper-3.4.10</value>
</property>
</configuration>


在这里插入图片描述 解释:要想运行完全分布式模式,加一个属性 hbase.cluster.distributed 设置为 true 然后把 hbase.rootdir 设置为HDFS的NameNode的位置;

hbase.rootdir:这个目录是region server的共享目录,用来持久化Hbase。URL需要是’完全正确’的,还要包含文件系统的scheme;

hbase.cluster.distributed :Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面。在hbase-site.xml配置zookeeper,当Hbase管理zookeeper的时候,你可以通过修改zoo.cfg来配置zookeeper,对于zookeepr的配置,你至少要在 hbase-site.xml中列出zookeepr的ensemble servers,具体的字段是 hbase.zookeeper.quorum.在这里列出Zookeeper集群的地址列表,用逗号分割。

hbase.zookeeper.property.clientPort:ZooKeeper的zoo.conf中的配置,客户端连接的端口。

hbase.zookeeper.property.dataDir:ZooKeeper的zoo.conf中的配置。对于独立的Zookeeper,要指明Zookeeper的host和端口。需要在 hbase-site.xml中设置。

3.conf/regionservers
vim regionservers


在这里列出了希望运行的全部 HRegionServer,一行写一个host (就Hadoop里面的slaver 一样)。列在这里的server会随着集群的启动而启动,集群的停止而停止。

内容如下: 在这里插入图片描述

三、拷贝Hadoop配置文件
cp /usr/hadoop/hadoop-2.7.3/etc/hadoop/hdfs-site.xml /usr/hbase/hbase-1.2.4/conf
cp /usr/hadoop/hadoop-2.7.3/etc/hadoop/core-site.xml /usr/hbase/hbase-1.2.4/conf


四、配置Hbase环境变量(master一个节点配置即可)
vim /etc/profile


内容如下:

#set hbase environment
export HBASE_HOME=/usr/hbase/hbase-1.2.4
export PATH=$PATH:$HBASE_HOME/bin


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


五、同步其他虚拟机
scp -r /etc/profile root@slave1:/etc/profile	#将环境变量profile文件分发到slave1节点
scp -r /etc/profile root@slave2:/etc/profile	#将环境变量profile文件分发到slave2节点
scp -r /usr/hbase root@slave1:/usr/hbase		#将hbase文件分发到slave1节点
scp -r /usr/hbase root@slave2:/usr/hbase		#将hbase文件分发到slave2节点


两个从节点生效环境变量

source /etc/profile		#生效环境变量(slave1和slave2执行)


六、启动hbase

!!!在master上执行(保证三个节点hadoop和zookeeper已开启)

cd /usr/hbase/hbase-1.2.4/bin/
start-hbase.sh
jps


master 在这里插入图片描述

slave1 在这里插入图片描述slave2 在这里插入图片描述

三个节点jps查看进程后,各个节点有相应的进程即启动成功!

七、进人HBase交互界面
hbase shell


在这里插入图片描述 查看状态

status


在这里插入图片描述 查看版本

version


在这里插入图片描述 如果情况一样的话,就成功安装好HBase啦~