找出每个节点的资源利用率并在集群中平均分配负载

用户456898

我想找出在Hadoop群集中每个节点上进行的资源利用率(CPU,RAM)和数据处理。

有没有办法使用MapReduce或HDFS命令找出分布在每个节点上的负载?

另外,如果一个节点繁忙(超载)而另一个节点承担的负载很少,那么Hadoop中是否有任何方法可以将多余的负载分配给空闲的节点?

苏西瓦

根据YARN,容器是逻辑执行单元模板,该模板是基于可从群集的每个节点获得的资源(cpu,内存)计算的。跨集群计算的容器数量定义了集群的最大并行执行能力。

您可能会从http://<rm>:8088/cluster/nodes页面中感觉到容器的最大利用率,并且可能会页面的第一个框中引用containers runningmemory used,请参阅下面的内容。在此处输入图片说明

要查看每个节点上准备的容器数以及与内存相关的指标,请参阅同一页面的第二个框,为此您将不需要任何命令行工具,请参阅下面的内容, 在此处输入图片说明

YARN rm已经足够智能,考虑到每个节点上的资源利用率,它将完美地平衡整个集群的负载。

因此,如果一个节点非常繁忙,则纱线rm调度程序将考虑机架感知策略,决定另一个节点,该节点更靠近具有输入拆分的节点。

您可以在Hadoop权威指南中阅读YARN:mapreduce作业的剖析。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章