43

我看到有几种方法可以启动 hadoop 生态系统,

  1. start-all.sh & stop-all.sh 说不推荐使用 start-dfs.sh 和 start-yarn.sh。

  2. start-dfs.sh, stop-dfs.sh and start-yarn.sh, stop-yarn.sh

  3. hadoop-daemon.sh namenode/datanode and yarn-deamon.sh resourcemanager

编辑:我认为每个命令都必须有一些特定的用例。

4

3 回答 3

67

start-all.sh & stop-all.sh :用于一次启动和停止 hadoop 守护进程。在主机上发出它将启动/停止集群所有节点上的守护进程。如您所见,已弃用。

start-dfs.sh、stop-dfs.sh 和 start-yarn.sh、stop-yarn.sh :与上面相同,但在主机的所有节点上分别启动/停止 HDFS 和 YARN 守护进程。建议现在在 start-all.sh 和 stop-all.sh 上使用这些命令

hadoop-daemon.sh namenode/datanode 和 yarn-deamon.sh resourcemanager :手动启动单个机器上的单个守护进程。您需要转到特定节点并发出这些命令。

用例:假设您已经向集群添加了一个新的 DN,并且您只需要在这台机器上启动 DN 守护程序,

bin/hadoop-daemon.sh start datanode

注意:如果你想从一台机器上启动所有节点上的所有守护进程,你应该启用 ssh。

希望这能回答您的问题。

于 2013-07-10T12:08:51.440 回答
7

从 Hadoop页面

start-all.sh 

这将在您的机器上启动 Namenode、Datanode、Jobtracker 和 Tasktracker。

start-dfs.sh

这将启动 HDFS,Namenode 运行在您运行命令的机器上。在这样的机器上,您需要start-mapred.sh单独启动作业跟踪器

start-all.sh/stop-all.sh必须在主节点上运行

您将start-all.sh单个节点集群上使用(即,您将在同一节点上拥有所有服务。namenode 也是数据节点并且是主节点)。

多节点设置中,

您将start-all.sh在主节点上使用,并在从属节点上启动必要的操作。

或者,

start-dfs.sh在您希望Namenode运行的节点上使用。这将启动HDFSNamenode运行在您运行命令的机器上,Datanodes运行在从属文件中列出的机器上。

start-mapred.sh在您计划运行Jobtracker的机器上使用。这将启动 Map/Reduce 集群,其中 Jobtracker 运行在您运行命令的机器上,Tasktracker运行在从属文件中列出的机器上。

hadoop-daemon.sh如 Tariq 所述,用于每个单独的节点。主节点不会在从属节点上启动服务。在单节点设置中,这将与start-all.sh. 在多节点设置中,您必须访问每个节点(主节点和从节点)并在每个节点上执行。

看看这个 start-all.sh它调用config后跟dfsmapred

于 2013-07-10T11:38:35.687 回答
0

开始

start-dfs.sh (starts the namenode and the datanode)
start-mapred.sh (starts the jobtracker and the tasktracker)

停止

stop-dfs.sh
stop-mapred.sh
于 2013-07-10T11:46:03.093 回答