默认情况下,hadoop 负载不均衡(任务数目不同),怎样让各个节点任务数目尽可能均衡呢?

默认情况下,hadoop yarn负载不均衡(任务数目不同),有的节点很多任务在跑,有的没有任务,怎样让各个节点任务数目尽可能均衡呢?

参与8

2同行回答

呱呱爱吃瓜呱呱爱吃瓜数据仓库工程师银行
默认情况下,资源调度器处于批调度模式下,即一个心跳会尽可能多的分配任务,这样,优先发送心跳过来的节点将会把任务领光(前提:任务数目远小于集群可以同时运行的任务数量),为了避免该情况发生,可以按照以下说明配置参数:如果采用的是 fair scheduler ,可在 yarn-site.xml 中,将参数 ya...显示全部

默认情况下,资源调度器处于批调度模式下,即一个心跳会尽可能多的分配任务,这样,优先发送心跳过来的节点将会把任务领光(前提:任务数目远小于集群可以同时运行的任务数量),为了避免该情况发生,可以按照以下说明配置参数:

如果采用的是 fair scheduler ,可在 yarn-site.xml 中,将参数 yarn.scheduler.fair.max.assign 设置为 1 (默认是 -1, )

如果采用的是 capacity scheduler (默认调度器),则不能配置,目前该调度器不带负载均衡之类的功能。

当然,从 hadoop 集群利用率角度看,该问题不算问题,因为一般情况下,用户任务数目要远远大于集群的并发处理能力的,也就是说,通常情况下,集群时刻处于忙碌状态,没有节点一直空闲着。

收起
银行 · 2020-02-07
浏览2018

提问者

Tamic
数据库架构师某保险

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-02-06
  • 关注会员:3 人
  • 问题浏览:3779
  • 最近回答:2020-04-25
  • X社区推广