关于 Apache Mesos 的一些想法
我关注 Apache Mesos 很长时间了。Apache Mesos 从 研究论文 开始,2010 年成为 Apache 孵化项目 ,后来从 ASF“毕业”,并于 2013 年建立商业实体 Mesosphere 。
过去的几个月,发生了许多事,因此我想,这是个好机会来写写关于 Mesos 和其生态 的文章。
关于 Mesos 和 YARN 已经有很多讨论了。我也看到过诸如“ Mesos 的资源请求模型非常落后 ”的评论,也注意到 Mesos 在过去几年变得更加流行。这里的关键因素之一也许是 Docker 天花乱坠般的宣传以及各自对于 协作层 的需要。在本篇的末尾,我们会再一次回到 Mesos vs. YARN 的话题。
我承认之前自己并没有完全理解 Mesos 的真正潜力,直到那天坐着读完 Mesos 研究论文 ,它包括设计哲学、资源分配、隔离保证和容错。
Mesos 应对的核心挑战是,在不了解一个框架的前提下如何满足对 框架 的 约束(constraints),这也是资源分配中最难以理解的地方。Mesos 处理资源的方式就像家长主持一个孩子的生日派对:好比你要为 15 个孩子 (==框架)提供食物(==资源),并且不可能知道他们的喜好(==安置倾向)。但你可以提供给他们一块披萨或者一碗芝麻菜,并且他们可以免费接受(现在 或一会之后)或者拒绝。而且,刚接一位客人下车的爸爸也许会告诉你,那人的小孩是素食主义者,那么提供牛肉汉堡(==过滤物)给那个小孩就说不通了。
有一个有趣的事实(虽然我认为这是公知的),Mesos 和 Spark 有一个共同点:Matei Zaharia——来自一个靠近加拿大安大略的小镇——他是加州伯克利分校 AMP 实验室 的学生,这个实验室为 Mesos 和 Spark 都做了巨大贡献。最近,他出任 Databricks 的 CTO,Databricks 是一家指导 Spark 的商业实体公司。
回到 Mesos vs. YARN——幸运的是最近这不再是一个二选一的问题了:使用 Myriad 项目 (由 eBay、Mesosphere 和 MapR 的共同开发,现在交由 ASF 孵化),你可以让它们在集群中共存并调度它们。简而言之,是一个 Mesos 框架用来 动态扩展 YARN 集群,并支持运行 Hadoop 应用,如 Spark 和非 Hadoop 应用,如 Node.js、Memcached、RoR 等。激动人心的时刻!
这就是我个人对于 Apache Mesos 的看法,写于 2015 年二月中旬。我会继续关注 Myriad,作为初学者的你如果还未尝试,或许你可以试试 测试驱动 Mesos 。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论