Yarn无法识别节点资源且MapReduce任务卡在accepted状态
Hadoop任务卡在ACCEPTED且ResourceManager无法识别节点排查方案
以下是可逐一验证的问题原因:
- 检查NodeManager进程状态
hdfs dfsadmin -report仅能验证HDFS DataNode进程的运行状态,与YARN的NodeManager(NM)进程完全独立。请在两台从节点执行jps命令,确认是否存在NodeManager进程。若进程不存在,先尝试启动NM进程,再查看NM启动日志排查启动失败原因。 - 核对YARN核心配置正确性
检查所有节点上的yarn-site.xml配置:yarn.resourcemanager.address不能配置为localhost或127.0.0.1,必须填写所有节点均可访问的ResourceManager节点公网/内网IP- 确认配置了
yarn.nodemanager.aux-services = mapreduce_shuffle,缺失该配置会导致NM无法正常向RM注册
- 验证端口与网络连通性
ResourceManager用于节点通信的8030、8031、8032端口必须对所有从节点开放,可在从节点执行nc -zv <RM节点IP> 8031验证连通性,若不通需要调整防火墙或安全组规则。 - 查看NodeManager运行日志
若RM无报错,错误日志大概率输出在从节点的NM日志中,默认路径为$HADOOP_HOME/logs/yarn-<用户名>-nodemanager-<主机名>.log,重点查找连接RM失败、注册被拒相关的报错信息。 - 检查调度器队列配置
若capacity-scheduler.xml中默认队列的资源配额配置为0,或提交任务的用户无对应队列的提交权限,也会导致任务一直处于ACCEPTED状态无法调度。
内容的提问来源于stack exchange,提问作者fecke9296
相关产品推荐
相关产品推荐

