簡體   English   中英

在mapreduce中永無止境的工作

[英]never ending job in mapreduce

我已經在我的main方法中設置了一些MapReduce配置

configuration.set("mapreduce.jobtracker.address", "localhost:54311");
configuration.set("mapreduce.framework.name", "yarn");
configuration.set("yarn.resourcemanager.address", "localhost:8032");

現在,當我啟動mapreduce任務時,將跟蹤該過程(我可以在群集儀表板中看到它(偵聽端口8088的端口)),但是該過程從未完成。 它仍然在以下行被阻止:

15/06/30 15:56:17 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
15/06/30 15:56:17 INFO client.RMProxy: Connecting to ResourceManager at localhost/127.0.0.1:8032
15/06/30 15:56:18 WARN mapreduce.JobResourceUploader: Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this.
15/06/30 15:56:18 INFO input.FileInputFormat: Total input paths to process : 1
15/06/30 15:56:18 INFO mapreduce.JobSubmitter: number of splits:1
15/06/30 15:56:18 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1435241671439_0008
15/06/30 15:56:19 INFO impl.YarnClientImpl: Submitted application application_1435241671439_0008
15/06/30 15:56:19 INFO mapreduce.Job: The url to track the job: http://10.0.0.10:8088/proxy/application_1435241671439_0008/
15/06/30 15:56:19 INFO mapreduce.Job: Running job: job_1435241671439_0008

有人有主意嗎?

編輯:在我的yarn nodemanager日志中,我有此消息

org.apache.hadoop.yarn.server.nodemanager.containermanager.ContainerManagerImpl: Event EventType: KILL_CONTAINER sent to absent container container_1435241671439_0003_03_000001
2015-06-30 15:44:38,396 WARN org.apache.hadoop.yarn.server.nodemanager.containermanager.ContainerManagerImpl: Event EventType: KILL_CONTAINER sent to absent container container_1435241671439_0002_04_000001

編輯2:

我在yarn manager日志中也有一些較早發生的異常(對於先例mapreduce調用):

org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.net.BindException: Problem binding to [0.0.0.0:8040] java.net.BindException: Address already in use; For more details see: 

解決方案:我殺死了所有守護進程,然后重新啟動了hadoop 實際上,當我運行jps ,盡管我已經停止了它們,但我仍在獲取hadoop daemons 這是HADOOP_PID_DIR的不匹配

紗線節點管理的默認端口為8040。該錯誤表明該端口已在使用中。 如果沒有數據,請停止所有hadoop進程,可能是一次格式化namenode並嘗試再次運行作業。 從您的兩次編輯來看,問題肯定出在節點管理器上

解決方案:我殺死了所有守護進程,然后重新啟動了hadoop! 實際上,當我運行jps ,盡管我已經停止了它們,但我仍在獲取hadoop守護程序。 這與HADOOP_PID_DIR不匹配有關

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM