分享

Win7上用eclipse跑MR程序问题

大神求指教:
环境:虚拟机Hadoop2.4.1;主机Win7
目的:想用Win7上的eclipse连虚拟机做Mapreduce程序,但在运行时报这个问题,

                    Application application_1405737269667_0015 failed 2 times due to AM Container for appattempt_1405737269667_0015_000002 exited with  exitCode: 1 due to: Exception from container-launch: org.apache.hadoop.util.Shell$ExitCodeException: /bin/bash: line 0: fg: no job control                  
                  
                                      org.apache.hadoop.util.Shell$ExitCodeException: /bin/bash: line 0: fg: no job control                  
                  
                                              at org.apache.hadoop.util.Shell.runCommand(Shell.java:505)                  
                                              at org.apache.hadoop.util.Shell.run(Shell.java:418)                  
                                              at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:650)                  
                                              at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:195)                  
                                              at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:300)                  
                                              at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:81)                  
                                              at java.util.concurrent.FutureTask.run(FutureTask.java:262)                  
                                              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)                  
                                              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)                  
                                              at java.lang.Thread.run(Thread.java:745)                  
                  
                  
                                      Container exited with a non-zero exit code 1                  
                                      .Failing this attempt.. Failing the application.                  


之前有大神在坛子上说了这个问题,貌似是YARNRunner.java的问题,且apache上也有对2.2版本的patch,但是对于2.4怎么改没有说,自己对Hadoop调试这块还不是很熟,不知道有没有已经编译好的class可以直接覆盖或者相关的文档可以参考的?

已有(3)人评论

跳转到指定楼层
sstutu 发表于 2014-7-20 00:13:50


参考这个:
/bin/bash: line 0: fg: no job control常见解决方法

回复

使用道具 举报

chenyang 发表于 2014-8-5 15:53:36
在hadoop2.4.1伪分布环境中,用MyEclipse10和相应的插件,运行hadoop自带的WordCount程序,先前出现”/bin/bash: line 0: fg: no job control",按照论坛里的方法重新编译了YARNRunner类,然后就总是出现以下错误:
2014-08-05_153007.jpg

用了各种方法,比如在mapred-site.xml和yarn-site.xml中设置“mapreduce.application.classpath"属性,但都没有解决上述问题,请问哪位可以帮忙解决一下。WordCount程序中的main方法如下:
public static void main(String[] args) throws Exception {
                Configuration conf = new Configuration();
                conf.set("mapreduce.framework.name", "yarn");
                conf.set("yarn.resourcemanager.address", "10.35.1.177:8032");
                args=new String[2];
                args[0]="hdfs://10.35.1.177:9000/test/aa";
                args[1]="hdfs://10.35.1.177:9000/test/output";
                String[] otherArgs = new GenericOptionsParser(conf, args)
                                .getRemainingArgs();
                if (otherArgs.length != 2) {
                        System.err.println("Usage: wordcount <in> <out>");
                        System.exit(2);
                }
                Job job = new Job(conf, "word count");
                job.setJarByClass(WordCount.class);
                job.setMapperClass(TokenizerMapper.class);
                job.setCombinerClass(IntSumReducer.class);
                job.setReducerClass(IntSumReducer.class);
                job.setOutputKeyClass(Text.class);
                job.setOutputValueClass(IntWritable.class);
                FileInputFormat.addInputPath(job, new Path(otherArgs[0]));
                FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));
                System.exit(job.waitForCompletion(true) ? 0 : 1);
}


回复

使用道具 举报

silvasong 发表于 2014-9-15 17:50:24
chenyang 发表于 2014-8-5 15:53
在hadoop2.4.1伪分布环境中,用MyEclipse10和相应的插件,运行hadoop自带的WordCount程序,先前出现”/bin/ ...

你好 你的问题解决了吗 我遇到了相同的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条