如何将 Hadoop MapReduce 作业限制为一定数量的节点?
Posted
技术标签:
【中文标题】如何将 Hadoop MapReduce 作业限制为一定数量的节点?【英文标题】:How to limit a Hadoop MapReduce job to a certain number of nodes? 【发布时间】:2015-04-29 10:53:41 【问题描述】:所以,基本上我有一个有 4 个数据节点的系统。但是,为了检查我的 hadoop 应用程序的可扩展性,我想用 1、2 和 4 个节点对其进行测试。那么,如何将 hadoop 使用的节点数限制为 1 或 2。我使用的是 hadoop 2.5.1,但我没有系统的管理员权限。另外,如何控制一个节点hadoop使用的核数?
【问题讨论】:
你检查过hadoop文档吗?我确信它是自给自足的。 @ChetanKinger 我很确定这样的事情不存在。你只有两个选择,编写一个调度程序来限制 n 个节点的放置,或者关闭剩余的节点并运行你的实验。 【参考方案1】:您需要管理员权限才能完成所有操作
如何将 hadoop 使用的节点数限制为 1 或 2。
Decommission 2-3 个节点
我怎样才能控制hadoop为一个节点使用的核心数量
在 yarn-site.xml 中设置下面的配置,为每个节点分配 8 个 vcore
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>8</value>
</property>
同时更新 capacity-scheduler.xml 中的 yarn.scheduler.capacity.resource-calculator 因为 DefaultResourceCalculator 只使用内存。
<property>
<name>yarn.scheduler.capacity.resource-calculator</name>
<value>org.apache.hadoop.yarn.util.resource.DominantResourceCalculator</value>
<description>
The ResourceCalculator implementation to be used to compare
Resources in the scheduler.
The default i.e. DefaultResourceCalculator only uses Memory while
DominantResourceCalculator uses dominant-resource to compare
multi-dimensional resources such as Memory, CPU etc.
</description> </property>
【讨论】:
以上是关于如何将 Hadoop MapReduce 作业限制为一定数量的节点?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Eclipse 调试 hadoop mapreduce 作业?