HBase2.1分布式部署

发布时间 2023-03-28 10:14:29作者: 百衲本

一、环境

Hadoop版本:hadoop-2.7.5
部署参考:https://www.cnblogs.com/panwenbin-logs/p/8666589.html

zookeeper版本:zookeeper-3.4.12
部署参考:https://www.cnblogs.com/panwenbin-logs/p/10369402.html

hosts:
192.168.1.131 hadoop01
192.168.1.132 hadoop02
192.168.1.133 hadoop03

sed -i 's#\# StrictHostKeyChecking ask#StrictHostKeyChecking no#' /etc/ssh/ssh_config
systemctl restart sshd

配置节点直接免密登录
时间同步
关闭或放行相关端口

二、配置安装

1.下载安装包

资源下载地址:https://archive.apache.org/dist/hbase/

wget https://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-bin.tar.gz
tar xf hbase-2.1.0-bin.tar.gz -C /usr/local
cd  /usr/local
ln -sv hbase-2.1.0-bin hbase

2.修改HBase配置文件

hbase-env.sh

vim /usr/local/hbase/conf/hbase-env.sh
export JAVA_HOME=/usr/local/java8
export HBASE_MANAGES_ZK=false  #不使用内置zookeeper

hbase-site.xml

vim /usr/local/hbase/conf/hbase-site.xml
<configuration>
    <!-- HBase数据在HDFS中的存放的路径 -->
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop01:9000/hbase</value>
    </property>
    <!-- Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会
             运行在同一个JVM里面 -->
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <!-- ZooKeeper的地址 -->
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>hadoop01,hadoop02,hadoop03</value>
    </property>
    <!-- ZooKeeper快照的存储位置 -->
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/Data/zookeeper</value>
    </property>
    <!-- V2.1版本,在分布式情况下, 设置为false -->
    <property>
        <name>hbase.unsafe.stream.capability.enforce</name>
        <value>false</value>
    </property>
</configuration>

3.配置环境变量

vim /etc/profile.d/hbase.sh 
export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:${HBASE_HOME}/bin:${HBASE_HOME}/sbin

4.复制jar包到lib

cp /usr/local/hbase/lib/client-facing-thirdparty/htrace-core-3.1.0-incubating.jar /usr/local/hbase/lib/  #如果你后续需要使用phoenix的话需要拷贝

5.修改regionservers文件

vim /usr/local/hbase/conf/regionservers 
hadoop01
hadoop02
hadoop03

6.同步配置

#加载环境变量和软链参考上面步骤
scp -r /etc/profile.d/hbase.sh hadoop02:/etc/profile.d/
scp -r /usr/local/hbase-2.1.0/ hadoop02:/usr/local/
scp -r /etc/profile.d/hbase.sh hadoop03:/etc/profile.d/
scp -r /usr/local/hbase-2.1.0/ hadoop03:/usr/local/

7.启动HBase

#所有节点
start-hbase.sh

三、验证

hbase shell客户端

hbase shell
hbase(main):001:0> status
1 active master, 2 backup masters, 3 servers, 0 dead, 0.6667 average load

hbase shell客户端

http://hadoop01:16010/

四、指定backup master 

#如果我们需要指定backup server那么还是可以通过1.X版本通过配置文件的方式添加
vim /usr/local/hbase/conf/backup-masters hadoop02 hadoop03

#同步到其他节点重启服务即可