Hbase基础(一)——安装与使用

目录

一、前言

二、Hbase的安装与配置

1、Hbase的安装

上传、解压、重命名

2、Hbase的配置

配置环境变量

修改hbase-site.xml文件 

 修改hbase-env.sh文件

修改regionservers文件

创建hbase的日志存储文件

分发文件至其他节点

3、Hbase的运行

4、Hbase的高可用配置


一、前言

        Hbase是一个分布式的、面向列的开源数据库,有区别于传统的行式数据库(如Mysql等),与Hive数据仓库相比,更适合实时存储数据场景,但是与传统的列式数据库相比,更适合键值对的数据存取或者有序的数据存取。Hbase的版本有很多,读者在下载Hbase的压缩包之前,先去Hbase官网查看不同版本的hadoop对哪些版本的Hbase支持。本系列文章是基于hadoop集群搭建后的入门学习,关于hadoop集群搭建,请自行查看笔者发布的hadoop系列文章

https://blog.csdn.net/weixin_63507910/article/details/128608040https://blog.csdn.net/weixin_63507910/article/details/128608040

二、Hbase的安装与配置

1、Hbase的安装

        本次使用的Hbase版本为2.4.11,Hadoop版本为2.10.1。这里笔者提供一个下载网址,读者可以参考下载。

https://dlcdn.apache.org/hbase/https://dlcdn.apache.org/hbase/

上传、解压、重命名

将下载好Hbase压缩包上传到指定的目录,这里笔者上传到存放压缩包的/export/software/目录下
#使用rz命令,将本地压缩包上传到linux指定目录上
没有该命令,先输入以下指令安装上传文件工具rz软件
yum install lrzsz -y
rz

进入到上传压缩包的指定目录,进行解压
cd /export/software/
这里笔者,将压缩包解压到专门放置软件的/export/servers/目录下
tar -zxvf hbase-2.4.11-bin.tar.gz -C /export/servers/

对文件进行重命名,便于后续管理
mv /export/software/hbase-2.4.11-bin.tar.gz /export/servers/hbase

2、Hbase的配置

配置环境变量

vi /etc/profile
export HBASE_HOME=/export/servers/hbase
export PATH=$PATH:$HBASE_HOME/bin

刷新环境变量,使配置生效
source /etc/profile

修改hbase-site.xml文件 

vi hbase-site.xml

<configuration>
 <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.tmp.dir</name>
    <value>/export/data/hbasedata</value>
  </property>
  <property>
    <name>hbase.master.maxclockskew</name>
    <value>180000</value>
  </property>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop01:9000/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/export/data/zookeeper/zkdata</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop01,hadoop02,hadoop03</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
  <property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
  </property>
</configuration>

这里需要注意,hadoop的各个端口号的区别:
8020是默认rpc的端口号,一般用于IDE远程使用Hadoop集群,是程序和程序之间的连接。
9000端口:是HDFS默认的端口号,提供文件系统的端口供client角色寻找namenode角色的端口号,是进程之间的调用。
但是在core-site.xml文件的配置当中,如果hdfs://hadoop01:9000改为hdfs://hadoop01,则默认端口号为8020
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop01:9000</value>
</property>

50070:namenode提供给操作者使用Web访问的端口号,是操作者和程序之间的端口号
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>hadoop01:50070</value>
</property>

50090:secondarynamenode的端口号,这个也是Web访问的端口号
<property>
   <name>dfs.namenode.secondary.http-address</name>
    <value>hadoop02:50090</value>
</property>

 修改hbase-env.sh文件

vi hbase-env.sh
export JAVA_HOME=/export/servers/jdk
export HBASE_MANAGES_ZK=false

修改regionservers文件

vi regionservers
hadoop01
hadoop02
hadoop03

创建hbase的日志存储文件

这里需要注意创建文件要与hbase-site.xml中的配置相符
property>
    <name>hbase.tmp.dir</name>
    <value>/export/data/hbasedata</value>
  </property>

mv /export/data/hbasedata

分发文件至其他节点

将Hadoop的配置文件复制到Hbase的conf/目录下
cd /export/servers/hadoop-2.10.1/etc/hadoop/
cp -r core-site.xml hdfs-site.xml /export/servers/hbase/conf/

将hadoop01上Hbase文件分发给hadoop02、hadoop03
scp -r /export/servers/hbase hadoop02:/export/servers/
scp -r /export/servers/hbase hadoop03:/export/servers/

scp -r /etc/profile hadoop02:/etc/
scp -r /etc/profile hadoop03:/etc/

scp -r /export/data/hbasedata hadoop02:/export/data/
scp -r /export/data/hbasedata hadoop03:/export/data/

在hadoop02、hadoop03上刷新环境变量
source /etc/profile

3、Hbase的运行

启动、停止Hbase集群
start-hbase.sh
stop-hbase.sh

查看hadoop01的进程
jps
2517 HBaseConfTool
2886 Jps
2712 HMaster
2841 HRegionServer

查看hadoop02的进程
jps
2210 HRegionServer
2258 Jps

查看hadoop03的进程
jps
2227 HRegionServer
2275 Jps
1946 JournalNode

登录Hbase的Web界面
http://hadoop01:16010

4、Hbase的高可用配置

Hbase的高可用的配置很简单,在hbase的conf/目录下创建一个backup-masters文件,
在里面添加参数即可。Hbase的高可用与hadoop高可用相似,当集群启动后,每台虚拟机上
都存在HMaster进程,但是只有一台虚拟机的HMaster进程是处于活跃状态的,其他处于
待机状态,当处于活跃状态的HMaster进程因为某些原因停止,其他两台处于待机的HMster进程,
则会随机一台处于活跃状态保证Hbase集群的正常使用。

在此之前,先停止hbase
stop-hbase.sh

配置内容如下
hadoop02
hadoop03

分发至其他节点
scp -r backup-masters hadoop02:/export/servers/hbase/conf/
scp -r backup-masters hadoop03:/export/servers/hbase/conf/

再次启动,可在页面查看变化

猜你喜欢

转载自blog.csdn.net/weixin_63507910/article/details/129952920