记一次 Centos7.6 基于 Hadoop3.x 集群部署 HBase 2.4.0 集群

一、基本信息

官网 http://hbase.apache.org/
官方文档 http://hbase.apache.org/book.html#arch.overview
w3cschool https://www.w3cschool.cn/hbase_doc/
易佰教程 https://www.yiibai.com/hbase
Hbase 版本与 Hadoop 的兼容性
在这里插入图片描述

二、基础环境准备

1、Hadoop 完全分布式搭建
2、启动 hdfs 服务

[root@master ~]# /usr/bigdata/hadoop-3.3.0/sbin/start-dfs.sh

3、安装部署 Zookeeper 3.6.2 集群
4、启动各节点的 zkServer 服务

[root@slave1 ~]# /usr/bigdata/apache-zookeeper-3.6.2-bin/bin/zkServer.sh start
[root@slave2 ~]# /usr/bigdata/apache-zookeeper-3.6.2-bin/bin/zkServer.sh start
[root@slave3 ~]# /usr/bigdata/apache-zookeeper-3.6.2-bin/bin/zkServer.sh start

三、Hbase 安装部署

1、在 master 节点下载 hbase 安装包文件

[root@master ~]# wget -P /usr/bigdata/ https://mirror.bit.edu.cn/apache/hbase/2.4.0/hbase-2.4.0-bin.tar.gz

效果如下
在这里插入图片描述
2、进入文件下载目录

[root@master ~]# cd /usr/bigdata/

3、解压文件

[root@master bigdata]# tar zxf hbase-2.4.0-bin.tar.gz 

4、查看目录

[root@master bigdata]# ll

效果如下
在这里插入图片描述
5、进入 hbase 的配置文件目录

[root@master ~]# cd /usr/bigdata/hbase-2.4.0/conf

查看目录
在这里插入图片描述
6、编辑文件 hbase-env.sh

[root@master conf]# vim hbase-env.sh 

编辑文件

export JAVA_HOME="/usr/lib/jvm/java-1.8.0"
export HBASE_PID_DIR="/usr/bigdata/hbase-2.4.0/"
export HBASE_MANAGES_ZK=false

7、编辑文件 regionservers
官网说明
在这里插入图片描述

[root@master conf]# vim regionservers

编辑内容

slave1
slave2
slave3

8、编辑文件 backup-masters
官网说明
在这里插入图片描述

[root@master conf]# vim backup-masters

编辑内容

slave1

9、创建目录

[root@master ~]# mkdir /usr/bigdata/hbase-2.4.0/tmp

10、编辑文件 hbase-site.xml

[root@master conf]# vim hbase-site.xml

编辑内容

<configuration>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <!-- 设置HRegionServers共享目录 -->
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://master:9820/hbase</value>
  </property>
  <!-- 指定Zookeeper集群位置 -->
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>slave1:2181,slave2:2181,slave3:2181</value>
  </property>
  <!-- 指定独立Zookeeper安装路径 -->
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/bigdata/apache-zookeeper-3.6.2-bin</value>
  </property>
  <!-- 指定ZooKeeper集群端口 -->
  <property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
  </property>
  <property>
    <name>hbase.tmp.dir</name>
    <value>/usr/bigdata/hbase-2.4.0/tmp/</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
  <property>
    <name>dfs.datanode.max.transfer.threads</name>
    <value>4096</value>
  </property>
  <!-- 文件异步读写配置 -->
  <property>
    <name>hbase.wal.provider</name>
    <value>filesystem</value>
  </property>
</configuration>

11、把hadoop下的 hdfs-site.xml 文件拷贝到 /usr/bigdata/hbase-2.4.0/conf 目录下
官网说明
在这里插入图片描述

[root@master ~]# cp /usr/bigdata/hadoop-3.3.0/etc/hadoop/hdfs-site.xml /usr/bigdata/hbase-2.4.0/conf/

12、把配置好的 hbase 文件信息发售给集群的 hbase 子节点

[root@master ~]# scp -r /usr/bigdata/hbase-2.4.0 root@slave1:/usr/bigdata/
[root@master ~]# scp -r /usr/bigdata/hbase-2.4.0 root@slave2:/usr/bigdata/
[root@master ~]# scp -r /usr/bigdata/hbase-2.4.0 root@slave3:/usr/bigdata/

13、编辑系统环境变量

[root@master ~]# vim /etc/profile

14、编辑内容

