我启动了一个由两个节点组成的小型集群,并注意到主节点完全空闲,而从节点完成所有工作。我想知道让master运行一些任务的方法是什么。我知道对于具有专用主节点的大型集群可能是必要的,但在 2 节点集群上,这似乎是一种矫枉过正。
感谢您的任何提示,
瓦茨拉夫
更多细节:
这两个盒子各有 2 个 CPU。集群已在 Amazon Elastic MapReduce 上设置,但我正在从命令行运行 hadoop。
我刚刚尝试过的集群有:
Hadoop 0.18
java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) Server VM (build 11.2-b01, mixed mode)
hadoop jar /home/hadoop/contrib/streaming/hadoop-0.18-streaming.jar \
-jobconf mapred.job.name=map_data \
-file /path/map.pl \
-mapper "map.pl x aaa" \
-reducer NONE \
-input /data/part-* \
-output /data/temp/mapped-data \
-jobconf mapred.output.compress=true
其中输入由 18 个文件组成。