当前位置: 首页 > 知识库问答 >
问题:

无法连接hadoop

伍捷
2023-03-14

连接到hadoop时,出现以下错误

线程“main”java.lang.AbstractMethodError中出现异常:org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider。getProxy()Lorg/apache/hadoop/io/retry/failoverproxy提供程序$ProxyInfo;位于org.apache.hadoop.io.retry.RetryInvocationHandler.java:73)位于org.apache.hadoop.io.retry.RetryInvocationHandler.RetryInvocationHandler.java:64)位于org.apache.hadoop.io.retry.RetryProxy.create(RetryProxy.java:58)位于org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:147)位于org.apache.hadoop.hdfs.dfscient。(dfscient.java:510)位于DFSClient。(DFSClient.java:453)在org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:136)在org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2653)在org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:92)在org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2687)在org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2669)位于org.apache.hadoop.fs.FileSystem.get(FileSystem.java:371)位于org.apache.hadoop.fs.FileSystem.get(FileSystem.java:170)位于hrumen.HTest.main(HTest.java:26)

以下是我的代码:

***Path corepath = new Path("/var/tmp/hactive/core-site.xml");
        Path sitepath = new Path("/var/tmp/hactive/hdfs-site.xml");
        Path yarnpath = new Path("/var/tmp/hactive/yarn-site.xml");
        Path mapredpath = new Path("/var/tmp/hactive/mapred-site.xml");

        Configuration hconf = new Configuration();
        hconf.addResource(corepath);
        hconf.addResource(sitepath);
        hconf.addResource(yarnpath);
        hconf.addResource(mapredpath);

        try{
            DFSAdmin dfadmin = new DFSAdmin(hconf);
            dfadmin.report();

        }
        catch(Exception e){
            //System.out.println("[Exception]: "+e);
            e.printStackTrace();
        }***

这里是hdfs-site.xml的一部分

...
    <property>
        <name>dfs.nameservices</name>
        <value>mycluster</value>
        <final>true</final>

    </property>
....

    <property>
        <name>dfs.client.failover.proxy.provider.mycluster</name>
        <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>

在core-site.xml

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://mycluster</value>
</property>

....

共有1个答案

齐高阳
2023-03-14

我在尝试运行我的应用程序(在Hortonworks中)时遇到了同样的问题。在被卡住后-这需要一段时间,因此添加此处以供将来参考-以下内容修复了该问题。

要么添加到pom。xml(注意:版本可能会有所不同,请相应设置):

<dependency>
   <groupId>org.apache.hadoop</groupId>
   <artifactId>hadoop-hdfs</artifactId>
   <version>2.8.1</version>
</dependency>

或添加:

/path/to/hadoop-hdfs-client-<version_number>.jar

到类路径,以便在运行时包含hadoop hdfs客户端jar。

 类似资料:
  • 问题内容: 我经常收到ServiceStack.Redis:无法连接:sPort:0或ServiceStack.Redis:无法连接:sPort:50071(或其他端口号)。 当我们的网站繁忙时,似乎会发生这种情况。Redis本身看起来很好,CPU或内存使用量并未真正增加。 我正在使用连接池,并尝试更改超时值,但未成功。 用法是这样的: 问题答案: 这是由于Redis在Hyper-V上作为虚拟机托

  • 问题内容: 我正在尝试使用Ruby on Rails运行Selenium的示例脚本。我必须使用代理运行它。这是我的代码: 我收到以下错误: 有人能帮我吗…?我已经尝试了好几个小时,却找不到问题…真的不知道该怎么办。 环境: Ubuntu 16.04 LTS,Firefox 45.0,rbenv 2.3.1 另一个问题:有人知道Selenium + Ruby on Rails的示例吗?我找不到真正好

  • 我无法使用我的应用程序甚至compass连接到mongoDB atlas,我收到了错误 连接11至cluster0-shard-00-02-uypd6。mongodb。净额:27017已结 这是我第一次尝试从本地连接,可能是LAN问题?在家里一切都很好

  • 我可以使用以下方式连接到stfp服务器: sftproot@44.333.22.1 然而,当我这样配置Spring时: 我得到以下信息: 原因:java。lang.IllegalArgumentException:org需要密码或私钥。springframework。util。明确肯定isTrue(Assert.java:65)位于org。springframework。整合。sftp。一场默认S

  • 我正在尝试连接到MySQL服务器,但出现无法处理的错误。 java.sql.SQLNonTransientConnectionException:无法创建到数据库服务器的连接。尝试重新连接3次。放弃。com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)com.mysql.cj.jdbc.excepti

  • 我真的想不通为什么我不能用下面的代码连接到我的Django项目内的JQuery。你能告诉我是什么原因吗?多谢! null null