干货|Mesos分布式集群管理最佳实践

Mesos最开始由加州大学伯克利分校开发,推广于美国版的微博Twitter
  
  是Apache下的开源分布式资源管理框架,
  
  它被称为分布式系统的内核,相当于人的大脑。
  
  Mesos-Master是整个系统的“大脑”,负责管理接入Mesos的各个framework(由frameworks_manager管理)和slave(由slaves_manager管理),并将slave上的资源按照某种策略分配给framework(由独立插拔模块Allocator管理)。

  
  示意图
  
  Mesos-Slave负责接受并执行来自“大脑”的命令。Mesos-Slave将自己的资源量发送给“大脑”,由大脑来分配给Framework。
  
  Framework是指外部的计算框架。需要通过调度器,以注册的方式接入Mesos,获得资源。再把获得的资源,由自己的调度器分配给框架中的任务。

  
  示意图
  
  当前Mesos支持三中语言编写的调度器,分别是C++、Java、Python。为了统一,Mesos用C++组成了的一个调度驱动drive。Framework(外部的计算框架)可以通过这个接口来注册,获得资源。
  
  Executor主要用于启动框架内部的task。由于不同的框架,启动task的接口或者方式不同,当一个新的框架要接入mesos时,需要编写一个Executor,告诉Mesos如何启动该框架中的task

  
  展示了Mesos的重要组成部分,Mesos由一个master进程管理运行着每个客户端节点的slave进程和跑任务的Mesos计算框架。
  
  Mesos进程通过Framework(计算框架)可以很细致的管理cpu和内存等,从而提供资源。master通过插件机制新增额一个allocation模块使之分配资源更简单方便。

  
  图1.2
  
  流程步骤
  
  1、slave1报告给master他拥有4核cpu和4G剩余内存,Marathon调用allocation政策模块,告诉slave1计算框架1应该被提供可用的资源。
  
  2、master给计算框架1发送一个在slave上可用的资源描述。
  
  3、计算框架的调度器回复给master运行在slave上两个任务相关信息,任务1需要使用2个CPU,内存1G,任务2需使用1个CPU,2G内存。
  
  4、最后,master发送任务给slave,分配适当的给计算框架执行器,继续发起两个任务(图1.1-2虚线处),因为任有1个CPU和1G内存未分配,allocation模块现在或许提供剩下的资源给计算框架2。
  
  除此之外,当任务完成,新的资源成为空闲时,这个资源提供程序将会重复。
  
  这些非常有用的资料,是由金信润天的王牌讲师“标杆徐”老师进行整理,欢迎大家可以学好架构,找到一份满意的高薪工作。

原文地址:http://blog.51cto.com/13946595/2170122

时间: 2024-08-27 12:18:19

干货|Mesos分布式集群管理最佳实践的相关文章

Mesos+Zookeeper+Marathon+Docker分布式集群管理最佳实践

参考赵班长的unixhot以及马亮blog 笔者QQ:572891887 Linux架构交流群:471443208 1.1Mesos简介 Mesos是Apache下的开源分布式资源管理框架,它被称为分布式系统的内核.Mesos最初是由加州大学伯克利分校的AMPLab开发,后在Twitter得到广泛使用. Mesos-Master:主要负责管理各个framework和slave,并将slave上的资源分配给各个framework. Mesos-Slave:负责管理本节点上的各个mesos-task

分布式集群管理

转载请说明出处:http://blog.csdn.net/cywosp/article/details/21259391 现在很多互联网科技公司,还有一些传统的it公司都在根据自身的业务发展来设计符合实情的分布式系统.虽然,已有很多优秀的开源分布式系统,但是由于需求不同,业务不同,这些只能在设计符合自身需求的分布式系统时用于参考.个人认为,设计一个分布式存储系统并不是太难,主要困难在于如何设计并实现一个可以自动化处理各个节点状态的分布式集群管理系统.分布式系统到现在已经发展了很多年了,有些公司已

RHCS的CMAN分布式集群管理

