深入浅出 Mesos(五):成功的开源社区

阅读数:5233 2015 年 7 月 13 日

话题:语言 & 开发架构

【编者按】Mesos 是 Apache 下的开源分布式资源管理框架,它被称为是分布式系统的内核。Mesos 最初是由加州大学伯克利分校的 AMPLab 开发的,后在 Twitter 得到广泛使用。InfoQ 接下来将会策划系列文章来为读者剖析 Mesos。本文是整个系列的第一篇,简单介绍了 Mesos 的背景、历史以及架构。

注:本文翻译自Cloud Architect Musings,InfoQ 中文站在获得作者授权的基础上对文章进行了翻译。

最近我一直在写 Apache Mesos 的系列文章,目前已经完成的内容如下:

包括技术考量在内,我同样对 Mesos 项目本身的进展颇为兴奋。所以,我想从以技术为重点的文章中走出,做些关于 Mesos 项目的总体观察。正如我此前在推文中所说的,我对 Mesos 一直颇具深刻印象的是它的三个特点:

  1. 让人清楚地理解它的好处
  2. 易于管控的作用域
  3. 没有第二家厂商的实现

借此机会,我要说下近来大家对 Mesos 的认识,我发现人们已经非常容易掌握 Mesos 的概念,并了解其技术的价值。这对于正在发展并寻求扩大其覆盖面的项目来说是至关重要的。一个项目中的技术所带来的切实利益是非常重要的,它能让人心生向往并积极参与在社区中。

正如本系列第二篇文章中所述,我看到了在效率、商业敏捷性和可扩展性等方面,Mesos 带给数据中心的很清晰的好处。随着分布式应用程序和微服务的流行,越来越多的用户正在寻找一种技术,以帮助他们管理这些复杂的应用程序。因此,我们看到越来越多的人在关注着 Mesos 项目和Mesosphere,Mesosphere 是一家基于 Mesos 来构建商业产品的公司。

Mesos 项目的另一个重要优势是对其作用域的限制。Mesos 被设计成一个数据中心资源管理系统,Mesos 具备其主要功能,并避免超越设计理念的诱惑,至少在这之前,已经建立了一个坚实的基础。相信 Mesos 项目已完成了两件重要的事情,使 Mesos 不会过早迷失于作用域之外。

  • 建立了坚实的基础——诱惑是永远存在的,新的技术总是会不断地增加新的功能。当功能驱动开发并以代码的稳定性为代价时,问题随之而来,特别是疏于确保新增加的模块不会破坏已有模块的时候。

    Mesos 项目已经为此做出了很好的工作,Mesos 关注于修复社区中报出的缺陷并加强现有功能,并不鼓励人们不断地追逐闪亮的新事物。

  • 构建了强大的生态系统——为了专注于资源管理和控制 Mesos 架构的规模,该项目启用了插件化的 Framework 生态系统。在大多数情况下,Mesos 项目避免了为每个应用程序建立一个调度器或者严格限定一个隔离模块。这使得不同的社区可以参与其中,例如 Hadoop 社区和 Docker 社区都可以为 Mesos 开发插件。可以预见 Mesos 项目的好兆头,因为拥有一个强大的生态系统是其在软件领域成功的必要条件。

在做好培养一个强大生态系统的同时,Mesos 项目做到了避免让太多的厂商太早介入。相反,似乎有一个最终用户和厂商合作的极佳组合。这其中的主要原因是因为 Mesos 是为特定问题,提供解决方案的,而不是像 AWS 那样针对通用的问题。不管是什么原因,阻止大量厂商的介入以及该项目日趋成熟,使得 Mesos 社区的成长没有厂商政治干预、利益斗争,以及过度的商业诉求等包袱。我不是说这些挑战就没有,但 Mesos 至少不是一个基本上由厂商控制的项目,Mesos 可以以一个自然的步伐去成长。就像 Linux 项目,厂商的参与是以匹配客户的兴趣和使用,自然而然地发生的。

正如你所知道的,我很期待 Mesos 项目的未来,当更多的最终用户走进分布式系统的世界之时,希望可以看到 Mesos 在数据中心操作系统内核中发挥的价值。同时,我鼓励大家学习和参与进来。David Lester 在这篇采访中讲述了一些与此相关的方法,David Lester是 Twitter 的工程师和开源倡导者。

本系列的后续文章将讲述如何搭建 Mesos 集群、如何为部署和管理应用程序,集成和编写 Framework。同时,我鼓励读者提供反馈,特别是关于如果我打标的地方,如果你发现哪里不对,请反馈给我。我非全知,虚心求教,所以期待读者的校正和启示。我也会在twitter响应你的反馈,请关注 @hui_kenneth。

查看英文原文: APACHE MESOS: OPEN SOURCE COMMUNITY DONE RIGHT


感谢郭蕾对本文的策划和审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。