首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行Terasort时获取失败次数过多

运行Terasort时获取失败次数过多
EN

Stack Overflow用户
提问于 2018-03-10 01:07:34
回答 1查看 58关注 0票数 0

我有一个8节点的Hadoop集群,其中每个节点都有24个带超线程的物理核心,即48个vCPU和256 48内存。

我正在尝试运行一个6TB的Terasort作业。

问题:当我使用YARN.NODEMAGER.resource.cpu-vcores=44( OS、DN、RM等为48减4)时,Terasort运行没有错误。但是,当我尝试使用map n.nodumager.resource.cpu-vcores=88超额订阅CPU时,我得到了几个map并减少了错误。

所有的map失败都类似于“获取失败次数太多……”。所有的reduce错误都类似于"....#Block没有足够数量的副本...“。

我看过THISTHIS链接。我检查了/etc/hosts文件,还修改了net.core.somaxconn内核参数。

我不明白为什么在CPU超额订阅的情况下,我会得到map并减少故障。

任何提示或建议都将是有帮助的,并提前感谢。

EN

回答 1

Stack Overflow用户

发布于 2018-05-18 22:21:16

我深入了解了“Too many…”这句话错误。发生的情况是,因为在运行我的7TB作业时服务器负载过重(请记住1TB作业总是成功运行),所以在主服务器和从服务器之间没有足够的连接。我需要增加主服务器和从服务器之间的监听队列,这可以通过修改名为“somaxconn”的内核参数来实现。

默认情况下,在rhel中将“somaxconn”设置为128。通过将其调整为1024,7TB terasort作业成功运行,没有失败。

希望这对某些人有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49198745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档