hadoop无法连接到localhost

时间:2017-02-16 21:08:33

标签: hadoop hadoop2

我是hadoop的初学者。现在,我有一个maven项目,配置如下:

Configuration conf = new Configuration();
conf.set("mapred.job.tracker", "http://127.0.0.1:8088");
conf.set("yarn.resourcemanager.address", "http://127.0.0.1:50070");
conf.set("mapreduce.framework.name", "yarn");

但是当我在笔记本电脑上运行时,程序将停在

INFO client.RMProxy: Connecting to ResourceManager at /127.0.0.1:50070

如果我将配置更改为

Configuration conf = new Configuration();
conf.set("mapred.job.tracker", "http://localhost:8088");
conf.set("yarn.resourcemanager.address", "http://hoathost:50070");
conf.set("mapreduce.framework.name", "yarn");

该程序将停在

INFO client.RMProxy: Connecting to ResourceManager at localhost/127.0.0.1:50070

我可以在浏览器中看到127.0.0.1:50070页面,因此应该成功启动Hadoop。

有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

50070是HDFS Namenode webui端口,默认yarn.resourcemanager.address IPC端口是8032,尝试在代码中更新以下行。

conf.set(“yarn.resourcemanager.address”,“http://127.0.0.1:8032”);

答案 1 :(得分:0)

如果您的群集运行正常,则连接此群集的最简单方法可以是

  1. 将hadoop conf从$ HADOOP_CONF_DIR复制到本地目录
  2. 将配置文件加载到客户端Configuration
  3.   

    配置conf = new Configuration();

         

    conf.addResource(new Path(" file:///path/to/client/yarn-site.xml"));

         

    ...

    如果您使用HDP或CDH分发,您应该能够下载客户端配置包并在本地使用它们连接到群集。