启动所有其他节点后,当我尝试启动nodemanager时,它似乎已被打开然后自动终止。如下所示:
Yitongs-MacBook-Pro:hadoop timyitong$ sbin/yarn-daemon.sh start nodemanager
starting nodemanager, logging to /Users/timyitong/Dev/hadoop/logs/yarn-timyitong-nodemanager-Yitongs-MacBook-Pro.local.out
Yitongs-MacBook-Pro:hadoop timyitong$ jps
8981 DataNode
9300 Jps
9139 JobHistoryServer
8932 NameNode
9038 ResourceManager
我没有得到任何错误,任何异常,但nodemanger不存在。当我试图阻止它时,它会像这样说(stopnodes.sh只是一个脚本),它确认了nodemanager不存在:
Yitongs-MacBook-Pro:hadoop timyitong$ sh stopnodes.sh
stopping namenode
stopping datanode
stopping resourcemanager
no nodemanager to stop
stopping historyserver
我不确定是不是因为nodemanager没有启动,当我尝试运行示例wordcount程序时,我总是让我的任务永远待定。
我的环境是OS X 10.8,Hadoop YARN 2.2.0。
我已经用export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)
解决了java版本问题。
答案 0 :(得分:5)
实际上,我使用bin/yarn nodemanger
直接启动服务器并发现了问题。它位于yarn-site.xml
我不应该设置yarn.nodemanager.aux-services
的名称,其中包含点{。},如mapreduce.shuffle
。将mapreduce.shuffle
更改为mapreduce_shuffle
后,问题就解决了。
真的不明白为什么它不允许点,因为我根据这个blog post配置了所有内容,这个设置似乎很好。
<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>
</configuration>
答案 1 :(得分:1)
mapreduce.shuffle应该是mapreduce_shuffle。请注意_(下划线而不是点)。另请查看http://www.thecloudavenue.com/2012/01/getting-started-with-nextgen-mapreduce.html