摘要: 你知道大型的饺子馆是怎么煮饺子的吗?是这样煮吗?↓那你要让顾客喝西北风了!难道是很多个这种锅一起煮吗?↓呵呵,不是,你想赔死吗?其实他们用了一种神器↓为什么会酱紫?我们来分析一下大型饺子馆面对的需求↓ ...
你知道大型的饺子馆是怎么煮饺子的吗?
是这样煮吗?
↓
那你要让顾客喝西北风了!
难道是很多个这种锅一起煮吗?
↓
呵呵,不是,你想赔死吗?
其实
他们用了一种神器
↓
为什么会酱紫?
我们来分析一下大型饺子馆面对的需求
↓
这种情况下
不像我们自己在家吃饺子
不可能把所有的饺子放在一个大锅里面煮
道理你懂的……
但是,难道要每个订单一个锅来煮?
太浪费资源了吧
所以就有人发明了这种支持“虚拟化”锅
我们把煮水饺看成不同的任务
↓
水饺锅里面不同的格子执行不同的任务
格子并不绝对封闭,汤是互通的
这样
一锅就可以满足很多客人了
如果客人再多了怎么办?
多来几只饺子锅组成集群!
↓
好强大的煮饺子集群
不管有多少客人
不管有多复杂的煮饺子组合
都可以在集群里面完成了
好拉轰啊
所有的格子都被池化
大厨根据点菜需求
灵活分配不同的格子来完成任务
任何一个格子都可以用来煮任何一种水饺
有同学问
客人还想吃煎饺或者蒸饺怎么办?
不要紧,更奇葩的锅已经有人发明了
↓
不光可以煮,同时还可以煎和蒸
尼玛,黑科技真发达
“煮饺子集群”很牛逼
分配任务、具体操作的大厨更不简单
观摩一下他们是如何工作的吧
↓
好了,煮饺子的事情讲完了
这跟MESOS有毛线关系?
↓
Mesos是Apache下的开源分布式资源管理框架,它被称为是分布式系统的内核。
小黑羊观点>>
Mesos跟我们前面介绍的“煮饺子”体系有异曲同工之妙。
↓
↓
数据中心有很多计算任务需要执行,比如Hadoop任务(饺子A)、MPI任务(饺子B)、Storm任务(饺子C)、Spark任务(饺子D)。
但是要想灵活的部署这些任务,达到呼之则来、挥之则去的效果,却没辣么简单。
人们都希望动态、灵活的利用数据中心的计算资源,更细粒度的分发任务,这就需要一套资源管理和调度框架来达到目的。
最早的时候,Google用自己开发的Borg来做这些事,可那是人家“私营饺子馆”专利,不可能随便拿来用的。
后来,就有活雷锋开发了Mesos来做和Borg一样的事儿,而且还开源了。
↓
一张图看懂Mesos和煮饺子的关系
Mesos的角色分工与两层调度体系:
♢ Mesos master相当于煮水饺的厨师长,当然有备份的副厨师长做替补(Standby master),他们之间的出勤制度由酒店老板负责监督(ZooKeeper)。
♢ Mesos slave驻留在每个饺子锅上(可认为是负责值守每个锅的厨工),负责具体任务分发。
♢ 具体的计算任务被按需分配在“锅集群”中执行,比如Hadoop、MPI、Spark等等,他们相当于不同的煮饺子需求。
♢ 每个“锅”提供一定的资源隔离能力,饺子锅用的是隔离网,Mesos方案目前比较流行采用Docker来进行隔离。
♢ 针对每种口味的饺子,都有点饺子、包饺子、煮饺子、上饺子的工作调度流程,被称为“Framework”,mesos为了可以适应各品种饺子的“FrameWork”流程
饺子菜单——Mesos可以配合调用的“FrameWork”
MESOS的“煮饺子”任务调度过程:
① Slave 1(煮饺子师傅)向Master(厨师长)汇报其管理的饺子锅的空闲资源:4个CPU、4GB内存。
② Master(厨师长)检查Framework1(猪肉韭菜)目前的订单需求。
③ Framework1(猪肉韭菜)的当前订单需求是:煮两份饺子,分别是4两和3两,4两的需要用<2 CPUs, 1 GB RAM>的资源,3两的需要用<1 CPUs, 2 GB RAM>资源。
④ 最后,Master(厨师长)向Slave(煮饺子师傅)下发任务,开工!
MESOS的工作流程
这个“煮饺子”的Mesos系统什么好处呢?
Mesos管理的是计算集群,调度的是任务,是当下最为流行的“数据中心操作系统”。它把集群资源池化,按需动态调配,提高资源使用效率和敏捷性,Mesos能让资源利用率提升5倍以上。
与容器技术结合,可以轻松部署海量计算资源和微服务,让上层业务的可伸缩性得到极大提高,Mesos可在数十秒内完成上万Docker容器部署。
模块化、插件式架构,轻松耦合多种Framework,这使得Mesos在其所支持的宽泛领域中,业务迅速增长。
专业人士认为,Mesos具备问鼎数据中心资源管理首选平台的能力。
目前Twitter、Airbnb、eBay、Netflix包括Apple家的Siri,都用了Mesos来“煮饺子”。
国内豆瓣是最早用Mesos的,去哪儿网、爱奇艺、小米、360也都在尝试Mesos。
爱奇艺煮饺子大师傅杨成伟语:
“爱奇艺是国内互联网企业试用 Mesos 的先行者,最早将 Mesos 用于分布式转码服务,已经达到了800个节点。集群资源利用率已经高于40%,峰值时甚至超过了90%。”
而著名的创业公司Mesosphere是负责提供“煮饺子”解决方案的,跟他们类似的还有国内的初创公司数人科技。
|
http://it.dataguru.cn/article-8516-1.html
相关推荐
《Mesos实战》这本书主要涵盖了Apache Mesos的深入理解和实际应用,它是一个分布式系统内核,旨在简化数据中心的操作。在本书中,读者将学习到如何使用Mesos构建、管理和扩展大规模的分布式应用。 Mesos的核心理念...
Mesos 是一个强大的资源共享平台,设计用于在数据中心实现细粒度的资源共享,特别是针对多样化的集群计算框架,如 Hadoop 和 MPI。该平台的主要目标是提高集群的使用效率,避免因每个框架需要单独的数据复制而导致的...
根据提供的文件信息,本文将介绍Apache Mesos的核心概念和知识点。Mesos是一种分布式系统内核,由加州大学伯克利分校的AMP实验室开发,之后成为Apache开源项目。 首先,Mesos中文手册的目的是提供一个知识共享平台...
- **关键点:** Marathon的加入不仅增强了Mesos的功能,还提供了更灵活的服务发现和负载均衡机制,这对于提高系统的稳定性和可用性具有重要意义。 #### 四、测试结果与分析 通过对四个实验的结果进行对比分析,...
这一章节主要介绍了Mesos的基本概念和发展背景,包括Mesos的设计理念、解决的问题以及如何通过Mesos来管理大规模的数据中心资源。作者还阐述了Mesos如何与现有的数据中心基础设施集成,以及它在云计算环境中的作用。...
8. **Mesos监控和日志管理**:了解如何利用Mesos的监控工具和日志收集机制,对集群进行性能监控和问题排查,是管理和优化Mesos集群的关键。 9. **Mesos与大数据处理**:Mesos与Apache Hadoop、Spark等大数据处理...
vagrant-mesos 是一款运维工具,可以使 Mesos 集群的安装和运行更加容易。vagrant-mesos 支持 Mesos 0.21.0 集群,同时包括 Marathon (0.8.0) 和 Chronos (2.1.0)正在运行的框架服务器节点。这意味着,你可以使用 ...
通过其独特的两级调度架构和细粒度的资源管理方式,Mesos不仅提高了数据中心资源的利用率,还增强了系统的灵活性和可扩展性。未来,随着更多企业采用类似的技术来优化数据中心运营,Mesos的重要性将进一步凸显。
Mesos CLI由vektorlab开发,旨在提供更加丰富和便捷的交互方式,使用户可以更轻松地操作和管理Mesos集群。 首先,我们要理解Apache Mesos的基本概念。Mesos分为三个主要组件:Master、Agent和框架。Master节点负责...
Mesos技术是云计算领域中的一个热点技术,它在云运维和PaaS(平台即服务)中展现出了强烈的需求和应用价值。Mesos的主要作用是对数据中心进行统一管理,使得企业能够像操作一台电脑那样来管理和使用整个数据中心。其...
【mesos-flocker-integrations】项目是针对Flocker与Mesos之间集成的一个示例,旨在展示如何在Mesos集群中有效地管理和调度Flocker数据卷。这个项目的主要目的是提供一个可操作的环境,使得开发者和系统管理员能够...
【标题】:“mesos系列文章”指的是一组与Mesos相关的技术文章,Mesos是Apache软件基金会的一个开源项目,它提供了一个分布式系统的资源抽象层,使得在大规模集群上运行各种分布式应用和服务变得简单。这一系列文章...
从Mesos到Kubernetes
Set up Mesos on different operating systems Use the Marathon and Chronos frameworks to manage multiple applications Work with Mesos and Docker Integrate Mesos with Spark and other big data frameworks ...
Mesos 中文文档是最初由数人科技几名员工在业余时间发起并维护的,目的是提供一个围绕 Mesos 的理论+实践的知识共享平台,做到人人贡献、人人受益。我们会搜罗翻译 Mesos 及其周边组件的介绍,知识分享,使用说明...
ceph-mesos, 用于扩展Ceph集群的Mesos框架 在 Apache Mesos上的使用 Docker 来扩展Ceph集群的Mesos框架。 它旨在成为一个快速而可靠的解决方案。目前,它只能:启动 1,3 osd,1 radosgw 。 基于的接受 RESTful ...