、念安я 2024-06-11 10:57 采纳率: 0%
浏览 16

HBase shell启动有问题

HBase启动shell有问题


[root@node1 hbase-2.4.18]# bin/hbase shell
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/export/server/hadoop-3.3.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/export/server/hbase-2.4.18/lib/client-facing-thirdparty/slf4j-reload4j-1.7.33.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.4.18, ra1767f4d76859c0068720a6c1e5cb78282ebfe1e, Tue May 21 08:45:43 UTC 2024
Took 0.0019 seconds                                                                                                                                                                 
hbase:001:0> status 'simple'

ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet
    at org.apache.hadoop.hbase.master.HMaster.checkServiceStarted(HMaster.java:2838)
    at org.apache.hadoop.hbase.master.MasterRpcServices.isMasterRunning(MasterRpcServices.java:1166)
    at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
    at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:387)
    at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:132)
    at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:369)
    at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:349)

For usage try 'help "status"'

Took 9.6939 seconds                                                                                                                                                                 
hbase:002:0> 

日志显示

2024-06-11 10:48:17,595 INFO  [master/node1:16000:becomeActiveMaster] regionserver.HRegion: Creating {ENCODED => 1595e783b53d99cd5eef43b6debb2682, NAME => 'master:store,,1.1595e783b53d99cd5eef43b6debb2682.', STARTKEY => '', ENDKEY => ''}, tableDescriptor='master:store', {NAME => 'proc', BLOOMFILTER => 'ROW', IN_MEMORY => 'false', VERSIONS => '1', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', COMPRESSION => 'NONE', TTL => 'FOREVER', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}, under table dir hdfs://node1:8020/hbase/MasterData/data/master/store-tmp
2024-06-11 10:48:17,640 INFO  [master/node1:16000:becomeActiveMaster] regionserver.HRegion: Closing region master:store,,1.1595e783b53d99cd5eef43b6debb2682.
2024-06-11 10:48:17,641 INFO  [master/node1:16000:becomeActiveMaster] regionserver.HRegion: Closed master:store,,1.1595e783b53d99cd5eef43b6debb2682.
2024-06-11 10:48:17,668 INFO  [master/node1:16000:becomeActiveMaster] wal.AbstractFSWAL: WAL configuration: blocksize=256 MB, rollsize=128 MB, prefix=node1%2C16000%2C1718074094331, suffix=, logDir=hdfs://node1:8020/hbase/MasterData/WALs/node1,16000,1718074094331, archiveDir=hdfs://node1:8020/hbase/MasterData/oldWALs, maxLogs=10
2024-06-11 10:48:17,763 WARN  [RS-EventLoopGroup-1-3] concurrent.DefaultPromise: An exception was thrown by org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$4.operationComplete()
java.lang.IllegalArgumentException: object is not an instance of declaring class
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.hadoop.hbase.io.asyncfs.ProtobufDecoder.<init>(ProtobufDecoder.java:64)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper.processWriteBlockResponse(FanOutOneBlockAsyncDFSOutputHelper.java:342)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper.access$100(FanOutOneBlockAsyncDFSOutputHelper.java:112)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$4.operationComplete(FanOutOneBlockAsyncDFSOutputHelper.java:424)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.addListener(DefaultPromise.java:185)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper.initialize(FanOutOneBlockAsyncDFSOutputHelper.java:418)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper.access$300(FanOutOneBlockAsyncDFSOutputHelper.java:112)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$5.operationComplete(FanOutOneBlockAsyncDFSOutputHelper.java:476)
    at org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$5.operationComplete(FanOutOneBlockAsyncDFSOutputHelper.java:471)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:625)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:105)
    at org.apache.hbase.thirdparty.io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
    at org.apache.hbase.thirdparty.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.fulfillConnectPromise(AbstractEpollChannel.java:653)
    at org.apache.hbase.thirdparty.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:691)
    at org.apache.hbase.thirdparty.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:567)
    at org.apache.hbase.thirdparty.io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:499)
    at org.apache.hbase.thirdparty.io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:407)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
    at org.apache.hbase.thirdparty.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at org.apache.hbase.thirdparty.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.lang.Thread.run(Thread.java:748)
2024-06-11 10:48:17,766 WARN  [RS-EventLoopGroup-1-2] concurrent.DefaultPromise: An exception was thrown by org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$4.operationComplete()
java.lang.IllegalArgumentException: object is not an instance of declaring class


  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-11 10:57
    关注

    引自免费微信小程序:皆我百晓生

    从你提供的信息来看,HBase shell在启动时遇到了两个主要问题:SLF4J绑定冲突和ServerNotRunningYetException异常。

    解决SLF4J绑定冲突

    SLF4J(Simple Logging Facade for Java)绑定冲突是因为你的类路径中有多个SLF4J实现。这通常发生在有多个依赖库都包含了SLF4J绑定实现的情况下,比如log4j和reload4j。要解决这个问题,你需要确保只有一个SLF4J绑定被加载。以下是一种可能的解决方案:

    1. 移除多余的绑定

      • 找到hadoophbase目录下的slf4j-log4j12-1.7.25.jarslf4j-reload4j-1.7.33.jar文件。
      • 如果这些文件是在lib目录下作为依赖项存在,尝试从hadoophbaselib目录中移除其中一个或两个文件,具体取决于你的日志框架需求。
    2. 设置SLF4J绑定

      • hbase的配置目录中,找到或创建hbase-env.sh文件。
      • 添加以下行以显式设置SLF4J绑定:
        export HBASE_OPTS="$HBASE_OPTS -Dorg.slf4j.simpleLogger.defaultLogLevel=warn"
        
      • 或者,如果你想指定一个特定的绑定,可以添加:
        export HBASE_OPTS="$HBASE_OPTS -Dslf4j.impl=org.slf4j.impl.StaticLoggerBinder"
        

    解决ServerNotRunningYetException

    这个异常意味着HBase Master服务尚未完全启动。这可能是由于HBase集群的启动顺序不正确,或者Master服务在启动过程中遇到了问题。

    检查HBase服务状态

    首先,确认所有HBase服务(包括HMaster和HRegionServers)是否都已经启动。可以通过以下命令检查:

    jps
    

    你应该能看到HMasterHRegionServer进程。

    重新启动HBase服务

    如果服务没有运行,或者你怀疑有启动失败的情况,尝试停止并重新启动HBase服务。这可以通过以下命令完成:

    # 停止HBase服务
    sbin/stop-hbase.sh
    
    # 等待几秒钟,然后重新启动HBase服务
    sbin/start-hbase.sh
    

    在重新启动服务后,再次尝试通过hbase shell连接,看是否问题得到解决。

    检查日志文件

    检查HBase的日志文件,通常位于logs目录下,查看是否有更详细的错误信息,这将有助于确定启动失败的具体原因。

    处理IllegalArgumentException

    日志中的IllegalArgumentException提示可能与HBase的异步文件系统操作有关,这可能是由于版本兼容性问题或某些配置不正确导致的。确保你的HBase版本与Hadoop版本以及所有依赖库版本兼容,并检查相关配置是否正确无误。

    如果以上步骤都不能解决问题,建议检查HBase和Hadoop的配置文件,确保所有配置都是正确的,特别是那些与日志、网络和存储相关的设置。如果问题仍然存在,可能需要更深入地排查代码或寻求社区的帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月11日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见