论文阅读笔记 - Mesos: A Platform for Fine-Grained ResourceSharing in the Data Center
作者:刘旭晖 Raymond 转载请注明出处
Email:colorant at 163.com
BLOG:http://blog.csdn.net/colorant/
更多论文阅读笔记 http://blog.csdn.net/colorant/article/details/8256145
== 目标问题 ==
为了提高资源的利用率以及满足不同应用的需求,在同一集群内会部署各种不同的分布式运算框架(cluster computing framework),他们有着各自的调度逻辑。 Mesos的目标就是在不同的framework之间高效的共享硬件资源,同时简化自身的调度逻辑,使其具有尽可能大的兼容性和可扩展性,以保证在大规模集群使用环境下的鲁棒性和对各种可能的运算框架的普遍适用性。
== 核心思想 ==
Mesos本质上是一个两级的分布式资源调度框架,Mesos框架本身并不负责资源最终的具体调度,而是将这一任务交给具体的运算框架的调度逻辑来执行。不同的运算框架可以自己的调度逻辑。当然,Mesos还是需要负责将可用资源提交给各个调度框架供他们调度,所以严格的来说,也是承担了预调度的任务。
要使用Mesos管理资源调度,具体的运算框架需要将自己的调度逻辑注册到Mesos的master节点上,另外还需要将具体执行任务的逻辑注册到每一个Mesos的Slave节点上。
每个Mesos Slave节点将本节点上的可用资源报告给Master节点,Master节点再将可用资源按一定的逻辑(如公平调度,优先级调度等)提供给各个具体的运算框架的调度进程。具体的调度进程在决定将这些资源部分或全部分配给特定的任务,同时把所分配的任务-资源关系列表返回给master节点,master节点进而将这些任务提交给对应的slave节点执行。
== 实现 ==
为了保证Master节点的可用性,Mesos使用zookeeper维护多个备用Master节点。同时Master节点仅维护最简单的必需的状态如活跃的Slave节点,注册的运算框架和运行中的任务等,当前主节点失效后,Slave和Scheduler将连接新的主节点并恢复这些状态。
master节点上的资源预调度逻辑也是模块化的,可以按需实现不同的策略。
不同的运算框架对所需的资源必然会有一定的偏好和要求,为了减轻Master节点的负担,具体的调度逻辑并不向Master节点注册预分配算法,如果Master节点提供给他们的资源不满足需求的话,具体的调度进程只是简单的拒绝这些资源。不过,为了提高效率,具体的调度进程还是可以注册类似白名单列表之类的Filter供Master节点预先筛除不满足要求的资源。
分配给任务特定资源和该任务实际使用的资源是两回事,如果不能有效的限制任务实际使用的资源,那么资源调度的意义大概会打折扣。Mesos在Linux环境下使用Linux container来限制任务所能使用的硬件资源。
== 相关研究,项目等 ==
YARN :做为Hadoop2.0使用的调度框架,同样采用两级的调度逻辑,解决类似的问题。
== 其它 ==
分布式调度系统的一个问题在于缺乏集中式的全局规划,可能导致各种非最优调度的情况。比如当规模大小不同的Job混合运行的时候,可能小Job的资源需求能够迅速得到满足而不断的得到执行,而大Job的资源很难得到满足而无法执行等。具体的就需要有各种对应的策略来解决这些问题(如在每个节点上设定最小保留资源等等)
总体而言,Mesos最适用于Job的任务持续时间短,资源需求可以灵活伸缩的运算框架,如MapReduce等,对于需要长时间占用大量资源类型的Job,其非全局式的资源调度可能较难实现近似最优的调度。Google的Omega调度框架则试图同时解决这些问题。
论文阅读笔记 - Mesos: A Platform for Fine-Grained ResourceSharing in the Data Center的更多相关文章
- 论文阅读笔记 - YARN : Architecture of Next Generation Apache Hadoop MapReduceFramework
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...
- 论文阅读笔记 Word Embeddings A Survey
论文阅读笔记 Word Embeddings A Survey 收获 Word Embedding 的定义 dense, distributed, fixed-length word vectors, ...
- 论文阅读笔记 Improved Word Representation Learning with Sememes
论文阅读笔记 Improved Word Representation Learning with Sememes 一句话概括本文工作 使用词汇资源--知网--来提升词嵌入的表征能力,并提出了三种基于 ...
- [置顶]
人工智能(深度学习)加速芯片论文阅读笔记 (已添加ISSCC17,FPGA17...ISCA17...)
这是一个导读,可以快速找到我记录的关于人工智能(深度学习)加速芯片论文阅读笔记. ISSCC 2017 Session14 Deep Learning Processors: ISSCC 2017关于 ...
- Nature/Science 论文阅读笔记
Nature/Science 论文阅读笔记 Unsupervised word embeddings capture latent knowledge from materials science l ...
- 论文阅读笔记(二十一)【CVPR2017】:Deep Spatial-Temporal Fusion Network for Video-Based Person Re-Identification
Introduction (1)Motivation: 当前CNN无法提取图像序列的关系特征:RNN较为忽视视频序列前期的帧信息,也缺乏对于步态等具体信息的提取:Siamese损失和Triplet损失 ...
- 论文阅读笔记(十八)【ITIP2019】:Dynamic Graph Co-Matching for Unsupervised Video-Based Person Re-Identification
论文阅读笔记(十七)ICCV2017的扩刊(会议论文[传送门]) 改进部分: (1)惩罚函数:原本由两部分组成的惩罚函数,改为只包含 Sequence Cost 函数: (2)对重新权重改进: ① P ...
- [论文阅读笔记] GEMSEC,Graph Embedding with Self Clustering
[论文阅读笔记] GEMSEC: Graph Embedding with Self Clustering 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问题 已经有一些工作在使用学习 ...
- [论文阅读笔记] metapath2vec: Scalable Representation Learning for Heterogeneous Networks
[论文阅读笔记] metapath2vec: Scalable Representation Learning for Heterogeneous Networks 本文结构 解决问题 主要贡献 算法 ...
随机推荐
- Unbuntu 14.04 下chrome browser bookmark 显示中文乱码解决方案
来源:http://blog.csdn.net/loveaborn/article/details/29579787 网上有人给出这个问题的解决是通过修改文件/etc/fonts/conf.d/49- ...
- 转:js包装DOM对象
我们在日常的应用中,使用Javascript大多数时间都是在用DOM ,以致于很多人都有一种看法就是DOM==JS,虽然这种看法是错误的,但是也可以说明DOM的重要性. 这就导致了我们在写JS的时候, ...
- SilkTest天龙八部系列6-用open agent进行测试
SilkTest支持两种测试模式,一种是用classic agent,另一种就是用我们今天要介绍的open agent. open agent可以提供和classic agent差不多的录制回放功能. ...
- Linux内核源代码解析之——我与神童聊Linux内核
本文原创为freas_1990,转载请标明出处:http://blog.csdn.net/freas_1990/article/details/11619609 我的朋友里,至少有2.5个神童. 有的 ...
- 01-Foundation简介、NSObject、copy、NSString
目录: 一.Foundation常用类 二.Foundation简介 三.NSObject 四.NSString 回到顶部 一.Foundation常用类 1 NSObject.NSString.NS ...
- mac下的应用程序发布 及 打包(Python写的脚本,可打包第三方库)
其实这个问题在网上能搜到大把的解决方案.大家的统一答案都是 otool -L yourapp.app/Contents/MacOS/yourapp 根据输出信息在运行 install_name_too ...
- android switch语句case expressions must be constant expressions
在项目中遇到这样的Exception:case expressions must be constant expressions public class StandingCityActivity e ...
- 基于visual Studio2013解决C语言竞赛题之0808打印链表
题目
- STL--G - For Fans of Statistics(两个推断条件-二分)
G - For Fans of Statistics Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & ...
- VC 2005 解决方案的目录结构设置和管理
VC 2005 解决方案的目录结构设置和管理 Roger (roger2yi@gmail.com) 一个中等规模的解决方案通常都会包含多个项目,其中一些项目产出静态库,一些产出动态库,一些用于 ...