12 | 分布式调度架构之两层调度:物质文明、精神文明两手抓
该思维导图由 AI 生成,仅供参考
什么是两层调度?
- 深入了解
- 翻译
- 解释
- 总结
分布式系统中的两层调度架构是为了解决单体调度中的中央服务器单点瓶颈问题而提出的解决方案。该架构将资源和任务分开调度,一层调度器负责资源管理和分配,另一层调度器负责任务与资源的匹配。典型的两层调度器有Mesos和Hadoop YARN。Mesos实现了双层调度,其第一层调度器负责资源管理和分配,第二层调度器由框架完成任务调度。两层调度架构采用Resource Offer机制实现第一层和第二层调度的衔接,实现了任务调度与资源管理的分离。在资源分配算法方面,文章介绍了最大最小公平算法和主导资源公平算法,并对它们的执行流程和应用场景进行了详细说明。此外,文章还介绍了两层调度如何保证不同的业务不会互相干扰,强调了资源隔离的重要性,并指出Mesos通过容器实现了不同业务的资源隔离。总的来说,该文章深入浅出地介绍了分布式系统中的两层调度架构及相关资源分配算法,为读者提供了全面的技术视角和解决方案。文章通过Mesos为例,详细介绍了两层调度的架构设计和资源分配算法,强调了两层调度的优势和适用场景。同时,提出了思考题,引发读者对于两层调度架构的深入思考。
《分布式技术原理与算法解析》,新⼈⾸单¥59
全部留言(17)
- 最新
- 精选
- new life老师你好 两层调度的时候,第一层将资源信息已经上报给 第二层,第二层根据上报的资源信息与任务匹配,在匹配完,二层为什么不直接下发任务给对应的服务器,而是下发给一层,由一层去调度,这样不是多了一步吗?难道一层还会修改任务的分配?
作者回复: 这出于两点考虑:(1)架构的解偶性,第二层调度一般是框架的调度器,如果直接有第二层调度下发任务,则耦合很深,无法很少的适配不同的框架;(2)第二层调度统一管理资源的,如果上报给第二层调度的资源被使用,那么就不分配给其他框架,如果未被使用,第二层调度会将资源还回,第一层调度还可以上报给其他框架。
2019-10-2613 - 任鹏斌老师两层调度中master节点挂掉怎么办?会重新选主还是怎么做的?
作者回复: master节点的经典部署方式一般是一主两备,如果主故障了,会从备节点中选择一个主,也就是备升主。
2019-10-216 - 南国怎么理解全局资源最优呢?两层架构中的资源分配算法不是确保了一定程度上公平的分配资源吗?
作者回复: 全局资源最优,就是在针对用户提交的任务,根据任务所需资源以及集群现有资源实现最优化调度。两层架构中,由于framework只能得到集群中部分资源进行任务调度,无法实现最优调度,可以说是局部最优。
2020-04-172 - 亢(知行合一的路上)两层调度适用于多租户,像云计算的服务提供商,用户只说需要多少资源,只要满足就可以。 而单用户的话,如果想把资源利用到极致,那集中式更适合,可以统筹管理,而且还可以根据任务的优先级,进行资源的重新分配,这是双层调度做不到的,因为对每个租户都一视同仁。
作者回复: 👍👍
2020-03-082 - 张先生最大最小调度在没得到足够资源的情况下是释放已有资源还是等待其他进程释放资源?
作者回复: 这个可以根据你的业务进行设计,这里只是任务与资源的匹配,当任务没有分配到足够资源时,任务不能执行。可以根据你的任务需求,下一次匹配时重新进行匹配,或者锁住改部分资源等待其他任务释放资源。
2019-10-221 - blackpiglet第一种调度方式很容易产生碎片,第二种方式应该是追求当前资源利用最大化的算法,道理上讲,应该是不容易产生碎片的,但感觉要实现任务优先级的排序课程中介绍的还不够,但实际应用应该有更复杂的实现吧。2019-11-152
- 金时有个疑问,mesos DRF算法是否考虑了 每台机器的 cpu memory 。比如文中所说的两个任务分别需要 2c 8g和6c 2g。 如果每台机器的cpu是2, 内存是8g,有10个机器。那么这时是部署不成6c, 2g的任务的。 这种情况mesos 是如何处理的?2020-11-031
- 钱懵逼了,需要回头再看一遍,先跳过,否则挫败感太强烈😁2020-02-1621
- ost老师你好,有个地方不怎么明白 为什么说:第二层调度只能获得部分资源视图? 文章前面不是说过:Mesos Master 的 Scheduler 进程收集所有节点的空闲资源信息,并以Resource Offer 的方式将空闲资源发送给注册的框架;那么既然是收集所有节点的空闲资源,为什么二级调度又只能获得部分资源视图呢。2020-02-0511
- i am silly🐭有一个问题啊,他分配是根据所有节点的总资源进行分配的,那么如果有一个任务,任何一个节点的资源都不够执行这个任务,但是只要两个节点资源就可以执行这个任务,那么这个任务会分配资源吗?? 按照上面的算法的话是会分配的。2019-12-201