------------------------------------------------------------这里可以忽略:(突然想到的小命令)小知识点:# cat /etc/sysconfig/i18n LANG="zh_CN.UTF-8"# LANG=zh_CN.UTF-8# yum grouplist# yum list # LANG=en# yum grouplist # yum provides */pxelinux.0 #yum -y install cmatri

浅谈分布式集群管理的原理,看看集群究竟是做什么的

本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是分布式专题的第11篇文章,我们一起来聊聊分布式集群资源管理. 在开始文章之前,我们先来问一个问题,为什么是国际上是亚马逊,国内是阿里这两家公司云计算搞得最好呢?这两家公司之间有一个巨大的共同点,就是它们都是电商公司.电商公司的特点很明显,就是流量不是固定的,往往会受到大促.节日的影响.像是国内的双十一和美国的黑色星期五就是典型的大促.在大促的时候的流量会是平常的十倍甚至更多,这么大的流量必须要有更多的机器去应对.但问题是如果去买这

[转载] Redis集群搭建最佳实践

转载自http://blog.csdn.net/sweetvvck/article/details/38315149?utm_source=tuicool 要搭建Redis集群,首先得考虑下面的几个问题; Redis集群搭建的目的是什么?或者说为什么要搭建Redis集群? Redis集群搭建的目的其实也就是集群搭建的目的,所有的集群主要都是为了解决一个问题,横向扩展. 在集群的概念出现之前,我们使用的硬件资源都是纵向扩展的,但是纵向扩展很快就会达到一个极限,单台机器的Cpu的处理速度,内存大小,

Redis集群搭建最佳实践

要搭建Redis集群,首先得考虑下面的几个问题; Redis集群搭建的目的是什么?或者说为什么要搭建Redis集群? Redis集群搭建的目的其实也就是集群搭建的目的,所有的集群主要都是为了解决一个问题,横向扩展. 在集群的概念出现之前,我们使用的硬件资源都是纵向扩展的,但是纵向扩展很快就会达到一个极限,单台机器的Cpu的处理速度,内存大 小,硬盘大小没办法一直满足需求,而且机器纵向扩展的成本是相当高的.集群的出现就是能够让多台机器像一台机器一样工作,实现了资源的横向扩展. Redis是内存型数

一共81个,开源大数据处理工具汇总(下),包括日志收集系统/集群管理/RPC等

作者:大数据女神-诺蓝(微信公号:dashujunvshen).本文是36大数据专稿,转载必须标明来源36大数据. 接上一部分:一共81个,开源大数据处理工具汇总(上),第二部分主要收集整理的内容主要有日志收集系统.消息系统.分布式服务.集群管理.RPC.基础设施.搜索引擎.Iaas和监控管理等大数据开源工具. 日志收集系统 一.Facebook Scribe 贡献者:Facebook 简介:Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它能够从各种

[转载] 一共81个,开源大数据处理工具汇总(下),包括日志收集系统/集群管理/RPC等

原文: http://www.36dsj.com/archives/25042 接上一部分:一共81个,开源大数据处理工具汇总(上),第二部分主要收集整理的内容主要有日志收集系统.消息系统.分布式服务.集群管理.RPC.基础设施.搜索引擎.Iaas和监控管理等大数据开源工具. 日志收集系统 一.Facebook Scribe 贡献者:Facebook 简介:Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它能够从各种日志源上收集日志,存储到一个中央存储

《国际项目集管理最佳实践与实战应用》大型复杂项目与项目群管理工作坊

<国际项目集管理最佳实践与实战应用>大型复杂项目与项目群管理工作坊 Program Management Training 主办单位:共创国际-项目管理者联盟 2015年4月10.11.12日 北京 & 课程前言 项目集(PROGRAM)定义为“经过协调管理以获取单独管理它们时无法取得收益与控制的一组关联的项目和项目集活动.”从组织战略的角度来看,项目集管理主要是指组织为实现其战略目标或为其客户提供整体解决方案而在组织高层针对战略性资源进行跨界整合的管理活动. 在全球经济一体化的背景下