`
han_zw
  • 浏览: 171599 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

中文翻译-mesos架构

 
阅读更多

mesos 架构

 



  

 

上面这张图展示了mesos的主要部件。mesos由master后台程序、agent后台程序、mesos framework 组成,其中agent运行在每个集群节点上,framework负责在agent上运行任务。

 Master能够通过为framework产生资源邀约resource offers)进行细粒度的资源(CPU、RAM……)调度。每个资源要求包含类似如下的列表:<agent ID, resource1: amount1, resource2: amount2, …> 。master根据已经给定的组织策略(如公平算分享或者严格优先级)决定给每一个framework多少资源邀约。为了能够支持多种策略,master采用了模块化的架构,通过插件机制可以方便的添加新的分配模块。

 

 framework运行在mesos之上,由两部分组成:scheduler——注册到master,并负责提出资源需求;executor——运行在agent节点,运行所属framework的task。然而master决定分配给每个framework多少资源,framework选定使用资源邀约中哪些资源。当framework接受了分配的资源,它将想要在mesos上运行的任务返回给mesos。接下来,mesos在相应的agent上启动这些任务。

 

资源邀约示例

下图演示了一个framework如何调度任务运行。

 

让我们把图中的各个事件过一遍。

  1. agent1 上报给master,它有4 cpu 和 4gb内存空闲。接下来master调用分配策略模块,该模块告知应该给framework 1提供所有可用的资源。 
  2. master发送一个描述agent 1上可用资源的资源邀约给framework 1.
  3. framework的scheduler回复master两个任务需要在agent上运行,第1个任务使用<2 CPUs, 1 GB RAM> 的资源,第2个任务使用 <1 CPUs, 2 GB RAM>资源。
  4. 最后,master把任务发送到agent,agent分配适当的资源给executor,executor启动这两个任务(图中的虚线部分)。因为还有1 CPU和1GB内存资源没有分配,分配模块会提供这些资源给framework 2.

另外,随着任务完成或者有新的空闲资源,资源分配过程重复进行。

 

虽然mesos提供轻量级的接口允许对其进行扩展以及framework可以独立演进,但是有个问题:在mesos不知道framework存在的一些约束条件的情况下,framework的约束条件如何得到满足?比如,framework需要从本次取得一份数据,但是mesos不知道哪一个节点有这份数据。 mesos通过给framework拒绝 邀约的能力的方式解决这类问题。 一个framework会拒绝那些不满足其约束条件的邀约,只接受满足约束的。特别指出的是,我们已经找一个叫做延迟调度的简单策略,即framework等待一个有限时间来等待存储输入数据的节点,得到近似优化的本地数据处理结果。

 

  • 大小: 224 KB
  • 大小: 217.2 KB
分享到:
评论

相关推荐

    Mesos集群运维vagrant-mesos.zip

    vagrant-mesos 是一款运维工具,可以使 Mesos 集群的安装和运行更加容易。vagrant-mesos 支持 Mesos 0.21.0 集群,同时包括 Marathon (0.8.0) 和 Chronos (2.1.0)正在运行的框架服务器节点。这意味着,你可以使用 ...

    开源项目-vektorlab-mesos-cli.zip

    开源项目-vektorlab-mesos-cli.zip,Featureful commandline interface for Apache Mesos.

    sample-fluentd-on-mesos-docker, 在 Mesos Docker 马拉松上,Fluentd.zip

    sample-fluentd-on-mesos-docker, 在 Mesos Docker 马拉松上,Fluentd Mesos Docker 马拉松上的 Fluentd这是一个在 mesos,Docker 和马拉松上运行的fluentd示例。概述 PrerequireVagrant 1.4.1 ( 我只检查了这个版本...

    CloudFoundry-Mesos.zip

    Foundry-Mesos框架由华为与Mesosphere的工程师合作完成,能够为应用提供安全可靠的、可伸缩、可扩展的云端运行环境,并且应用能够 享用Cloud Foundry生态圈内各类丰富的服务资源。企业能够通过Cloud Foundry开发云...

    容器编排系统Kubernetes-Mesos.zip

    我们也希望能够为他们提供最理想的方式以构建基于微服务架构的应用程序。而Kubernetes-Mesos正是我们基于这一理念所开发出的技术成果,其能够将Kubernetes作为原生Mesos框架处理并运行在DCOS之上。Kubernetes-Mesos ...

    ceph-mesos, 用于扩展Ceph集群的Mesos框架.zip

    ceph-mesos, 用于扩展Ceph集群的Mesos框架 在 Apache Mesos上的使用 Docker 来扩展Ceph集群的Mesos框架。 它旨在成为一个快速而可靠的解决方案。目前,它只能:启动 1,3 osd,1 radosgw 。 基于的接受 RESTful ...

    Python库 | asgard-api-plugin-metrics-mesos-0.3.0.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:asgard-api-plugin-metrics-mesos-0.3.0.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    PyPI 官网下载 | nagios-mesos-0.2.5.tar.gz

    资源来自pypi官网。 资源全名:nagios-mesos-0.2.5.tar.gz

    apache-mesos-cookbook

    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,数据中心操作系统的核心.pdf

    藏经阁-Mesos,数据中心操作系统的核心.pdf

    kubernetes-mesos:Apache Mesos 的 Kubernetes 框架

    kubernetes-mesos 当遇到 Kubernetes 和 Mesos 是天作之合。 Kubernetes 启用了 Pod,这是一种抽象,代表一组位于同一位置的容器,以及用于服务发现、负载平衡和复制控制的标签。 Mesos 为集群中跨节点的 pod 提供细...

    vagrant-mesos, Mesos/Docker/Marathon/Aurora 开发 Vagrant setup.zip

    vagrant-mesos, Mesos/Docker/Marathon/Aurora 开发 Vagrant setup mesosVagrant开发 environent Mesos/Marathon/Chronos/Aurora/Jenkins/Docker免责声明:这个Vagrant安装消耗了大量资源,但在我的2013 Macbook Pro...

    PyPI 官网下载 | cgcloud-mesos-1.4a1.dev276.tar.gz

    资源来自pypi官网。 资源全名:cgcloud-mesos-1.4a1.dev276.tar.gz

    puppet-mesos, 用于管理Mesos节点的Puppet 模块.zip

    puppet-mesos, 用于管理Mesos节点的Puppet 模块 Mesos Puppet 模块 兼容性说明: 当前版本( 0.6. x ) 需要 puppetlabs-apt&gt; = 2.1.0,它具有重构 API ( 如果你不想使用中级 APT repo,那并不重要) 。安装主机

    rancher-mesos-scheduler:rancher-mesos框架的调度程序

    Rancher Mesos Scheduler 该存储库包含apache mesos框架的调度程序,用于与Rancher集成。 调度程序将接收来自mesos的资源报价,并使用rancher-mesos-executor将牛的主机初始化任务分配给资源。 接触 对于错误,...

    terraform-mesos, 在Google云上,编写Mesos集群的东西.zip

    terraform-mesos, 在Google云上,编写Mesos集群的东西 容器解决方案 Terraform Mesos如何在Google云上使用Terraform设置Mesos集群?安装 Terraform这里模块需要 Terraform 0.6.16或者更高版本按照 https://www.terra

    kubernetes-mesos-docker:Kubernetes-Mesos框架打包到Docker容器中

    在Docker中运行Kubernetes-Mesos 建造 要构建容器,您需要在本地运行Docker守护程序,然后可以运行: ./build.sh 上面的命令从docker容器中的源代码构建kubernetes-mesos二进制文件,并将它们放置到./km文件夹中。...

    rancher-mesos-executor:rancher-mesos框架的执行者

    Rancher Mesos执行器 该存储库包含用于将rancher与mesos集成的apache mesos框架的执行程序。 执行程序将使用libvirt在Mesos-slave上启动新的VM,并在此新VM上安装docker,然后在rancher中注册它。 由mesos选择要...

    Mesos调度器Swan-Mesos.zip

    你可以使用 swan 在 mesos 集群上部署应用程序,并管理应用程序的整个生命周期,还可以使用新版本进行滚动更新,扩展应用程序,并且可以在应用程序或服务不可用时对应用程序和自动故障转移进行运行状况检查。...

Global site tag (gtag.js) - Google Analytics