Hadoop资源管理器不会启动

数据挖掘 apache-hadoop
2022-02-13 17:57:16

我是 Hadoop 的一个相对较新的用户(使用 2.4.1 版)。我在我的第一个节点上顺利安装了 hadoop,但我似乎无法让资源管理器在我的第二个节点上启动。

我通过将其添加到 yarn-env.sh 和 hadoop-env.sh 来清除一些“共享库”问题:

导出 HADOOP_HOME="/usr/local/hadoop"

导出 HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

我还将它添加到 hadoop-env.sh:

导出 HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native

根据 hortonworks 上这篇文章的建议http://hortonworks.com/community/forums/topic/hdfs-tmp-dir-issue/

这清除了我所有的错误信息;当我运行 /sbin/start-yarn.sh 我得到这个:

启动纱线守护进程

启动资源管理器,登录到 /usr/local/hadoop/logs/yarn-hduser-resourcemanager-HdNode.out

localhost:启动nodemanager,登录到/usr/local/hadoop/logs/yarn-hduser-nodemanager-HdNode.out

唯一的问题是,JPS 说资源管理器没有运行。

这里发生了什么?

2个回答

检查您的 JPS 版本并确保它与您正在运行的 java 版本相同。有时您从开箱即用的 jdk 安装、升级、设置 java bin 的替代方案开始,但仍然引用了原始 jps 二进制文件。

运行ps -ef |grep java并查找资源管理器线程。也许它实际上正在运行。如果是,请尝试update-alternatives --config jps查看 jps 指向的二进制文件,并将其与您正在使用的 java 二进制文件进行比较。

如果资源管理器没有运行,是时候做一些基本的 linux 故障排除了。检查日志文件并禁止检查实际命令输出。

在我现在查看的系统上,资源管理器的日志文件放置在 和目录hadoop-install/logs您的配置可能会将它们放在 /var/logs 或您拥有的位置。另外,请查看系统日志。yarn-username-resourcemanager-hostname.logyarn-user-resourcemanager-hostname.out

如果日志没有产生任何好的信息,这可能会发生,我的过程通常是尝试从启动脚本中找出命令行(通常通过在命令行前加上echo),然后尝试直接运行命令查看输出。


我之前实际上遇到过这个问题,但我不记得具体的问题。我确信同样的结果可以从各种问题中体现出来。考虑到您目前处于设置过程中,我相信这可能是一个较小的配置问题。

所以我永远无法通过查看我的日志找到错误。我最终用 CDH5 重新安装了它(这比安装“差”的 Hadoop 容易得多)现在一切正常!

我仍然无法将东西保存到 hdfs,但那是另一天的问题......