Hadoop 3.3.6 ResourceManager启动失败问题求助
ResourceManager启动失败排查方案
环境信息
- 系统:Ubuntu 22.04
- Hadoop版本:3.3.6
- 已安装JDK版本:17、11
问题现象
执行启动命令:
cd hadoop/hadoop-3.3.6/sbin ./start-all.sh
命令输出提示ResourceManager已启动,但执行jps查看进程时,仅显示NameNode、SecondaryNameNode、DataNode和Jps进程,ResourceManager进程缺失。
排查步骤及解决方案
1. 锁定兼容的JDK版本
Hadoop 3.3.6官方仅支持JDK 8或JDK 11,JDK 17不在兼容列表内。系统多JDK共存时,Hadoop可能误调用JDK 17导致启动失败:
- 编辑
hadoop-3.3.6/etc/hadoop/hadoop-env.sh,指定JDK 11的绝对路径:export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # 替换为你的JDK11实际路径 export PATH=$JAVA_HOME/bin:$PATH - 执行
echo $JAVA_HOME验证配置生效,之后重启Hadoop服务。
2. 排查日志核心报错
从ResourceManager日志中提取关键错误,针对常见场景处理:
- 端口占用:ResourceManager默认使用8088(WebUI)、8032(服务端口),执行以下命令检查占用:
若有占用,杀死对应进程或修改lsof -i :8088 || netstat -tulpn | grep 8088yarn-site.xml中的端口配置。 - 权限不足:确保Hadoop运行用户对安装目录、日志目录拥有读写权限:
sudo chown -R your-hadoop-user:your-hadoop-group hadoop/hadoop-3.3.6 - 配置错误:检查
yarn-site.xml中ResourceManager核心配置是否正确,示例配置:<property> <name>yarn.resourcemanager.address</name> <value>localhost:8032</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>localhost:8088</value> </property>
3. 手动启动验证
直接启动ResourceManager,观察实时报错:
cd hadoop/hadoop-3.3.6/sbin ./yarn-daemon.sh start resourcemanager
实时查看日志定位问题:
tail -f hadoop-3.3.6/logs/hadoop-u22-resourcemanager-sdb5.log
内容的提问来源于stack exchange,提问作者Alwin Varghese
相关产品推荐
相关产品推荐

