HBase2.2.2安装时的问题

HBase2.2.2安装时的问题

前言

大数据实验在安装Hadoop后熟悉HBase操作时安装HBase,在安装后使用hbase version 查看是否安装成功时出现问题。
环境:Ubuntu20.04 + Hadoop3.2.3 + HBase2.2.2

问题1

使用hbase version命令之后出现如下问题:

/hone/hadoop/hadoop3/hadoop-3.2.3/libexec/hadoop-functions.sh:行2366:HADOoP_oRG.APACHE.HADOOP .HBASE.uTIL.GETJAVAPROPERTY_uSER:无效的变量名
/hone/hadoop/hadoop3/hadoop-3.2.3/libexec/hadoop-functions sh:行2461: HADOoP_oRG.APACHE.HADOOP .HBASE.uTIL.GETJAVAPROPERTY_oPTS:无效的变量名
错误:找不到或无法加载主类org.apache.hadoop.hbase.util.GetJavaProperty

在这里插入图片描述
原因: 中文意思:无效变量名,错误:找不到或无法加载主类,可能是Hadoop和Hbase包冲突所致或者 Hadoop 中的配置文件与 Hbase 不兼容。

解决方法: Hbase 自带是有 Hadoop 中的依赖文件的,我们让 Hbase 不使用本地 Hadoop 中的文件,使用自带的配置文件即可。

(1)推荐修改自己的hbase安装目录的conf下的hbase-env文件,删去最后一行开头的#注释保存退出即可。

 vim /home/hadoop/hbase/hbase-2.2.2/conf/hbase-env.sh

在这里插入图片描述

 export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true
 #解决hadoop和hbase的jar冲突问题,这个就是让hbase不扫描hadoop的jar包。

在这里插入图片描述
参考:原文1原文2
(2)也可以在配置环境变量的~/.bashrc 文件中注释掉Hadoop有关的配置(在相关配置开始加#注释该行),但是这样使用Hadoop时就需要进入到其安装目录下不方便。

 vim ~/.bashrc  #当前用户的配置文件
 source ~/.bashrc #让配置立即生效

在这里插入图片描述
如果没有生效,可能是由于使用的是当前用户的配置文件,所以要重新打开一个终端,这时才会读取该配置文件,配置也才会真正生效。然后用hadoop version命令查看如果显示未找到命令就是注释掉了。
参考:原文

问题2

在解决上面的问题1时,修改之后再输入hbase version命令时,报以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
	at org.apache.hadoop.hbase.util.VersionInfo.<clinit>(VersionInfo.java:35)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 1 more

原因: 百度之后:一个常见的java程序报错的格式(即某个包找不到),原以为是环境变量配置或者配置文件的问题。如果是java程序错误,应该不是配置错误,多半是命令本身出现了错误,猜测是文件损坏了。于是直接将hbase重新下载,最后解决了问题。
而我在使用tar命令解压时就出现了问题3(应该是断网的原因,没有下载完整的压缩包),刚开始没有管以为没影响,结果出错半天没有解决还以为是环境变量配置或者版本不兼容问题。
解决方法: 所以最后就是重新下载完好的压缩包解压之后再没有报错。
参考: 原文

问题3

在执行tar命令时出现以下问题:

gzip: stdin: unexpected end of file
tar: 归档文件中异常的 EOF
tar: 归档文件中异常的 EOF
tar: Error is not recoverable: exiting now

在这里插入图片描述
原因: 在下载安装包的时候,安装包没有下载完整
解决方法: 重新下载安装包解压。
参考: 原文

问题4

启动HBase之后输入hbase shell命令之后出现以下警告:

2022-04-24 18:21:56,153 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

在这里插入图片描述
原因: 百度之后:在hadoop包中搜索发现,java.library.path被定义为$JAVA_LIBRARY_PATH,但是我们没有定义JAVA_LIBRARY_PATH,
配置这个环境变量就可以了。

解决方法:
进入编辑配置环境变量:

vim ~/.bashrc 

加入以下内容($HADOOP_HOME就是你的hadoop安装目录配置的环境变量):

export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native

保存并退出,输入以下命令让配置生效:

source ~/.bashrc

参考: 原文

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值