Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 792|回复: 0

Hive提交的MapReduce任务执行中段挂起(从Running状态跳回为Accepted状态)问题解决记录

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-5-19 01:19:59 | 显示全部楼层 |阅读模式

     一个用Java写的计算程序通过JDBC的方式连接Hive数据库,执行SQL查询语句查询数据。结果对应的MapReduce任务执行到Map 18% Reduce xx%之后,所有的进度输出都变为了Map 0% Reduce 0%

    在排查Java语句无问题后,kill掉了Job,由于Job的log已经不可查,直接尝试重新运行程序

    新的Hive查询创建的MapReduce任务阻塞在了Accepted状态,无法开始Running

    仔细检查了Hadoop的Web页面,发现当前集群的5个节点都变为了Unhealthy状态,可用的Memory和VCore都为0,推测应是资源不足的原因导致的任务无法开始执行

    用“Hadoop Unhealthy”作为关键词,百度到的网页,有一些的做法是重启Yarn的NodeManager和ResourceManager,然而之前已经做过多次重启操作,并无效果

    又找到了一篇文章,提到了Unhealthy原因是bad file,遂查看本集群的Unhealthy原因,发现也是bad file(包括local-file和log-file),确定为是剩余存储空间不足,导致yarn将五个节点都标记为不可用,因此整个集群处于无资源可以执行任务的状态

    集群的5个节点,使用磁盘比例均达到90%以上,甚至更多,由于暂时无法进行数据转移和删除操作,找到了临时解决方法——提高节点健康度检查中磁盘占用的最大值,参考链接:http://stackoverflow.com/questions/29010039/yarn-unhealthy-nodes

     

    更改$HADOOP_HOME/etc/hadoop/目录下的yarn-site.xml文件,增加property:

     <property>
         <name>yarn.nodemanager.disk-health-checker.min-healthy-disks</name>
         <value>0.0</value>
      </property>
      <property>
         <name>yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage</name>
         <value>99.0</value>
     </property>

    为了为每个节点磁盘稍稍预留空间,此处的最大值设为了99%。

    更改后,执行stop-yarn.sh和start-yarn.sh,重启NodeManager和ResourceManager,在Hadoop的Web页面刷新(http://namenode:8088//),可以看到节点重新回到了Headthy状态,有了可用的Memory和VCore资源,Job可以正常执行了。

     

    不过以上还是权宜之计,为了让集群可以健康稳定的运行,还是需要及时对集群的磁盘进行清理,备份不常用的数据or补充存储设备

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-6 12:16 , Processed in 0.061302 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表