Mesos是apache的开源项目,是使用C++开发的资源管理框架。假设我们的数据中心有众多的服务器,这些服务器要运行业务程序,业务程序随着业务规模的增加往往需要扩容,在运维层面会遇到的问题是,运维无法准确把握资源分配是否合理,扩容是否需要购买和上架新的机器。这就造成了硬件资源往往是比实际需要的要宽裕的,但是由于资源利用率不高,安排不合理,无法真正利用硬件资源,造成了浪费,这种情况只会变得越来越糟,因为应用程序变得越来越多,越来越复杂,造成越来越无法掌控的局面。

急需一种资源管理软件,能够站在数据中心的角度,对硬件资源(这里的硬件资源是指服务器的CPU,内存,硬盘)进行统一的规划、分配、管理。Mesos就是这样的一个框架软件。需要注意的是Mesos本身只是一种资源管理框架,讲白了,mesos只能提供了如下几种主要的能力:告诉你有当前数据中心总共有多少CPU,内存,硬盘

提供一系列的接口,提供应用程序下发、执行、资源配额设置

为了实现这种功能,我们首先需要在数据中心的服务器上,安装并启动mesos-slave,在某几台管理节点上安装mesos-master。mesos-master提供了api,以及一个简单的界面可以看到资源分配和分布情况。slave会上报资源到master汇总。slave的另一个功能是通过执行器,执行应用程序,并使用linux自带的资源隔离机制(cgroups等)为应用程序提供运行沙盒,这样应用程序对硬件的资源占用可以精确的被控制,不会对同一台机器上的其他进程造成资源的争用。

mesos的启动需要zookeeper作为协调器,mesos会在zk的/mesos目录下进行配置管理和存储。

然而,为什么说Mesos是个框架软件呢?因为,Mesos并不做编排管理,编排(orchestration)的策略和逻辑需要另一个程序协助完成,mesos将编排的逻辑开放给其他程序来做,这个程序在mesos中叫Framework。

mesos之所以将编排的任务交出来,是因为编排的需求是发散的,无法收敛。比如:考虑到高可用,会部署同一个应用程序的多个实例,这些实例需要跨虚拟机,还是物理机,甚至是机架、机房?这个编排是根据具体的需求定的,无法一概而论。

Marathon首页的第一句话就是Marathon is a production-grade container orchestration platform...

因此,Marathon就是一个基于mesos的编排工具,它通过与mesos-master通信,调用接口,实现通用的编排策略。而Marathon自身又提供了接口,使得应用程序的部署得以更简单。

marathon是scala开发的,本身也依赖zookeeper,除了提供api接口外,还提供了一个十分易用的web界面,使得我们即使不调用api,也可以通过web界面实现应用部署。

因此,对于mesos来说,marathon是一个framework,但并不是mesos的唯一选择。甚至在运行时,mesos支持多个framework同时注册和运行。

早期版本的mesos需要用C++或java或python的library进行,1.0以后,mesos实现了http接口,使得理论上可以使用任何语言开发framework。

RENDLER项目使用了包括go,heskell在内语言实现了一个分布式爬虫编排器。

不过mesos的http api还是有些复杂的,因为许多回调行为通过http模拟有些复杂,所以mesos基于http api封装了不同语言的库以便集成。比如go语言的https://github.com/mesos/mesos-go

mesos marathon mysql_Mesos和Marathon简介相关推荐

  1. mesos marathon mysql_Mesos以及Marathon安装总结

    安装了将近一周的环境了,终于把Mesos以及Marathon给安装上了,我指的离线安装. 策略1: 严格的按照官网的流程: 找一台能够上网的机器,通过yum install/update --down ...

  2. mesos mysql_Mesos和Marathon

    libz is required for mesos to build 需要安装zlib-devel-1.2.7-17.el7.x86_64.rpm 其实跨Shell的Profile文件同步只要执行s ...

  3. 【原创】大数据基础之Marathon(1)简介、安装、使用

    marathon 1.6.322 官方:https://mesosphere.github.io/marathon/ 一 简介 Marathon is a production-grade conta ...

  4. IBM云计算架构师:Mesos新功能以及roadmap简介

    今天主要为大家介绍下Mesos社区,分享Mesos最近发布的一些新功能,以及未来会做的一些项目. 1 Mesos社区介绍 Mesos是Apache下的开源分布式资源管理框架,它被称为是分布式系统的内核 ...

  5. Mesos和Marathon简介和浅析

    一.Mesos和Marathon是什么 1.1 Mesos是什么 Mesos是什么呢,可以用这样一个例子进行说明.假定某公司需要频繁进行大数据计算,该任务运行时需要N多个CPU和内存,为了满足这个需求 ...

  6. Mesos实践:基于MZM的PAAS的构建(3):Marathon简介

    为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一.在本文中将会对Marathon进行简单的介绍. URL https: ...

  7. docker+mesos+marathon

    鉴于原作者要求必须将原地址粘贴下 http://www.chuck-blog.com/chuck/368.html  前言 针对"互联网+"时代的业务增长.变化速度及大规模计算 ...

  8. 基于Docker搭建单机版Mesos/Marathon

    摘要: 本文介绍了基于Docker搭建单机版Mesos/Marathon的方法,Mesos/Marathon的所有组件均运行于单个容器中. GitHub地址: kiwenlau/single-meso ...

  9. centos7 安装配置mesos+marathon+zookeeper

    2019独角兽企业重金招聘Python工程师标准>>> 1,mesos介绍 Mesos诞生于UC Berkeley的一个研究项目,现已成为Apache Incubator中的项目.M ...

最新文章

  1. 十大python开发软件-必看 | 2020年,Python十大应用领域介绍!
  2. 【网络基础】《TCP/IP详解》学习笔记5
  3. IOS开发之视图和视图控制器
  4. 在虚拟机中安装Windows XP
  5. Speedtest在线测试html,Speedtest by Ookla:网络测速插件
  6. 1037u处理器搭载文件服务器,悦升IVB 赛扬1037U工控主板 满足多行业需求
  7. web前端期末大作业:云南旅游网页主题网站设计——云南城市旅游5页HTML+CSS+JavaScript
  8. html 文字段后间距怎么设置,p字间距 html段落内文字设置字间距间隔
  9. python实现的EDF(earliest deadline first)算法
  10. About Oracle Database Performance Method
  11. 怎么制作区域分布图,怎么做网点分布图
  12. 7-111 输出大写英文字母
  13. 阿里鱼卡,腾讯王卡,百度圣卡,谁是流量卡中的性价比之王?
  14. 一看就懂的网络协议五层模型(一)
  15. MaxCompute SQL示例解析
  16. [MATLAB][原创]Matlab添加libsvm后报错svmtrain已被删除, 请改用fitcsvm解决办法
  17. 带密码WMV电影终极破解
  18. 彗星HTTP操作支持库 - 易语言支持库
  19. Scala持久层框架Slick介绍
  20. 基于Java毕业设计智慧门诊综合管理系统源码+系统+mysql+lw文档+部署软件

热门文章

  1. 论文浅尝 | 一种可解释的语义匹配复值网络
  2. Windows上pip install kenlm报错解决
  3. 微型计算机性能指标以及分类
  4. 风控模型师面试准备--技术篇(逻辑回归、决策树、集成学习)
  5. BIO,NIO,AIO
  6. 基于Hadoop的产品大数据分布式存储优化
  7. 基于时空相关属性模型的公交到站时间预测算法
  8. vue中如何创建组件?
  9. 【HAOI2010】工厂选址题解
  10. [笔记]cin、cout与scanf、printf的效率差异对比分析