Mesos Marathon能做什么?理念是什么?(转)
Mesos是如何实现整个数据中心统一管理的呢?
核心的概念就是资源两级供给和作业两级调度。先说说从下而上的资源两级供给吧。
- 在Mesos集群中,资源的供应方都来自Mesos Slave所在的物理节点。资源可以包括CPU、内存、存储空间、IO吞吐能力等

图片来自mesos.apache.org,图⽚片版权归属原作者
这些资源通过供给的方式,从Mesos Slave提供给了Mesos Master的Leader。(具体的领导者选举过程将在后续容器编排章节详细阐述)这就是第一级的资源供给。 - Mesos master进一步将资源整合后,作为可选项提供给了各种framework框架。这些框架中最主流的就是Marathon长服务框架,但也可能是其他如Jenkins CI/CD框架、Spark大数据框架、Kafka中间件框架、Chronos任务管理框架、Aurora应用管理框架等。各种框架可以有选择地对Mesos Master整合后的数据中心资源提出要求。
而Mesos和各种框架对于资源的要求处理过程,正是从上而下的两级调度机制的核心:
- 首先,各个框架都有自己的调度器Scheduler,它会根据用户需求启动特定的工作任务。调度器在上层第一级确定工作任务需要的资源情况,是否需要接受Mesos提供的CPU、内存和存储资源来运行特定的工作负载。
- 同时Mesos对于上层框架的需求也不是予取予求。他会采用默认的DRF优势资源公平算法(Dominant Resource Faireness)来决定各种框架任务的资源分配情况,从而使整个数据中心利益最大化。比如上层框架中的Marathon调度器需要启动Nginx任务,而同时Spark框架需要启动streaming任务,Mesos的DRF算法会根据框架提出的资源请求,将尽量多的内存和CPU分配给Nginx用于进行反向代理服务,同时将尽可能多的IO吞吐性能提供给Spark进行流处理。
Mesos的主要特点包括:
- 轻量级的master:仅保留了framework和slave的一些状态,易于重构,因此采用zookeeper很容易解决HA问题
- 配合container技术的slave:利用Linux-Container和Docker技术可以实现很方便地实现任务间的CPU与内存资源隔离
- 资源分配调度比较简单:默认的DRF算法可以轻松实现资源的最大化利用,不需要复杂的人工干预和配置
Marathon功能和特点?
一个操作系统有了优秀的内核只是完成了一半工作,强大易用的服务管理(如init、systemd系统等)才是操作系统得以生存发展的另一半天。
相同的道理,有了Mesos这个分布式操作系统内核,还得有一个可以支持分布式的长服务运行调度框架,这就是Marathon。
图片来自360doc.com,图⽚片版权归属原作者
Marathon的主要特点有:
- 高可用性:Marathon作为主动/被动群集运行,领导者选举可以实现100%的高可用运行时间。
- 资源分布可控:可以允许每个机架/节点等仅放置应用程序的一个实例,从而缓解单点故障的影响。
- 服务发现和负载平衡:可以通过HA Proxy和DNS等方式自动实现负载均衡。
- 健康检查:可以使用HTTP或TCP检查评估应用程序的运行状况。
- 活动订阅:提供HTTP端点以接收通知。例如,与外部负载均衡器集成。
- UI:美丽而强大的UI。
- API:完整的REST API,易于集成和编写脚本.
- 安全:Basic Auth和SSL
- 监控:以JSON格式在/metrics查询它们或将它们推送到诸如graphite,statsd和Datadog之类的系统。
使用场景
如果想运行长生命周期的应用服务(而不是短时作业等),想将数据中心的多种形式的任务结合管理(如CI/CD连续集成连续部署、大数据、消息中间件、搜索引擎等),但应用之间不需要太强的集群耦合(如Oracle数据库心跳、Keepalive节点心跳等),Mesos+Marathon这一对数据中心操作系统解决方案,可以成为您的首选。
Mesos Marathon能做什么?理念是什么?(转)的更多相关文章
- Apache的Mesos/Marathon与Google的Kubernets的区别
Apache的Mesos与Google的Kubernets的区别 – China Hadoophttp://chinahadoop.com/archives/2150 有哪些是Apache Mesos ...
- mesos,marathon,haproxy on centos7 最完美安装教程
前言 本教程参考 http://blog.51cto.com/11863547/1903532 http://blog.51cto.com/11863547/1903532 官方文档等... 系统:c ...
- Docker云Paas平台部署:Docker+Mesos+Marathon
针对“互联网+”时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及其相关技术的出现和发 ...
- Docker系列之(二):使用Mesos管理Docker集群(Mesos + Marathon + Chronos + Docker)
1. Mesos简介 1.1 Mesos Apache Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理. Mesos主要由以下几部分组成: Master: 管理各Slave节点 S ...
- docker+zookeeper+mesos+marathon集群
实验环境: 主机名 ip地址 运行服务 安装组件 docker-master1 192.168.20.210 zookeepermesos-mastermarathon mesosmarathonme ...
- 基于zookeeper+mesos+marathon的docker集群管理平台
参考文档: mesos:http://mesos.apache.org/ mesosphere社区版:https://github.com/mesosphere/open-docs mesospher ...
- docker+mesos+marathon
前言 (Core) [root@docker-slave ~]# uname -r 3.10.0-229.4.2.el7.x86_64 [root@docker-slave ~]# uname -m ...
- centos7部署PaaS平台环境(mesos+marathon)
假如有5台主机可以使用,ip地址如下 规划(2master+3slave) master: 192.168.248.205 ---master1 192.168.248.206 ---master2 ...
- 【云计算】mesos+marathon 服务发现、负载均衡、监控告警方案
Mesos-dns 和 Marathon-lb 是mesosphere 官网提供的两种服务发现和负载均衡工具.官方的文档主要针对DCOS,针对其它系统的相关中文文档不多,下面是我在Centos7上的安 ...
随机推荐
- jquery 添加html标签
<script type="text/javascript"> var sss = 1; function addFile() { if (sss < 20) { ...
- MySQL数据库基础-3-SQL 基本概念
SQL 基本概念 约束:constraint,表中的数据要遵守的限制 主键:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行:必须提供数据,即NOT NULL,一个表只能有一个 惟一键:一个 ...
- hdu6115 Factory (LCA + 倍增)
Factory Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others)Total ...
- ORACL-重做日志详解
作用:oracle重做日志主要目的是数据恢复及数据修改效率提升 前言:oracle重做日志主相关视图: 1.v$log记录当前数据库重做日志组 2.v$logfie记录当前数据库重做日志组状态.类型等 ...
- 使用 Azure静态web应用+Github全自动部署VUE站点
什么事Azure静态web应用 Azure 静态 Web 应用是一种服务,可从 GitHub 存储库自动构建完整的堆栈 Web 应用,并将其部署到 Azure,目前它还是预览版. Azure 静态 W ...
- vscode按下F5黑窗口显示的是乱码
找了很多方法,powershell修改了也变不了 最后找到了这个链接的方法:https://blog.csdn.net/weixin_40040107/article/details/10372155 ...
- python图片验证码识别最新模块muggle_ocr
一.官方文档 https://pypi.org/project/muggle-ocr/ 二模块安装 pip install muggle-ocr # 因模块过新,阿里/清华等第三方源可能尚未更新镜像, ...
- 【Flutter 1-2】在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境
在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境 文章首发地址 配置环境变量 由于部分网站被墙的原因,我们需要先配置Flutter国内镜 ...
- Layui treeSelect 回写与对应选中
今天遇到个问题就是Layui treeSelect 的回写与特定选中,网络上居然没啥资料,有的也是不全的,于是花了点时间处理好了,这里写一下,方便以后有遇到的朋友借鉴. 一.父页面 二.Form编辑框 ...
- localStorage.getItem得到的是[object Object] 的解决方案
设计背景: 购物车要实现本地存储,避免刷新页面数据丢失 实现方案: 1,本地储存,进入页面获取本地数据,在进行数据操作 2,每操作一次数据就将数据传给后台进行保存,(操作数据多,用户量大对服务器造成压 ...