【问题标题】:Hadoop client.RMProxy: Connecting to ResourceManagerHadoop client.RMProxy:连接到 ResourceManager
【发布时间】:2022-02-21 10:06:25
【问题描述】:

Hadoop client.RMProxy:连接到 ResourceManager

我在 linux 上设置了单节点集群:http://tecadmin.net/setup-hadoop-2-4-single-node-cluster-on-linux/

当我像下面这样运行 mapreduce 应用程序时:hadoop jar hadoop-mapreduce-examples-2.6.0.jar grep input output 'dfs[a-z.]+

I got the ff INFO:
15/02/25 23:42:54 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
15/02/25 23:42:56 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
15/02/25 23:42:59 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 1 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
15/02/25 23:43:02 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 2 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)

jps:

5232 SecondaryNameNode
6482 RunJar
5878 NodeManager
6521 Jps
4905 NameNode
5759 ResourceManager
5023 DataNode

搭建单节点集群时如何连接ResourceManager?

我尝试添加到yarn-site.xml,但没有成功。

<property>
<name>yarn.resourcemanager.address</name>
<value>127.0.0.1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>127.0.0.1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>127.0.0.1:8031</value>
</property>

谢谢

【问题讨论】:

    标签: hadoop hadoop-yarn


    【解决方案1】:

    只需记住有关运行 Hadoop 的一个方面。给出了三种模式:单机、伪分布式和全分布式。

    单机和伪分布式在同一个节点上运行。实际上,它们仅在您的机器上运行。这不需要你显示的配置:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html

    先验,这就是 yarn-site.xml 中单个节点所需的全部内容:

    <configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    

    但也可以使用其他配置。我的伪分布式模式的纱线站点是这样的:

    <configuration>
    <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>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>localhost:8025</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>localhost:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>localhost:8050</value>
    </property>
    

    提示:确保您在配置文件中输入的 IP。我建议您将此 IP 添加到您的 etc/hosts 并提供主机名。因此,请在配置文件中使用主机名。

    【讨论】:

      【解决方案2】:

      此问题可能是由于 MapReduce 应用程序连接到 yarn-site.xml 中提到的资源管理器所需的 HADOOP_CONF_DIR 缺失所致。因此,在运行 MapReduce 作业之前,请尝试使用适当的 Hadoop Conf 目录手动设置/导出 HADOOP_CONF_DIR,例如 export HADOOP_CONF_DIR=/etc/hadoop/conf。 这种方式对我有用:)

      【讨论】:

        【解决方案3】:

        我在 Kubernetes 上运行 Hadoop 实例时遇到了同样的问题。问题在于错误消息本身“尝试连接到 ResourceManager 时出现连接错误”。

        Ps: ResourceManager 侦听端口 8032(除非更改)

        确保您在与 ResourceManager 相同的网络中运行 MapReduce 作业,因为它将侦听此地址:

        http://&lt;RESOURCE_MANAGER_IP&gt;:8032

        【讨论】:

          猜你喜欢
          • 2016-01-29
          • 1970-01-01
          • 2017-11-08
          • 1970-01-01
          • 2015-04-26
          • 2013-11-02
          • 1970-01-01
          • 2019-10-29
          • 1970-01-01
          相关资源
          最近更新 更多