hadoop 集群上的 mapreduce 作业失败,子进程失败,代码为 1
mapreduce job failes on hadoop cluster with subprocess failed with code 1
我有一个 Hadoop 3.2.2 集群,其中有 1 个 namenode/resourceManager 和 3 个 datanodes/NodeManagers。
这是我的 yarn-site 配置
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bd-1</value>
</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>
当我 运行 示例作业时
python mr_word_count.py -r hadoop -v hdfs:///user/hduser/testme.txt
我有这个错误
Error: java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 1
at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:326)
at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:539)
at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)
到目前为止我做了什么:
- 工作运行本地python
python mr_word_count.py testme.txt
- 将
#!/usr/bin/python
和# -*-coding:utf-8 -*
添加到脚本头
- chmod a+x mr_word_count.px
- 将 master 作为单节点实例启动,然后作业就可以工作了!
- 查看webUI登录,没有找到其他信息
我可以在 .mrjob.conf 中定义 python bin,但随后错误代码变为 126
在控制台中我看到 map 100% reduce 100%
在 WebUI 中,我还看到作业正在处理,CPU 作业消耗了内存。
我正在谷歌搜索和阅读 Whosebug/haddop 文档,因为 4 天了很多小时都没有结果。有什么想法可能是错误的吗?
我忘记在所有节点上安装 mr_job...
运行 这在所有节点上修复了问题:
pip3 install MRJob
我有一个 Hadoop 3.2.2 集群,其中有 1 个 namenode/resourceManager 和 3 个 datanodes/NodeManagers。
这是我的 yarn-site 配置
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bd-1</value>
</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>
当我 运行 示例作业时
python mr_word_count.py -r hadoop -v hdfs:///user/hduser/testme.txt
我有这个错误
Error: java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 1
at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:326)
at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:539)
at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)
到目前为止我做了什么:
- 工作运行本地python
python mr_word_count.py testme.txt
- 将
#!/usr/bin/python
和# -*-coding:utf-8 -*
添加到脚本头 - chmod a+x mr_word_count.px
- 将 master 作为单节点实例启动,然后作业就可以工作了!
- 查看webUI登录,没有找到其他信息
我可以在 .mrjob.conf 中定义 python bin,但随后错误代码变为 126
在控制台中我看到 map 100% reduce 100%
在 WebUI 中,我还看到作业正在处理,CPU 作业消耗了内存。
我正在谷歌搜索和阅读 Whosebug/haddop 文档,因为 4 天了很多小时都没有结果。有什么想法可能是错误的吗?
我忘记在所有节点上安装 mr_job...
运行 这在所有节点上修复了问题:
pip3 install MRJob