【发布时间】:2014-11-10 15:41:06
【问题描述】:
我在一个有 10 多台机器的集群上运行 Hadoop 1.1.2。对于 HDFS 和 MapReduce,我想很好地向上和向下扩展。 “很好”,我的意思是我要求数据不会丢失(允许 HDFS 节点退役),并且运行任务的节点在关闭之前完成。
我注意到一旦退役完成,datanode 进程就会终止,这很好。这就是我删除节点的方法:
- 将节点添加到 mapred.exclude
- 将节点添加到 hdfs.exclude
$ hadoop mradmin -refreshNodes$ hadoop dfsadmin -refreshNodes$ hadoop-daemon.sh stop tasktracker
要重新添加节点(假设它已像上面那样删除),这就是我正在做的。
- 从 mapred.exclude 中删除
- 从 hdfs.exclude 中删除
$ hadoop mradmin -refreshNodes$ hadoop dfsadmin -refreshNodes$ hadoop-daemon.sh start tasktracker$ hadoop-daemon.sh start datanode
这是“很好”地扩大和缩小规模的正确方法吗?当缩小规模时,我注意到某些不走运的工作的工作持续时间急剧增加(因为他们在已删除节点上运行的任务需要重新安排)。
【问题讨论】:
标签: hadoop