Hadoop - 重启datanode和tasktracker

时间:2013-11-26 04:45:14

标签: hadoop hdfs

我想关闭一个datanode和tasktracker,以便我在mapred-site.xml中做出的一些新更改生效,例如mapred.reduce.child.java.opts等。我该怎么办?去做?但是,由于我正在运行有效的工作,所以我不想关闭整个集群。

此外,如何确保namenode不会将“临时关闭”数据节点的相关数据块复制到另一个节点上

3 个答案:

答案 0 :(得分:12)

停止

您可以从NameNode的hadoop bin目录中停止DataNodes和TaskTrackers。

./hadoop-daemon.sh stop tasktracker 
./hadoop-daemon.sh stop datanode

因此,此脚本会检查hadoop的 conf 目录中的 slaves 文件以停止DataNodes,并与TaskTracker相同。

开始

此脚本再次检查hadoop的 conf 目录中的 slaves 文件,以启动DataNodes和TaskTrackers。

./hadoop-daemon.sh start tasktracker
./hadoop-daemon.sh start datanode

答案 1 :(得分:9)

在Hadoop 2.7.2中,tasktracker早已不复存在,手动重启奴隶上的服务:

yarn-daemon.sh stop nodemanager
hadoop-daemon.sh stop datanode
hadoop-daemon.sh start datanode
yarn-daemon.sh start nodemanager

答案 2 :(得分:3)

进入datanode / tasktracker机器并进入hadoop的bin目录。

调用

./hadoop-daemon.sh stop tasktracker

./hadoop-daemon.sh stop datanode

./hadoop-daemon.sh start datanode

./hadoop-daemon.sh start tasktracker

我不确定是否需要重新启动tasktracker才能使mapred-site.xml中的更改生效。请留下评论,以便我可以在需要时更正我的答案