我只是在Hadoop 2.6.0上运行一个字数MapReduce作业,share / hadoop / mapreduce / hadoop-mapreduce-examples-2.6.0.jar,我发现该作业已被接受,但始终处于待定状态。
我使用非常基本的伪分布式配置启动Hadoop:
<?xml version="1.0"?>
<!-- core-site.xml -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost/</value>
</property>
</configuration>
<?xml version="1.0"?>
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
<?xml version="1.0"?>
<!-- mapred-site.xml -->
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
<?xml version="1.0"?>
<!-- yarn-site.xml -->
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
我查看了我的日志,发现了一些错误。
在resourcemanager日志中:
2015-05-21 15:02:10,823 INFO org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNodeImpl: Node 192.168.11.2:54225 reported UNHEALTHY with details: 1/1 local-dirs are bad: /tmp/hadoop-stephen/nm-local-dir; 1/1 log-dirs are bad: /Users/stephen/devel/hadoop-2.6.0/logs/userlogs
在nodemanager日志中:
2015-05-21 15:02:09,716 ERROR org.apache.hadoop.yarn.server.nodemanager.LocalDirsHandlerService: Most of the disks failed. 1/1 local-dirs are bad: /tmp/hadoop-stephen/nm-local-dir; 1/1 log-dirs are bad: /Users/stephen/devel/hadoop-2.6.0/logs/userlogs
我甚至看到资源管理器页面中有1个不健康的节点(端口为8088)。即使我一次又一次地删除文件系统和hdfs namenode -format
,我也会看到相同的错误。
现在我只能猜到我的破坏/不健康的节点让我的MR工作总是在等待,如果我是对的,如何解决它?
(我可以使用相同的配置成功运行Hadoop 2.5.2。) (环境:Mac Yosemite,Oracle JDK 1.7.0_79)
由于