【问题标题】:Hadoop jobtracker's tracking url cannot accessHadoop jobtracker的tracking url无法访问
【发布时间】:2020-03-29 13:03:16
【问题描述】:

我已经在 wsl 中配置了我的 hadoop 系统并运行了 wordcount 示例。但是当我想查看job的历史时,发现tracking url无法访问。

作业运行良好,作业历史也在运行。

历史跟踪 url 是我的 wsl 主机名:8088/proxy/application_1585482453915_0002/。

你可以看到上面的url。

但我仍然可以访问 localhost:19888/jobhistory 来查看我的工作经历。

这个问题是怎么出现的?是不是配置问题?

我的 hadoop 版本是 2.7.1。

我的 core-site.xml

<property>
        <name>hadoop.tmp.dir</name>
        <value>file:/home/hadoop/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>

我的 hdfs-site.xml

<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/hadoop/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/home/hadoop/hadoop/tmp/dfs/data</value>
    </property>

我的 mapred-site.xml

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>localhost:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>    
        <value>localhost:19888</value>
    </property>

我的 yarn-site.xml

<property>
      <name>yarn.nodemanager.vmem-check-enabled</name>
      <value>false</value>
      <description>Whether virtual memory limits will be enforced for containers</description>
  </property>
  <property>
      <name>yarn.nodemanager.vmem-pmem-ratio</name>
      <value>4</value>
      <description>Ratio between virtual memory to physical memory when setting memory limits for containers</description>
  </property>
  <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
  </property>
  <property>
      <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
      <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  </property>

我的 /etc/hosts

127.0.0.1   localhost
127.0.1.1   DESKTOP-U1EOV4J.localdomain DESKTOP-U1EOV4J

【问题讨论】:

    标签: hadoop windows-subsystem-for-linux


    【解决方案1】:

    JobHistoryServer 守护程序在 localhost (127.0.0.1) 中运行,而跟踪 URL 是使用主机名构造的,因此重定向到 DESKTOP-U1EOV4J.localdomain (127.0.1.1)。

    对于伪分布式集群,将JobHistoryServer 的主机保留为0.0.0.0 更安全。

    更新mapred-site.xml中的作业历史服务器属性

       <property>
            <name>mapreduce.jobhistory.address</name>
            <value>0.0.0.0:10020</value>
        </property>
        <property>
            <name>mapreduce.jobhistory.webapp.address</name>    
            <value>0.0.0.0:19888</value>
        </property>
    

    然后重启JobHistoryServer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多