草庐IT

hadoop - Hbase master 启动失败异常Java.Lang.NoSuchMethodException

coder 2024-01-09 原文

我正在关注 Lars George Hbase 权威指南。我正在我的 Mountain Lion Macbook pro 上设置一个伪分布式集群。我下载了 Hadoop 存档 0.20.205.0,解压缩并做了一些小改动

dfs.replication=1

和其他人。当我在 hbase-site.xml 中进行更改以指定 localhost hdfs namenode 时

hbase.rootdir=hdfs://localhost:9000/hbase

还有一些其他属性,比如

zookeeperquorum, zookeeperdataDir, isDistributed=true

等等。

然而,在运行时

bin/start-hbase.sh

我在60010无法访问webui。运行时,jps,我注意到hbase的主人快死了。于是访问master log,发现抛出了这个异常

2629 2013-06-23 14:22:43,694 WARN org.apache.hadoop.hbase.util.FSUtils: Unable to create version file at hdfs://localhost:9000/hbase, retrying: java.io.IOException: java.lang.NoSuchMethodException: org.apache.hadoop.hdfs.protocol.Client     Protocol.create(java.lang.String, org.apache.hadoop.fs.permission.FsPermission, java.lang.String, boolean, boolean, short, long)
2630     at java.lang.Class.getMethod(Class.java:1607)
2631     at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:557)
2632     at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1388)
2633     at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1384)
2634     at java.security.AccessController.doPrivileged(Native Method)
2635     at javax.security.auth.Subject.doAs(Subject.java:396)
2636     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059)
2637     at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1382)

我不想重复每个人在发布此类问题时后缀的内容,我是新手请帮忙 :) 但我真的是新手做了我必须做的事情,找不到答案,任何指针都会不胜感激。

最佳答案

当你在伪(或完全)分布式模式下使用 HBase 时,它​​对 hadoop 库有一些依赖(比如 RPC 版本可能会因为协议(protocol)的变化而改变)。这就是为什么您的 Hase/lib 文件夹中需要适当的 Hadoop jar。

由于存在这些依赖关系,每个版本的 HBase 都在其 lib 目录下捆绑了一个 Hadoop jar 实例。可能是捆绑的 Hadoop 是在您的 HBase 发布时从某个分支创建的,这与您目前使用的分支不同。 例如, 您使用的是 hbase-0.94.7,与 hadoop-0.20.205 相比,它是最新的。这就是为什么集群上的 Hadoop 版本与您的 HBase 版本需要相匹配是至关重要的。

此外,我建议您使用最新稳定版本的 Hadoop 和 HBase 以避免这些问题。 0.20.205 现在已经很古老了。

希望这能回答您的问题。

关于hadoop - Hbase master 启动失败异常Java.Lang.NoSuchMethodException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17265626/

有关hadoop - Hbase master 启动失败异常Java.Lang.NoSuchMethodException的更多相关文章

  1. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  2. ruby-on-rails - 启动 Rails 服务器时 ImageMagick 的警告 - 2

    最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru

  3. ruby-on-rails - Rails - 乐观锁定总是触发 StaleObjectError 异常 - 2

    我正在学习Rails,并阅读了关于乐观锁的内容。我已将类型为integer的lock_version列添加到我的articles表中。但现在每当我第一次尝试更新记录时,我都会收到StaleObjectError异常。这是我的迁移:classAddLockVersionToArticle当我尝试通过Rails控制台更新文章时:article=Article.first=>#我这样做:article.title="newtitle"article.save我明白了:(0.3ms)begintransaction(0.3ms)UPDATE"articles"SET"title"='dwdwd

  4. ruby - 即使失败也继续进行多主机测试 - 2

    我已经构建了一些serverspec代码来在多个主机上运行一组测试。问题是当任何测试失败时,测试会在当前主机停止。即使测试失败,我也希望它继续在所有主机上运行。Rakefile:namespace:specdotask:all=>hosts.map{|h|'spec:'+h.split('.')[0]}hosts.eachdo|host|begindesc"Runserverspecto#{host}"RSpec::Core::RakeTask.new(host)do|t|ENV['TARGET_HOST']=hostt.pattern="spec/cfengine3/*_spec.r

  5. ruby - #之间? Cooper 的 *Beginning Ruby* 中的错误或异常 - 2

    在Cooper的书BeginningRuby中,第166页有一个我无法重现的示例。classSongincludeComparableattr_accessor:lengthdef(other)@lengthother.lengthenddefinitialize(song_name,length)@song_name=song_name@length=lengthendenda=Song.new('Rockaroundtheclock',143)b=Song.new('BohemianRhapsody',544)c=Song.new('MinuteWaltz',60)a.betwee

  6. ruby - 在 Ruby 中重新分配常量时抛出异常? - 2

    我早就知道Ruby中的“常量”(即大写的变量名)不是真正常量。与其他编程语言一样,对对象的引用是唯一存储在变量/常量中的东西。(侧边栏:Ruby确实具有“卡住”引用对象不被修改的功能,据我所知,许多其他语言都没有提供这种功能。)所以这是我的问题:当您将一个值重新分配给常量时,您会收到如下警告:>>FOO='bar'=>"bar">>FOO='baz'(irb):2:warning:alreadyinitializedconstantFOO=>"baz"有没有办法强制Ruby抛出异常而不是打印警告?很难弄清楚为什么有时会发生重新分配。 最佳答案

  7. java - 从 JRuby 调用 Java 类的问题 - 2

    我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www

  8. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  9. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  10. UE4 源码阅读:从引擎启动到Receive Begin Play - 2

    一、引擎主循环UE版本:4.27一、引擎主循环的位置:Launch.cpp:GuardedMain函数二、、GuardedMain函数执行逻辑:1、EnginePreInit:加载大多数模块int32ErrorLevel=EnginePreInit(CmdLine);PreInit模块加载顺序:模块加载过程:(1)注册模块中定义的UObject,同时为每个类构造一个类默认对象(CDO,记录类的默认状态,作为模板用于子类实例创建)(2)调用模块的StartUpModule方法2、FEngineLoop::Init()1、检查Engine的配置文件找出使用了哪一个GameEngine类(UGame

随机推荐