欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Hadoop 集群 常见问题

程序员文章站 2024-01-11 23:20:17
...

本文所有的问题都是 Hadoop 集群(2台以上机器)里遇到的问题。如果是单机模式,本文不一定有参考意义。

显示 INFO mapreduce.Job: Running job 以后卡住不动

请检查 /etc/hosts 里面的 IP地址对应的机器名是否和真正的机器名对应
修改linux 机器名 可以修改 /etc/hostname 然后 reboot

使用hadoop streaming 遇到 subprocess failed with code 127 的问题

错误信息如下

18/02/10 21:00:01 INFO mapreduce.Job: Task Id : attempt_1518289466043_0016_m_000001_0, Status : FAILED
Error: java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 127
    at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:325)
    at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:538)
    at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)
    at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)
    at org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:459)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:177)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:422)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1886)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:171)


首先确认mapper 和reducer 的第一行都是

#!/usr/bin/env python

然后确认每个机器的的python可执行文件在 /usr/bin/python
(我当时的问题是有一个机器没有 /usr/bin/python 只有 /usr/bin/python3)