Bootstrap

Hbase完全分布式安装教程,详细版

查看下面的我上期的文章选择好并下载合适自己的Hbase版本

http://【Hbase伪分布安装教程,详细版 - CSDN App】https://blog.csdn.net/weizhigongzi/article/details/145946899?sharetype=blog&shareId=145946899&sharerefer=APP&sharesource=weizhigongzi&sharefrom=link

 

下面开始完全分布式的Hbase安装

注:1、文档中hadoop101 hadoop102 hadoop103为三台虚拟机的主机名,进行安装配置时,要改成自己电脑的主机名或IP地址

2.教程中涉及到路径的,也要根据自己电脑的实际路径进行修改,不一味的复制

开始之前必须确保你的zookeeper和Hadoop已经成功的安装配置好了再开始下面的步骤

本次用到的Hbase为2.4.6版本,Hadoop为3.1.3版本,JDK为JDK8

每台虚拟机或服务器都要进行Hbase的配置

先将安装包上传到主节点虚拟机,我的主节点是hadoop101,然后配置好后在进行集体分发

 

解压到自己的安装目录

去到存放安装包的位置

根据自己的软件安装位置解压,/opt/module/是我的安装路径,解压命令:tar -zxvf hbase-2.4.6-bin.tar.gz -C /opt/module/

 

配置环境变量

命令:sudo vim /etc/profile

文件最后添加如下内容:

#HBASE_HOME

export HBASE_HOME=/opt/module/hbase-2.4.6

export PATH=$PATH:$HBASE_HOME/bin

让环境变量生效命令:source /etc/profile

这里以分发到hadoop102为例,还需要分发到其它机子,命令:sudo scp -r /etc/profile zq@hadoop102:/etc/profile

另一种环境变量配置方式

就是在profile.d下创建了一个属于自己的环境变量文件,就比如我的,my_env.sh是我自己创建的一个环境变量管理文件

命令:sudo vim /etc/profile.d/my_env.sh

将其添加到其中

使环境变量生效:source /etc/profile.d/my_env.sh

 

再分发到其它机子,我就用自己的分发脚本分发了,往期有脚本编写,链接如下,查看qsync集群分发脚本处

http://【Hadoop伪分布及集群配置,保姆级教程 - CSDN App】https://blog.csdn.net/weizhigongzi/article/details/144300530?sharetype=blog&shareId=144300530&sharerefer=APP&sharesource=weizhigongzi&sharefrom=link

命令:sudo xsync /etc/profile.d/my_env.sh /etc/profile.d/

 

修改hbase-env.sh 内容,文件在Hbase安装目录下的conf文件夹下

去到文件夹:cd /opt/module/hbase-2.4.6/conf/

 编辑文件命令:vim hbase-env.sh

在文件最后添加如下内容保存退出:

export JAVA_HOME=/opt/module/jdk1.8.0_212

export HBASE_MANAGES_ZK=false

记得将JDK的路径改为自己的

 

修改hbase-site.xml 内容

编辑文件命令:vim hbase-site.xml

下面参数加configuration标签内保存并退出,原来有的内容就不要删了

要配分布式的话第一个要改为true

 

<!-- 8020或9000要与hadoop的core-site.xml fs.defaultFS的端口一致 -->

<property>

<name>hbase.rootdir</name>

<value>hdfs://hadoop101:8020/HBase</value>

</property>

<property>

<name>hbase.master.port</name>

<value>16000</value>

</property>

  <!-- 在分布式的情况下一定要设置,不然容易出现Hmaster起不来的情况 -->

  <property>              <name>hbase.unsafe.stream.capability.enforce</name>

       <value>false</value>

  </property>

<property>

<name>hbase.wal.provider</name>

<value>filesystem</value>

</property>

<property>

<name>hbase.zookeeper.property.dataDir</name>

<value>/opt/module/zookeeper-3.8.4/zkData</value>

</property>

<property>

    <name>hbase.zookeeper.quorum</name>

    <value>hadoop101,hadoop102,hadoop103</value>

  </property>

 

 

还要注意其中的hbase.rootdir下的端口要与Hadoop里配置的一样,如下图所示,以及注意改zookeeper的路径

 

 

修改regionservers

命令:vim regionservers

删除原来的localhost

 

把所有的主机IP填写进去,如果是配置IP映射的话填所有的IP对应的名称也行,前后不要有空格,最好手动敲,然后保存退出

软连接hadoop 配置文件到HBase

命令:ln -s /opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml /opt/module/hbase-2.4.6/conf/core-site.xml

命令:ln -s /opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml /opt/module/hbase-2.4.6/conf/hdfs-site.xml

 根据自己的Hbase安装路径和Hadoop的安装路径作修改

分发到其它节点

使用scp,以分发到hadoop102为例

命令:scp -r /opt/module/hbase-2.4.6/ zq@hadoop102:/opt/module/

我使用自己编写的脚本

命令:xsync /opt/module/hbase-2.4.6/ /opt/module/

启动Hbase之前记得先启动Hadoop和zookeeper

启动方式1:

逐个启动

命令:/opt/module/hbase-2.4.6/bin/hbase-daemon.sh start master

命令:/opt/module/hbase-2.4.6/bin/hbase-daemon.sh start regionserver

对应的停止服务,将start改为stop

启动方式2:

命令:/opt/module/hbase-2.4.6/bin/start-hbase.sh

对应的停止服务命令将start改为stop

启动后主节点有三个进程,其余机子各有两个进程,Q开头的是zookeeper进程

Hbase启动脚本

回到根目录:cd ~

进入bin目录,这个目录是我存放脚本的地方: cd bin/

创建脚本文件:vim myhbase

添加下面的内容保存退出,注意修改必要的地方,如Hbase的安装路径,脚本的位置根据你自己的需求存放即可,但注意要将你存放的位置加入变量里

给执行权限:chmod +x myhbase

#!/bin/bash

case $1 in

"start"){

        for i in hadoop101

        do

                echo ---------- hbase 启动 ------------

                ssh $i "/opt/module/hbase-2.4.6/bin/start-hbase.sh"

        done

};;

"stop"){

        for i in hadoop101

        do

                echo ---------- hbase 停止 ------------        

                ssh $i "/opt/module/hbase-2.4.6/bin/stop-hbase.sh"

        done

};;

*)

        echo "Input Args Error..."

        echo "$0 [start|stop]..."

;;

esac

 

用myhbase start启动

用myhbase stop关闭

启动成功后,可以通过“host:port”的方式来访问HBase 管理页面,例如:

http://hadoop101:16010或192.168.89.101:16010

 根据自己的IP修改

查看版本命令: hbase version

输入hbase shell 进入hbase

输入exit退出

关闭服务顺序,建议先关闭hbase,在关闭zookeeper和hadoop

到此教程完毕!!!

;