出现其中任何一个问题,另一个问题大概率也会出现,也就是说二者出现问题的原因是一样的。

一般来说,到这一步其他的配置因该是没有问题的。

网上有很多办法:1.更改  /etc/host 下的映射

                             2.更改 core-site.xml 文件路径

                             3.更改 yarn-site.xml 里面的运行内存

                             4.更改集群分布式为本地模式(可以运行,但没有意义)                           

                             等等。。。。。

上面的办法我都有试过,虽然没有解决问题,但并不能说是错的,可以尝试,如果没有解决的话可以试试下面的办法。

造成这样问题的原因是: 

 hadoop 默认检查磁盘状况,一旦超过默认的90%就会导致数据节点拒绝执行mapreduce,通过在yarn-site.xml 设置更大的阈值,延迟节点拒绝mapreduce的情况。

解决办法

 在 yarn-site.xml文件中添加以下内容:

<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>100.0</value>
</property>

可以重起集群,不重启也能立即生效

更多细节问题可以参考原作者 重磅 解决 hadoop job 卡死 根源问题 - 简书 (jianshu.com)

更多推荐