export JAVA_HOME="/usr/lib/jvm/java-1.8.0"
export JRE_HOME="/usr/lib/jvm/java-1.8.0/jre"
export HADOOP_HOME="/usr/bigdata/hadoop-3.3.0"
export HBASE_HOME="/usr/bigdata/hbase-2.4.0"

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$HADOOP_HOME/share/hadoop/common/*:$HADOOP_HOME/share/hadoop/common/lib/*:$HBASE_HOME/lib

export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_HOME/lib/native"

15、时配置后的环境变量生效

[root@master ~]# source /etc/profile

16、查看 hbase 的 bin 目录

[root@master ~]# cd /usr/bigdata/hbase-2.4.0/bin

bin 目录文件列表如下
在这里插入图片描述
17、启动 hbase 服务

[root@master ~]# /usr/bigdata/hbase-2.4.0/bin/start-hbase.sh

启动效果如下
在这里插入图片描述
18、查看各个节点上 hbase 各服务的启动状态
在这里插入图片描述
19、查看服务所占端口

[root@master ~]# netstat -lntp

在这里插入图片描述
20、查看其在 HDFS 中的存储信息

[root@master ~]# hdfs dfs -ls /hbase[root@master ~]# hadoop fs -ls /hbase

存储文件列表如下
在这里插入图片描述
21、在任一节点 运行 hbase shell

[root@slave1 ~]# hbase shell

如下图
在这里插入图片描述
22、停止 hbase 服务

[root@master ~]# /usr/bigdata/hbase-2.4.0/bin/stop-hbase.sh

在这里插入图片描述

四、Hbase 基本命令

hbase:001:0> list
TABLE                                                                                                                                                                          
0 row(s)
Took 0.5481 seconds                                                                                                                                                            
=> []
hbase:002:0> create 'hbase_test','f1'
Created table hbase_test
Took 2.2060 seconds                                                                                                                                                            
=> Hbase::Table - hbase_test
hbase:003:0> list
TABLE                                                                                                                                                                          
hbase_test                                                                                                                                                                     
1 row(s)
Took 0.0107 seconds                                                                                                                                                            
=> ["hbase_test"]
hbase:004:0> create 'my_hbase_test','f1'
Created table my_hbase_test
Took 1.1406 seconds                                                                                                                                                            
=> Hbase::Table - my_hbase_test
hbase:005:0> list
TABLE                                                                                                                                                                          
hbase_test                                                                                                                                                                     
my_hbase_test                                                                                                                                                                  
2 row(s)
Took 0.0088 seconds                                                                                                                                                            
=> ["hbase_test", "my_hbase_test"]
hbase:006:0> describe 'hbase_test'
Table hbase_test is ENABLED                                                                                                                                                    
hbase_test                                                                                                                                                                     
COLUMN FAMILIES DESCRIPTION                                                                                                                                                    
{NAME => 'f1', BLOOMFILTER => 'ROW', IN_MEMORY => 'false', VERSIONS => '1', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', COMPRESSION => 'NONE', TTL => 'FOREVE
R', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}                                                                                 

1 row(s)
Quota is disabled
Took 0.1745 seconds                                                                                                                                                            
hbase:007:0> put 'hbase_test','123','f1:ame','abc'
Took 0.1139 seconds                                                                                                                                                            
hbase:008:0> scan 'hbase_test'
ROW                                          COLUMN+CELL                                                                                                                       
 123                                         column=f1:ame, timestamp=2020-12-26T01:04:30.178, value=abc                                                                       
1 row(s)
Took 0.0279 seconds

删除表,需先禁用表后,再执行对表的删除操作
disable ‘hbase_test’
drop ‘hbase_test’

五、浏览器查看服务的 WEB

Hbase master 节点的默认端口是 16000
官网
在这里插入图片描述

浏览器录入地址 http://192.168.11.21:16010/ 说明:192.168.11.21 是 master 节点的 IP
效果如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、报错及解决方案

启动 hbase 服务或者运行hbase shell命令的时候如果有如下报错
在这里插入图片描述
其原因可能有两种
1、hadoop 的 hdfs 启动状态为安全模式
hadoop 的 hdfs 启动状态为安全模式的解决方案
查看安全模式状态

[root@master ~]# hadoop dfsadmin -safemode get

状态结果

Safe mode is ON    (安全模式已开启)
Safe mode is OFF   (安全模式已关闭)

关闭安全模式

[root@master ~]# hadoop dfsadmin -safemode leave[root@master ~]# dhfs dfsadmin -safemode leave

重启各节点 Hbase 相关服务。

2、缺少 “文件异步读写配置” 的配置信息
查找日志信息

[root@master ~]# cat /usr/bigdata/hbase-2.4.0/logs/hbase-root-master-master.log

发现以下问题
在这里插入图片描述
编辑配置文件

[root@master ~]# vim /usr/bigdata/hbase-2.4.0/conf/hbase-site.xml

增加配置信息

<property>
  <name>hbase.wal.provider</name>
  <value>filesystem</value>
</property>

重启各节点 Hbase 相关服务。

参考:
https://blog.csdn.net/kadwf123/article/details/102343591
https://cloud.tencent.com/developer/article/1182109

七、扩展

入门
https://www.jianshu.com/p/b23800d9b227
讲解
https://blog.csdn.net/lukabruce/article/details/80624619

至此,Centos7.6 基于 Hadoop3.x 集群部署 HBase 2.4.0 集群操作完毕,希望能够对您有所帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值