gpt4 book ai didi

java - 无法在 hadoop 2.4.0 上运行 MapReduce 作业

转载 作者:可可西里 更新时间:2023-11-01 14:13:51 25 4
gpt4 key购买 nike

我是 hadoop 的新手,这是我的问题。我在 3 台机器的集群上配置了 hadoop 2.4.0 和 jdk1.7.60。我能够执行hadoop的所有命令。现在我已经修改了 wordcount 示例并创建了 jar 文件。我已经在 hadoop 1.2.1 上执行了这个 jar 文件并得到了结果。但是现在在 hadoop 2.4.0 上我没有得到任何结果。

用于执行的命令

$hadoop jar WordCount.jar WordCount /data/webdocs.dat /output

我从设置中收到以下消息:

14/06/29 19:35:18 INFO client.RMProxy: Connecting to ResourceManager at /192.168.2.140:8040
14/06/29 19:35:18 WARN mapreduce.JobSubmitter: Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this.
14/06/29 19:35:19 INFO input.FileInputFormat: Total input paths to process : 1
14/06/29 19:35:19 INFO mapreduce.JobSubmitter: number of splits:12
14/06/29 19:35:19 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1403905542893_0004
14/06/29 19:35:19 INFO impl.YarnClientImpl: Submitted application application_1403905542893_0004
14/06/29 19:35:19 INFO mapreduce.Job: The url to track the job: http://192.168.2.140:8088/proxy/application_1403905542893_0004/
14/06/29 19:35:19 INFO mapreduce.Job: Running job: job_1403905542893_0004

此时没有消息变化。我等了 15 到 20 分钟,但还是一样。

这是我在资源管理器的网页上看到的关于工作的内容:

State - ACCEPTED
FinalStatus - UNDEFINED
Progress - (progress bar in 0%)
Tracking UI - UNASSIGNED

Apps Submitted - 1
Apps Pending - 1
Apps Running - 0

我尝试执行其他 yarn 命令但得到相同的结果

$yarn jar WordCount.jar WordCount /data/webdocs.dat /output

这是 jps 的输出:

21485 NameNode
23142 DataNode
28504 Jps
21704 ResourceManager
22082 JobHistoryServer

我们将不胜感激任何帮助或指导。

最佳答案

我解决了这个问题。是hadoop配置文件的错误。resourcemanager 8040 端口绑定(bind)异常。

我从(旧的 yarn-site.xml)更改了 hadoop yarn-site.xml:

<configuration>
<!-- Site specific YARN configuration properties -->
<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>192.168.2.140:8025</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>192.168.2.140:8030</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>192.168.2.140:8040</value>
</property>
</configuration>

到(新的 yarn-site.xml):

<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>
</configuration>

我删除了 hadoop 配置中的另一行然后我 gace 以下命令启动 resourcemanager 和 nodemanager

$yarn-daemon.sh start nodemanager
$yarn-daemon.sh start resourcemanager

然后我尝试执行我的工作,它成功了。

关于java - 无法在 hadoop 2.4.0 上运行 MapReduce 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24481439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com