如何在不使用 SSH 的情况下运行 Hadoop

hadoop/bin 目录中的 start-all.sh 和 stop-all.sh 脚本将使用 SSH 启动一些 Hadoop 守护进程。
如果由于某种原因 SSH 在服务器上不可用,请按照以下步骤在不使用 SSH 的情况下运行 Hadoop。

目标是用“hadoop-daemon.sh”修改所有“hadoop-daemons.sh”。
“hadoop-daemons.sh”只是通过SSH运行“hadoop-daemon.sh”。

1.修改start-dfs.sh脚本:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start namenode $nameStartOpt
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR start datanode $dataStartOpt
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR --hosts masters start secondarynamenode

修改为:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start namenode $nameStartOpt
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start datanode $dataStartOpt
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR --hosts masters start secondarynamenode

2.修改stop-dfs.sh脚本:

将:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop namenode
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR stop datanode
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR --hosts masters stop secondarynamenode

修改为:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop namenode
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop datanode
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR --hosts masters stop secondarynamenode

3.修改start-mapred.sh脚本:

将:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start jobtracker
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR start tasktracker

修改为:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start jobtracker
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR start tasktracker

4.修改stop-mapred.sh脚本:

将:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop jobtracker
${bin}/hadoop-daemons.sh --config $HADOOP_CONF_DIR stop tasktracker

修改为:

${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop jobtracker
${bin}/hadoop-daemon.sh --config $HADOOP_CONF_DIR stop tasktracker

请注意,此更改后,start-all.sh 和 stop-all.sh 将不会远程启动/停止此服务器之外的任何其他 Hadoop 节点。
所有其他远程从站必须直接在这些服务器上手动启动/停止。

日期:2020-09-17 00:10:57 来源:oir作者:oir