首页 > 解决方案 > MapReduce 作业未在 HADOOP 2.6.0(多节点集群)上运行

问题描述

我已经在 4 台机器(1 台主机和 3 台从机)上成功完成了 Hadoop 2.6.0 多节点集群设置。但是,当我尝试在集群上运行一个简单的字数统计作业时,它会卡住。

它卡在这里:

:~$ hadoop jar ~/MY_MAP_JARS/wordcount_f2.jar /input/crime /output/cc1
18/07/31 02:25:04 INFO client.RMProxy: Connecting to ResourceManager at master/192.168.10.150:8032
18/07/31 02:25:06 WARN mapreduce.JobSubmitter: Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this.
18/07/31 02:25:10 INFO input.FileInputFormat: Total input paths to process : 1
18/07/31 02:25:11 INFO mapreduce.JobSubmitter: number of splits:1
18/07/31 02:25:11 INFO Configuration.deprecation: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address
18/07/31 02:25:12 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1533029038340_0001
18/07/31 02:25:13 INFO impl.YarnClientImpl: Submitted application application_1533029038340_0001
18/07/31 02:25:14 INFO mapreduce.Job: The url to track the job: http://master:8088/proxy/application_1533029038340_0001/
18/07/31 02:25:14 INFO mapreduce.Job: Running job: job_1533029038340_0001

有时它停留在地图阶段:

18/07/31 02:27:53 INFO mapreduce.Job: Running job: job_1533029038340_0003
18/07/31 02:28:00 INFO mapreduce.Job: Job job_1533029038340_0003 running in uber mode : false
18/07/31 02:28:00 INFO mapreduce.Job:  map 0% reduce 0% 

有时 map 阶段完成但 reduce 阶段没有运行:

18/07/31 02:26:01 INFO mapreduce.Job: Running job: job_1533029038340_0002
18/07/31 02:26:12 INFO mapreduce.Job: Job job_1533029038340_0002 running in uber mode : false
18/07/31 02:26:12 INFO mapreduce.Job:  map 0% reduce 0%
18/07/31 02:26:22 INFO mapreduce.Job:  map 100% reduce 0%

集群详情:

在大师:

内存:6 GB | 硬盘:20 GB | 核心:4 | 守护进程:NameNode、资源管理器、辅助 NN(默认)

从属节点上:(所有 3 个从属节点具有相同的配置)

内存:4 GB | 硬盘:20 GB | 核心:4 | 守护进程:数据节点和节点管理器

我的hadoop conf文件:(我将下面提到的配置完全复制到我的所有节点(主节点和从节点)。

核心站点.xml:

<configuration>
 <property>
 <name>fs.default.name</name>
  <value>hdfs://master:50000</value>
 </property>
</configuration>

hdfs-site.xml:

<property>
  <name>dfs.replication</name>
  <value>2</value>
</property>

<property>
  <name>dfs.name.dir</name>
  <value>file:/home/aroon/hadoop_store260/name-dir</value>
</property>

<property>
 <name>dfs.data.dir</name>
 <value>file:/home/aroon/hadoop_store260/data-dir</value>
</property>

mapred-site.xml:

<property>
  <name>mapreduce.framework.name</name>
  <value>yarn</value>
</property>

纱线站点.xml:

<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>master</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>

奴隶

slave1
slave2
slave3

任何人都可以清楚地解决这个问题,因为提出和回答了类似的问题,其中大多数很难理解。如果有人能清楚地回答这个问题,它可能对像我这样的新手有所帮助。

提前感谢您的回答。

PS:容器日志(stderr)

请在此处找到容器错误日志:https ://pastebin.com/VpzfU7Dr

标签: hadoopmapreducehadoop-yarnhadoop2

解决方案


推荐阅读