(一):为软件定义数据中心而生的操作系统.pdfVIP

  • 5
  • 0
  • 约2.66千字
  • 约 3页
  • 2017-07-05 发布于天津
  • 举报

(一):为软件定义数据中心而生的操作系统.pdf

(一):为软件定义数据中心而生的操作系统.pdf

(⼀):为软件定义数据中⼼⽽⽣的操作系统 来源:http://www .infoq .com/cn/articles/analyse-mesos-part-0 1 【编者按】Mesos是Apache下的开源分布式资源管理框架,它被称为是 分布式系统的内核。Mesos最 是由加州⼤学伯克利分校的AMPLab开发 的,后在Twitter得到⼴泛使⽤。InfoQ接下来将会策划系列⽂章来为读者 剖析Mesos 。本⽂是整个系列的第⼀篇,简单介绍了Mesos的背景、历史 以及架构。 注:本⽂翻译⾃ loud Architect Musings ,InfoQ 中⽂站在获得作者授权的基础上对⽂ 章进⾏了翻译。 我讨厌“软件定义数据中⼼ (SDD )”这个词,并不是因为我质疑这个概念,⽽是我 发现很多公司都对这个词有误⽤,他们甚⾄直接把这个词拿来套⽤,并急于把⾃⼰定 位为下⼀代数据中⼼的创新者。具体来说,我认为,在商⽤x86硬件上运⾏软件 (应 ⽤)并不是什么SDD 解决⽅案,它也不具备虚拟化硬件到资源池的能⼒。真正的 SDD 底层基础架构应该可以从运⾏于其上的应⽤程序中抽象出来,并根据应⽤程序 不断变化的需求,动态且⾃动地分配、重新分配应⽤程序,然后运⾏于数据中⼼的不 同组件之中。 这就是为什么我⼀直兴奋地要在后⾯介绍Mesos ,⼀个Apache开源项⽬。为什么我对 Mesos如此兴奋?回想x86虚拟化之 对数据中⼼曾经的承诺:通过增加服务器利⽤率 使其更⾼效,通过从物理基础架构抽象应⽤使其更敏捷。虽然收获颇丰,但是以虚拟 机为单位,粒度仍不够精细,如果应⽤程序都过于庞⼤,那就难以充分实现这⼀承 诺。如今,飞速发展的容器技术、分布式应⽤程序和微服务技术正悄然改变着我们对 数据中⼼的运⾏和管理⽅式。 试想,可否整合数据中⼼中的所有资源,并将它们放在⼀个⼤的虚拟池⾥,代替单独 的物理服务器;然后开放诸如 PU 、内存和I/O这些基本资源⽽不是虚拟机?同样,可 否把应⽤程序拆分成⼩的、隔离的任务单位,从⽽根据数据中⼼应⽤的需求,从虚拟 数据中⼼池中动态分配任务资源?就像操作系统将P 的处理器和RAM放⼊资源池, 使其可以为不同的进程协调分配和释放资源。进⼀步讲,我们可以把Mesos作为操作 系统内核,然后将数据中⼼看为P 。这也是正是我想说的:Mesos正在改变数据中 ⼼,它让真正的SDD 成为现实。 接下来我先介绍下Mesos的历史。Mesos的起源于Google的数据中⼼资源管理系统 Borg 。你可以从WIRED杂志的这篇⽂章中了解更多关于Borg起源的信息及它对Mesos 影响。Twitter从Google的Borg系统中得到启发,然后就开发⼀个类似的资源管理系统 来帮助他们摆脱可怕的“失败之鲸” (译者注:见上图)。后来他们注意到加州⼤学伯 克利分校AMPLab正在开发的名为Mesos的项⽬,这个项⽬的负责⼈是Ben Hindman , Ben是加州⼤学伯克利分校的博⼠研究⽣。后来Ben Hindman加⼊了Twitter ,负责开发 和部署Mesos 。现在Mesos管理着Twitter超过30 ,0000 台服务器上的应⽤部署,“失败之 鲸”已成往事。其他公司纷⾄沓来,也部署了Mesos ,⽐如Airbnb (空中⾷宿⽹)、 eBay (电⼦港湾)和Netflix 。 Mesos是如何让Twitter和Airbnb这样的公司,通过数据中⼼资源更⾼效的管理系统, 扩展应⽤的呢?我们从⼀个相当简单但很优雅的两级调度架构开始说起。 上图修改⾃Apache Mesos⽹站上的图⽚,如图所⽰,Mesos实现了两级调度架构,它 可以管理多种类型的应⽤程序。第⼀级调度是Master 的守护进程,管理Mesos集群中 所有节点上运⾏的Slave守护进程。集群由物理服务器或虚拟服务器组成,⽤于运⾏应 ⽤程序的任务,⽐如Hadoop和MPI作业。第⼆级调度由被称作Framework 的“组件”组 成。Framework包括调度器 (Scheduler )和执⾏器 (Executor )进程,其中每个节点上 都会运⾏执⾏器。Mesos能和不同类型的Framework通信,每种Framework 由相应的应 ⽤集群管理。上图中只展⽰了

文档评论(0)

1亿VIP精品文档

相关文档