『高级篇』docker之服务编排了解Mesos(22)

原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
原文链接地址:『高级篇』docker之服务编排了解Mesos(22)

Mesos是Apache下的开源分布式资源管理框架,它被称为是分布式系统的内核。Mesos最初是由加州大学伯克利分校的AMPLab开发的,后在Twitter得到广泛使用。

初见

http://mesos.apache.org/
在你的数据中心 运行数据(很多台数据的集合),就像运行在单个的资源池一样
Mesos 抽象出来CPU,内存,磁盘和其他计算机资源从物理机或者虚拟机中,使具有容错的和可伸缩的系统更容易的构建和简单的运行。如果是没有基础的老铁,可能是认为是直接把服务器的硬件插拔出来重新组建一台新的机器,其实不是这样的,他是通过软件的方式把需要的硬件设备抽取出来,统一的调度,合理的利用这些资源。

发展历程

  • 起源

当twitter才开始的时候网站经历了爆炸式的增长,网站很不稳定。经常被流量击垮,每次网站挂的时候都会出现下面这张图片,看的多了大家都比较顺眼了,导致这张图也火了,“失败之鲸”! 为了解决这个失败之鲸的教育,twitter通过google的Borg系统中得到启发,然后就开发一个类似的资源管理系统来帮助他们摆脱可怕的“失败之鲸”!后来他们注意到加州大学伯克利分校AMPLab正在开发的名为Mesos的项目,这个项目的负责人是Ben Hindman,Ben是加州大学伯克利分校的博士研究生。后来Ben Hindman加入了Twitter,负责开发和部署Mesos。现在Mesos管理着Twitter超过30,0000台服务器上的应用部署。最后twitter把Mesos开源给apache。

  • 版本迭代

保持一个月更新一个版本的频率,知道今天也依然保持这这个频率目前最新版本:1.7.0,由此也可以看到对市场的信心!

  1. 2013年1月份发布了0.12.1版本
  2. 中间经历了30多个版本
  3. 2016年7月份发布了1.0.0
  • 两级调度

Mesos是如何让twitter摆脱失败之鲸呢,查看下图

  1. Mesos master是支持高可用集群的,通过zookeeper完成的主节点选举
  2. Mesos master管理所有节点的Mesos slave的守护进程
  3. Mesos slave运行在物理机或者虚拟机之上。每个运行具体的任务或者是服务
  4. 每个salve在启动的时候都会注册是master
  5. master协调每个节点的slave,并且确定每个slave的可用资源
  6. 第一级调度 Hadoop 和Mpi ,master 调度slave
  7. 第二级调度 Framework的组件组成,大家看下下图的虚线部分,Framework包括调度器和执行器两部分,Master可以跟多种Framework进行通信,上边展示的调度器也就Hadoop 和 MPI,还可以用多种。下边展示的是执行器,执行器运行在slave中。
  • 调度的流程

看下图

  1. slave1也就是Agent1告诉master空闲资源有4cpu,4gb
  2. Mesos触发调度资源分配模块,请求分配4cpu,4gb,Framework1要求使用可用资源,然后master发出要约描述了slave1中所有的可用资源。4cpu,4gb内存
  3. Famework的调度器给master说需要在slave上运行2个task,task1(2cpu,1gb)
    task2(1cpu,2gb)
  4. Mesos向slave下发任务,并且分配适当的资源,给Franmework的执行器,接下来有执行器启动这2个任务,fw1,task1; fw2,task2;

这时候slave1 还剩余1cpu,1gb没有被占用,还可以继续分配给其他的任务来运行,其实调度器就是给Mesos谈判资源的,看看你有多少资源,需要运行一个程序看看资源够不够,如果够的话,我会告诉你我要在那台机器上进行运行,然后把执行器告诉master,master把执行器告诉slave,在slave上执行,执行器其实可以理解为一段代码,可以给master和slave对接的代码。为了实现一个slave中运行多个任务,Mesos使用了隔离模块,这模块使用了进程隔离的机制来运行这些任务。Mesos早在09年就开始使用了linux的隔离技术,后来Mesos增加了对docker的支持,就可以使用docker本身的隔离机制,单不管使用什么隔离机制都需要执行器全部的打包,并且发送给响应的slave,slave上启动。

Marathon

mesos 并不能单独的存在,必要要有Framework配合存在,也知道mesos有各种各样的Framework负责运行各种各样的程序,Marathon适合长期运行的项目(数据库,应用服务等等),下面这个图就是mesos+Marathon和linux内核的对比。

整合mesos marathon 负载均衡 服务发现的流程

Mesos特征

  • 强大的资源管理

Mesos的核心,保证集群内的所有用户平等的使用资源,这里的资源包括内存和CPU,磁盘等等。

  • Kernel 和Framework的分离

Mesos只负责的资源的调度管理,各种程序都使用Mesos里面的资源,也可以自己来开发Framework。

  • 门槛较低,易于使用

门槛低是相对其他的服务编排工具,环境比较容易搭建按照文档基本不会遇见大问题,如果使用长期运行的服务可以使用Marathon这种服务就可以了。Marathon的环境搭建比较容易上手很快就搭建完毕了。如果你有特殊场景需要自己开发Framework
,恭喜你老铁你中奖了,门槛太高!

  • 大厂使用

twitter创始人30万以上的服务在使用,apple的集群,youtube也使用了。国内的爱奇艺,数人科技也都使用的。

Marathon特征

  • 高可用

支持集群

  • Constraints

给机器打标签,CPU高,内存高,硬盘好的,然后资源要约的时候给指定标签的机器。

  • 服务发现和负载均衡

相当于服务的注册中心。

  • 健康检查

执行调度器的时候,有针对机器的健康检查的功能,包括三种方式:http,tcp,shell命令的,比如:web服务要加入基于http的健康检查,访问固定的页面,如果访问的是200的话,服务是没问题的。如果访问连续多少次发现不健康也就是不是200的情况,停止重新启动一个服务。

  • 事件订阅

自己启动一个服务,注册事件订阅,它就会自动的推送订阅的事件信息,包括服务停止,被杀掉等等吧。

  • 完善的REST API

比较好看的UI页面,api接口提供给调用者查看服务的状态。每个服务运行的实例,每个实例的状态,可以通过脚本集成API。

PS:这就是对Mesos和marathon 大概的理解。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,816评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,729评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,300评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,780评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,890评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,084评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,151评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,912评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,355评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,666评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,809评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,504评论 4 334
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,150评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,882评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,121评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,628评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,724评论 2 351

推荐阅读更多精彩内容