运行Terasort时获取失败太多

问题描述 投票:0回答:1

我有一个8节点的Hadoop集群,每个节点有24个具有超线程的物理内核,因此,48个vCPU和256GB内存。

我正在尝试运行6TB Terasort工作。

问题:当我使用yarn.nodemanager.resource.cpu-vcores = 44(对于OS,DN,RM等48减去4)时,Terasort运行时没有错误。但是,当我尝试使用yarn.nodemanager.resource.cpu-vcores = 88过度订阅CPU时,我会得到几个map并减少错误。

所有地图失败都像“太多的提取失败......”。所有减少错误都像“......#Block没有足够数量的副本......”。

我见过THISTHIS链接。我检查了我的/ etc / hosts文件,并且还发现了我的net.core.somaxconn内核参数。

我不明白为什么我得到地图并减少过度订阅CPU的故障。

任何提示或建议都会有所帮助,并提前感谢。

hdfs yarn cpu-usage hadoop2 vcpu
1个回答
0
投票

我到了“Too many fetch ...”错误的底部。发生的事情是因为在运行我的7TB作业时服务器负载很重(请记住1TB作业总是成功运行),主站和从站之间没有足够的连接。我需要增加主服务器和从服务器之间的监听队列,这可以通过修改名为“somaxconn”的内核参数来完成。

默认情况下,rhel OS中的“somaxconn”设置为128。通过将其提升到1024,7TB terasort作业成功运行而没有失败。

希望这有助于某人。

© www.soinside.com 2019 - 2024. All rights reserved.